Bonjour,
Désolée encore un souci avec les contraintes
On dirait que la visibilité de toute la colonne en liste est définie par celle du champ pour la dernière ligne de la liste.
J’ai reproduit sur la Demo avec un cas simple :
créer une contrainte front + back avec un impact de visibilité sur un champ
le champ doit être visible au moins en liste
La contrainte en XML (il faut passer le champ Phone en visibilité Always) Constraint.xml (1.4 KB)
Si la dernière liste de la liste ne remplit pas la condition, la colonne est masquée
Merci pour ton retour, c’est étrange en effet on va regarder.
Théoriquement :
chaque ligne en front porte ses data + meta-data / donc chacune avec le champ visible ou masqué.
si un champ est masqué dynamiquement, ça ne signifie pas que toute la colonne sera masquée, c’est juste sa cellule qui doit être masquée pour laisser les autres cellules visibles.
Si la règle de gestion est de vraiment rendre inaccessible la valeur, il sera préférable de passer le champ en VIS_FORBIDDEN pour ne jamais accéder à la valeur en front.
Il faut donc que ce champ n’ait pas d’impacts sur d’autres champs en front : la UI le passe juste en hidden visuellement, mais les colonnes sont toujours valorisées pour l’edit-list par exemple.
Merci beaucoup pour ton retour rapide et pour tes explications sur le fonctionnement.
Dans mon cas il s’agit bien de simplement masquer le champ (et d’ailleurs, éventuellement retrouver la valeur mise précédemment si on change la condition, car il peut s’agir d’une erreur)
Il n’existe pas de contexte CONTEXT:ROW et du coup même en scopant la contrainte en CONTEXT:LIST ça reste compliqué pour dire si on veut masquer toute la colonne ou juste une valeur de ligne sous condition.
Il faudra juste passer le contrainte en “front” pour que le champ reste visible globalement sur l’objet pour voir la colonne. Ensuite la contrainte front s’appliquera bien sur chaque ligne avec les meta-data de la ligne. Je n’ai pas trouvé d’autre façon de faire .