Bonjour,
Ci- dessous le processus que j'ai réalisé:
Formulaire demande de congé -> Validation demande de congé > porte (si le formulaire est validé envoi mail , sinon fin)-> envoi mail fake smtp -> end
Comment la porte sait que le formulaire a été validé ou non par le supèrieur pour la demande de congé et ainsi arreter ou non le processus ?
J'ai mis comme scrip true pour la porte si cela est validé et flux par défaut pour l'autre.
Merci
Bonjour,
Pour que l'information de la porte soit récupérée, il faut que la valeur de la variable soit définie en output du bouton de validation du formulaire de la tâche précédente dans l'UI Designer. Et l'action du bouton est "Soumettre une tâche", comme présenté sur l'image ci-dessous :
Dans la branche de la porte qui n'est pas la branche par défaut, il vous suffit ajouter un script qui définit la condition en récupérant la valeur.
J'espère que cela vous aidera. Si c'est le cas je vous remercie de valider la réponse, cela peut être utile pour d'autres membres de la communauté.
Je vais ajouter une présentation complète de la construction d'un processus incluant une porte logique avec un Booléen comme type de variable (validé ou non)
Pour rappel, lors de la création de votre processus, c'est le contrat qui va définir les données attendues. Je vous conseille donc de créer les variables relatives aux données (métiers ou de processus), ensuite créer le contrat afin de faciliter l'auto-génération du formulaire et vous éviter de créer des scripts.
Voici les étapes décrivant votre besoin :
- Au niveau du pool, j'ai déclaré une variable de processus "approval" de type boolean.
- Dans ma 1ere tâche (avant la porte logique) j'ai réalisé 2 opérations :
- Dans le Contrat j'ai ajouté une valeur d'input "inputApproval" qui est de type boolean également et qui définit ce qui est attendu comme données par le processus.
- Dans opération, j'ai associé la variable "approval" à mon contrat "inputApproval" (en cliquant sur la petite flèche, aucun besoin de script)
- Ensuite je prépare ma porte logique. le flux par défaut sera "false" qui amène à Etape 2 (que vous pourrez ensuite remplacer par votre élément de fin).
- Je clique sur l'autre transition pour définir la valeur qu'elle va prendre. Je la nomme "true" et je sélectionne la condition en cliquant sur la petite flèche. Comme vous pouvez voir ma variable est là et je n'ai qu'à la sélectionner.
-
Je vais ensuite créer mon formulaire. Dans ma première tâche, je sélectionne "Execution - Formulaire"; et je clique sur UI Designer, puis sur le petit crayon qui va me générer automatiquement un formulaire à partir des données du contrat et des variables précédemment créées. Comme vous pouvez le voir sur les 2 impressions d'écran de l'UI Designer, le formInput contient la variable "approval" avec la valeur par défaut à false, et le formOutput est une expression javascript automatiquement générée qui récupère les données du contrat et donc la valeur de la checkbox Approval (boolean)
-
Si vous testez le .bos que je vous ai envoyé, vous verrez que selon le cas, soit votre processus ira à Etape 1 si la case est cochée, soit à Etape 2 dans le cas contraire.
Le fichier .bos joint vous donne un exemple concret que vous pouvez réutiliser.