Changer de statut automatiquement

L'élément "Changer de statut automatiquement", de type Type "Saut" (d'un statut à un autre) suscite la transition d'un statut à un autre en fonction d'un critère que l'administrateur fonctionnel peut fixer.

Si plusieurs de ces critères sont combinés, ils devront tous être remplis pour que la transition ait lieu.

L'ajout de cet élément à un statut s'effectue depuis la barre latérale de la page "Détail" du statut à configurer.

Dans la vue graphique d'un workflow, un saut automatique (d'un statut vers un autre) est symbolisé par un vecteur, indiquant, le statut d'origine et de destination du saut.

"Éditer" l'élément "Transition automatique"

L'édition des paramètres d'un élément s'effectue depuis le plan de travail de la page d'édition de l'élément accessible en cliquant sur le bouton "Éditer" associé à l'élément à éditer listé sur la page "Détail" du statut que cet élément configure.

Quelque soit le critère qui déterminera le changement automatique du statut, l'administrateur fonctionnel doit, dans un premier temps, sélectionner au sein d'une liste déroulante, le statut de destination que le saut automatique configure.

Condition

Le changement de statut peut être conditionné par une formule Python, à l'instar d'une Nouvelle page de (télé)formulaire dont l'affichage dépend d'une Condition.

Un saut de statut d'une demande d'usager peut dépendre de la valeur d'un des champs de saisie du (télé)formulaire de la démarche encodé par l'usager ou d'un des champs du profil de l'usager.

Pour attribuer à un champ à saisir le pouvoir de conditionner un saut de statut en fonction de sa valeur, il faut le doter d'un identifiant. C'est le paramètre avancé nom de variable du champ à saisir dont la valeur servira de condition qui le permet.

Les noms de variable sont soumis à des règles syntaxiques: ils ne doivent contenir que des chiffres et/ou des lettres minuscules. Les caractères spéciaux sont proscrits, y compris les espaces, généralement remplacés par des "_" (underscore).

Une condition peut alors s'exprimer sous la forme d'une "formule Python" dont la syntaxe diffère légèrement selon que la condition dépend d'une donnée du formulaire ou d'une donnée relative à l'usager:

form_var_nom_de_variable == "valeur conditionnelle"
form_user_var_nom_de_variable == "valeur conditionnelle"

La valeur conditionnelle doit respecter la casse et l'accentuation.

Exemple :

Un usager introduit une demande d'abonnement à la gazette de la collectivité. Le (télé)formulaire pour formaliser cette demande contient un champ à saisir de type "Case à cocher", libellé "Je m'abonne pour la première fois". Selon la valeur de champ - "cochée" (true) ou "non cochée" (false) - , la demande de l'usager sera traitée différemment.

S'il s'agit d'une première demande d'abonnement, sa demande sera orientée vers le service d'expédition de la collectivité et atteindra le statut "En cours d'abonnement", prévue pour que le service d'abonnement enregistre l'usager en tant qu'abonné et lui assure la livraison de la gazette. Si la demande relève d'un ré-abonnement, elle progressera vers le statut intermédiaire "En cours de vérification", configurée pour que soient vérifiée la date de la fin du dernier abonnement, et donc déduite la date du début du prochain abonnement.

Si le champ "Je m'abonne pour la première fois" a pour nom de variable : reabonnement, la condition pour automatiser un saut de statut vers le statut "En cours de vérification" s'écrirait comme ceci :

form_var_reabonnement == true

Déclencheur

Un saut vers un statut peut être provoqué par un système externe, tel que le système de paiement de la collectivité, grâce à une API autorisant le traitement d'une demande d'usager.

Les utilisateurs autorisés à déclencher doivent être spécifiés.

Expiration

Un délai d'expiration peut également être configuré pour automatiser un changement de statut.

Exemples d'usage du critère "Expiration" :

* Pour automatiser un saut vers le statut "Relance", prévu pour signaler au gestionnaire (chargé du traitement des demandes qui ont intégré le workflow que cet élément configure) que la demande tarde à être traitée, l'administrateur fonctionnel peut estimer une durée de traitement critique à partir de laquelle il considère utile de relancer le gestionnaire.

* Conformément aux règles de respect de la vie privée de la CNIL, les données personnelles d'un usager contenues dans le (télé)formulaire d'une demande clôturée doivent être supprimées après un délai légal pour anonymiser sa demande. Pour automatiser le saut du statut "Terminé" vers le statut "Anomymiser" auquel est affecté l'élément "Anonymiser", l'administrateur fonctionnel peut indiquer ce délai légal.

Le saut d'un statut vers un autre peut s'effectuer de deux autres manières :

* Changer de statut manuellement,

* Changer de statut lors de la soumission.