Problème d'enregistrement des documents (champs multi-doc)

Request description

Bonjour,

J’ai un comportement sur 2 champs de type multi-doc.

Quand j’enregistre les documents dans ces champs, pas de problème. Cependant, quand j’essaie de cliquer sur ma transition d’état (état 1 vers état 3), parfois (pas toujours) ma contrainte d’obligation apparait alors que les champs ne sont pas vide:


Voici mes champs (non-vide comme vous pouvez voir) :

De plus si par magie ma contrainte d’obligation n’apparait pas, quand je passe de l’état 3 à l’état 2, ces 2 champs se vide sans raison.
Etat 3 :


Etat 2 (dès que je clique sur “Signaler manque d’info” sur l’image ci-dessus):

Je ne comprends pas d’où peut venir ce comportement. Avez-vous une idée ?

PS : Si je change en document simple mon champ, le problème est résolu. Par contre avec le type multi-doc, il y a le problème.

Technical information

Instance /health
[Platform]
Status=OK
Version=5.2.3
BuiltOn=2022-05-10 18:31
Git=5.2/75384808e0fc7f992d50959bdc3fb75a79deac57
Encoding=UTF-8
EndpointIP=10.201.117.57
EndpointURL=http://siparex-simplicite-dev-557d978ccf-xvkwk:8080
TimeZone=Europe/Paris
SystemDate=2022-05-25 09:35:36
Simplicité logs
NA

On va regarder, ça doit être le même pb que celui-ci :
https://community.simplicite.io/t/le-contenu-dun-champ-multi-documents-disparait-suite-a-une-contrainte/4904/3

Dans certains cas le champ se vide, on a modifié le comportement dernièrement pour supprimer les docs si le champ est forcé à vide, par exemple par code via setDocument(null) plutot que de passer tous les documents du champ en statut “à supprimer”.

Mais dès fois il doit être faussement vide en retour de la UI (car non modifié), et comme on n’a pas de old-value pour tester le hasChanged comme pour un document simple, il doit y avoir confusion.

1 Like

Bonjour François,
Comment patcher ce problème de notre côté en attendant une montée de version ?
Nous utilisons fortement ce type de champ et impossible pour nous de perdre cette fonctionnalité pour nos utilisateurs.
Est-ce que la suppression de contraintes sur ces champs régleraient (temporairement) le problème ?

Merci pour ton aide,
Ophélie

Oui de ce que j’ai pu constater, ce sont les contraintes sur les champs qui passent par une méthode qui reset à tord les documents et qui va être corrigée.

Si le besoin est de masquer les champs, on peut le faire par code front (form.onload / onchange / getUIField(…).visible(true|false)…).

Ce sera livré rapidement dans le prochain build.

Je viens d’essayer, j’ai supprimé les contraintes d’obligation sur ces 2 champs multi-docs (j’ai mis un ordre négatif dans l’impact pour éviter d’avoir à les supprimer) + clear cache.

Le problème des champs qui se mettent à vide est toujours présent.
Etat 1 vers état 3 :

Etat 3 vers état 2 (juste après la transition du dessus) :

les champs = tous, pas uniquement les documents
on va pousser une révision avec d’autres fix ce soir.

1 Like

Ok d’accord, je n’avais pas compris désolé.

Merci beaucoup

Bonjour François,
Cela signifie qu’on doit supprimer l’intégralité des contraintes sur cet objet pour que cela soit fix ?
Avez-vous pu pousser la révision ?

Merci,

Bonjour,

La 5.2.5 poussée hier corrige le problème quand il y des contraintes et des docs multiples.
C’est assez compliqué à expliquer mais pour appliquer les contraintes de champs (obligatoire et visible), il faut mettre l’objet avec les données actuelles puis avec celles envoyées. Les docs multiples se perdaient au passage de ce traitement.

Regardez si cela corrige bien à votre cas d’usage.

Pour suivre les corrections de la release c’est ici (tout en bas) :
https://docs.simplicite.io/5/releasenote/releasenote-5.2.md

This topic was automatically closed 60 minutes after the last reply. New replies are no longer allowed.