Workflow externe
Généralités
Cette action permet de déclencher une action globale sur un workflow cible à partir d'un appel réalisé par un autre workflow. L'action va s'appliquer au choix :
- sur des demandes ou fiches préalablement reliées entre elles. C'est le cas lorsque la demande ou la fiche cible est créée par les actions « Création d'une demande » ou « Création d'une fiche » ou qu'elles sont reliées entre elles via un champ de type liste (voir le principe ici : « Modification d'une fiche »).
- sur des demandes ou fiches dont on spécifie explicitement les identifiants (on peut utiliser ici un objet liste Django pour désigner une liste de fiches, par exemple {{ cards|objects:"MODELE-DE-FICHE"|filter_by:"IDENTIFIANT-CHAMP"|filter_value:"VALEUR" }}
Sur le workflow cible : paramétrage préalable d'une action globale
Une action globale doit préalablement être paramétrée avec un déclencheur « Appel externe ».
« Identifiant » : définir un identifiant de l'action globale
« Rôles » : pour autoriser un rôle à déclencher l'action et la rendre interactive.
Sur le workflow à l'initiative de l'action : paramétrage d'une action « Workflow externe »
« Formulaire / Modèle de fiche » : choisir le formulaire ou le modèle de fiche « cible » sur lequel va s'exécuter l'action globale.
« Action » : choisir l'action globale à exécuter. Les actions globales listées sont celles qui ont été préalablement définies avec un déclencheur « Appel externe » sur le workflow cible. Cet appel externe doit être renseigné au niveau de « », il faut sélectionner « Appels signés aux API » pour que l'appel ne soit pas ouvert à tous.
Variables « caller_form_… » pour accéder à l'appelant
Quand l'action globale est déclenchée sur la demande ou la fiche ciblée, la demande ou la fiche qui a déclenchée l'action est vue sous le nom « caller_form » (demande ou fiche appelante). Dans les actions exécutées, il est donc possible d'utiliser n'importe quelle variable de la demande appelante en remplaçant le suffixe « form » par « caller_form ».
Par exemple, {{ caller_form_number }} représente le numéro de la demande appelante, ou {{ caller_form_backoffice_url }} est son URL en backoffice.