Adapter les conditions du cycle de vie des formulaires


Cette page ne doit être appliquée que si le script vous demande de passer la migration manuelle code.20260526.FORMS-MigrateWorkflowCondition

A partir de la version 2.29 du plugin Forms, toutes les entrées des formulaires sont indexées dans Solr, ce qui facilite et améliore les performances de la recherche et du tableau de bord.

Certaines propriétés indexées permettent de déterminer quels sont les utilisateurs ayant une action disponible sur le cycle de vie, et donc accès à l'entrée. Le calcul des ces propriétés dépendent des conditions de workflow.

Si la migration assistée vous pointe cette page, c'est qu'il y a des conditions spécifiques définies dans votre projet.

Ne sont concernées par la migration que les conditions utilisées dans un cycle de vie de formulaire (entry-form-*.xml)

Toutes les conditions projets liées à un cycle de vie de formulaire doivent maintenant étendre la nouvelle interface FormEntryCondition et implémenter ses méthodes permettant de calculer quels sont les utilisateurs ayant le droit d'accès à l'entrée.

Il faut donc demander l'aide d'un développeur pour l'implémentation de ces méthodes.

Par ailleurs, si une condition dépend d'un élément externe au formulaire (un contenu, une page étiquetée, un droit, ...) il faut créer un observer projet qui va réagir à un changement sur l'élément externe et réindexer les données du formulaire.

Par exemple, la condition dépend d'une entrée d'une table de référence pointant les responsables d'une entrée de formulaire. A chaque modification des responsables sur cette entrée de table de référence, les droit d'accès sur les entrées des formulaires changent et nécessitent donc une réindexation des entrées du formulaire.

Le(s) observeurs projets doivent étendre la classe AbstractFormEntryWorfklowActorsSolrObserver

La charge de travail liée à cette migration dépend de la complexité des conditions, de leur nombre et si la création d'observer s'avère nécessaire.
Compter entre 10 min et 0.5 jour.

Coté noyau:
- toute modification ou changement d'état d'une entrée entraine une réindexation de l'entrée. 
- toute modification des affectations de droits sur un formulaire entraine une réindexation de toutes les entrées du formulaire
- toute modification de profil de droit entraine une réindexation de toutes les entrées de toutes les formulaires
En effet, tous ces événements peuvent modifier les droits d'accès à une entrée de formulaire.

Sans cette migration, le projet se lancera correctement mais les résultats de votre tableau de bord peut ne pas correspondre aux vrais accès des utilisateurs.

Retour en haut