Bonjour,
Lorsqu’on souhaite créer un champ supplémentaire pour un doctype déjà existant, la solution la plus simple est de personnaliser le « formulaire » et d’y ajouter un champ.
La problématique en soit avec cette méthode est que le nom du champ dépend du libellé de celui-ci. Si on a un champ contenant des caractères accentués dans le libellé, on les retrouve côté « nom du champ »… Ce qui n’est pas très « propre ».
- Existe-t-il un moyen de forcer/personnaliser chaque nom de champ personnalisé ? (moi le champ « nom » est en lecture seule)
- Et si on passe via une app personnalisée, quelle serait la méthodologie pour ajouter des champs personnalisés via le code, sur un doctype standard, hormis l’export/import de fixtures ? (je ne crois pas avoir vu ça dans la doc des hooks).
Merci pour cet Ă©clairage.
Bonjour Ludovic,
L’outil Personnalisation de formulaire est une interface pour créer deux documents techniques particuliers : Champ personnalisé (Custom Field) et Propriété personnalisée (Property Setter).
Ce qui veut dire que l’on peut créér un document Custom Field depuis la console ou une application personnalisée pour arriver à un résultat plus précis qu’avec l’outil de Personnalisation : donc on peut contrôler le fieldname
du champ personnalisé (maintenant, il faut faire attention au nommage pour garantir la compatibilité avec le futur).
C’est de cette manière que sont créés les champs ajoutés par des applications comme :
Note : Dans une application personnalisée il faut marquer le champ comme is_system_generated
, ce qui est fait automatiquement par create_custom_fields
.
Corentin
Ludovic
3
Tout simplement excellent. Pile ce qu’il me fallait.
Merci Corentin !
Ludovic
1 « J'aime »