Depuis la mise à jour en 5.1.39 on constate que les map des actions avec champs de confirmation nous retourne des map vide.
Sur la version 5.1.30, on ne rencontre pas ce soucis.
Il a-t-il eu une régression sur cette partie ou est-ce que le fonctionnement a changé ?
Merci.
Par contre, si on ajoute le champ demoPrdIncrement utilisé dans la pop-up de confirmation dans le formulaire de DemoProduct, la map passé à la méthode increaseStock() est vide.
D’ailleurs, sans faire de modifications au module de démo, en ajoutant juste un AppLog pour voir le contenu de la map, on constate ce problème sur le champ demoPrdStock utilisé dans le formulaire et dans la pop-up :
En v.5.1.38 je récupérais bien les valeurs dans la map (pour la version de la méthode avec map en paramétre et non Action). Est-ce que le fonctionnement a changé en v5.1.39 ?
Ok, mais on est toujours dans le même cas qu’au début du post.
Ça fonctionne uniquement quand le champ de confirmation n’est pas utilisé dans le formulaire.
Or, de mon côté le champ est utilisé dans le formulaire et dans la pop-up de confirmation afin de répondre à ce besoin :
Le formulaire est complété successivement par plusieurs personnes, à la fin un valideur ouvre le formulaire, clique sur une action “Transmettre”. Cette action contient plusieurs champs de confirmation qui sont aussi présent dans le formulaire afin qu’il puisse vérifier une dernière fois le contenu et le modifier si besoin (on autorise la modification dans l’initAction). Une fois que le valideur confirm l’action, on a besoin de récupérer les nouvelles valeurs entrées dans la pop-up de confirmation dans la méthode back. En version 5.1.38 on récupérait ces informations dans la Map passée en paramètre de la méthode (fonctionne aussi si on met Action en paramètre). En 5.1.39 je n’arrive plus à récupérer les nouvelles valeurs, que ca soit via la Map ou l’objet Action. Dans cette version, je ne peux récupérer le contenu des champs de confirmation que s’ils ne sont pas utilisés dans le formulaire (ce qui est le cas pour le champ increment dans le module Demo, mais pas pour le champ stock par exemple).
Est-ce que ce comportement serait dû à cette modification indiqué dans la release note de la 5.1.39 : "Reset confirm fields before initAction" ?
Je me permets d’apporter quelques précisions, oui il y a eu une régression qui a été corrigée dans cette version :
les champs de confirmation issus de l’objet sont en lecture et ne sont pas des paramètres de l’action
seuls les champs propres à l’action sont éditables et postés.
L’idée est de séparer ce qui relève de ce qu’on confirme de ce qu’on précise en plus. Si un champ de l’objet à confirmer donc en lecture est encore modifiable, alors il faudrait reconfirmer ce qu’on a modifié… si on ne confirme pas, on revient sur le formulaire.
Vous êtes dans un cas hybride qui par erreur fonctionnait avant = vouloir contrôler et modifier un champ de l’objet dans l’action.
Votre besoin est donc une feature request = permettre de modifier un champ de l’objet si on le force en écriture dans l’initAction.
Pour vous en sortir à date, il faut créer un champ de confirmation dédié dans l’action, et dans l’initAction, il suffit de forcer sa valeur par défaut (setDefaultValue) avec celle de l’objet. Ce champ sera alors envoyé au back (mais personne n’aura confirmé la modification qui peut s’affranchir du coup des règles du formulaire).
L’évolution sera poussée sur la version 5.1.40 pour laisser passer tous les champs d’action modifiables, donc mêmes ceux de l’objet rendus modifiables dans l’initAction.
En attendant que ce soit livré si c’est urgent, vous pouvez créer un champ comme décrit dans la réponse précédente.
D’accord, je comprend mieux, c’est vrai que l’usage que l’on fait de la pop-up de confirmation est détournée de sa fonction première dans certains cas
Jusqu’à présent je pensais que le fait de pouvoir rendre les champs modifiables depuis l’initAction et de récupérer les nouvelles valeurs dans la map était “normal” afin de pouvoir surcharger le comportement de cette pop-up de confirmation avec champs d’action.
Je vais attendre la version 5.1.40, merci François.