Durant le déroulement d’un processus, il est possible de faire appel à un autre processus en lui transmettant (ou non) des données en entrée.
Exemple :
Le processus ci-dessus sert à faire l’état du stock de fourniture scolaire d’une école. Si la quantité d’une fourniture est en dessous de 100 unités, le processus de demande d’achat est alors déclenché. Pour finir, un email est envoyé avec l’état du stock (actuel ou après achat, selon si l’activité appelée est en mode asynchrone) au format PDF.
Configurer une activité appelante
Sur la page de configuration du processus, sélectionnez la tâche d’appel de processus puis cliquez sur le bouton « Choisir le processus ».
Choisissez le processus appelé parmi les processus proposés.
Il faut désormais configurer les variables d’entrées qui sont transmises au processus appelé (les variables qui sont dans son le formulaire de démarrage) ainsi que les variables de sorties (celles qui seront utilisables par le processus appelant).
Le processus appelé pourra ainsi utiliser les valeurs transmisses par les variables en entrée et transmettre ses propres variables au processus appelant.
Vue de la configuration « Choix des entrées »
Vue de la configuration « Choix des sorties »
Ainsi, la tâche qui suit l’activité appelante, pourra utiliser les variables transmises en sortie en plus de ses propres variables.
Rendre une activité appelante asynchrone
La particularité d’une activité appelante asynchrone est qu’elle ne bloquera pas le processus le temps que celle-ci soit terminée.
Par conséquent, aucune donnée de sortie ne sera transmise par le processus appelé.
En effet, nous ne savons pas quand celui-ci sera en mesure de transmettre les données de sortie. Elles seraient inutilisables car cela provoquerait des erreurs de faire appel à des variables qui n’existent pas encore.
Activer le mode asynchrone
Pour activer le mode asynchrone, rendez-vous dans Design, dans la partie configuration du processus. Dans la configuration de la tâche Call-Activity, sur la page de sélection du processus appelé, vous trouverez le bouton « Mode Asynchrone » en bas à droite de la fenêtre de choix du processus :