Déclencheurs d'automatisation
Le déclencheur est l'événement qui démarre un flux d'automatisation. Vous le choisissez dans le champ Type de déclencheur du flux.
Types de déclencheurs
| Trigger Type | Le flux démarre quand… | Paramètres |
|---|---|---|
| Document créé | un document est créé. | — |
| Document mis à jour | un document existant est enregistré. La création ne compte pas. | — |
| Champ modifié | un champ précis change de valeur à l'enregistrement. | Champ déclencheur, Valeur de départ, To Value |
| Document supprimé | un document est supprimé. | — |
| Document validé | un document est validé. | — |
| Document annulé | un document est annulé. | — |
| Basé sur une date | une date du document est atteinte, avec un décalage. | Champ de date, Décalage de date (jours), Sens de la date |
| Programmé | l'heure d'une expression cron est atteinte. | Expression cron |
| Événement personnalisé | une application émet un événement nommé. | Événement personnalisé |
| Manuel | un appel explicite lance le flux. | — |
Changement de valeur
Laissez Valeur de départ ou To Value vides pour accepter n'importe quelle valeur. Exemple : Champ déclencheur status, Valeur de départ vide, To Value Approved. Le flux démarre dès que le statut devient « Approved », quel que soit le statut précédent.
Date
Champ de date propose les champs de type date du document, plus « Created On » et « Last Updated On ». Sens de la date vaut « Before » ou « After ». Le moteur vérifie ces flux une fois par heure.
Planification
Expression cron utilise le format cron standard à cinq champs. Exemple : 0 9 * * 1 signifie chaque lundi à 9 h 00. Le moteur vérifie les flux planifiés toutes les cinq minutes. Le champ Prochaine exécution affiche la prochaine exécution prévue.
Événement personnalisé
Une application appelle frappe.automation_engine.events.emit("nom_evenement", doc=..., payload=...). Le flux dont le champ Événement personnalisé porte ce nom démarre. Par défaut, l'événement doit être déclaré par l'application dans le hook automation_events.
Manuel
Le flux démarre seulement par un appel à la méthode frappe.automation_engine.api.run_manually. Aucun bouton n'est ajouté au document cible. Pour essayer un flux, utilisez plutôt le bouton Exécution de test du flux.
Conditions de déclenchement
Les conditions limitent les documents qui démarrent le flux.
- Champs correspondants : des règles sur les champs du document, construites avec le sélecteur de filtres. Toutes les règles doivent être vraies.
- Expression avancée en Python : une expression facultative, avec le document dans
doc. Elle sert aux conditions que les règles ne savent pas exprimer, par exemple un « OU ».
Les règles et l'expression doivent toutes être vraies.
Exemple
Exemple fictif : un flux sur « Client » avec le déclencheur Document mis à jour. Pour qu'il s'exécute seulement pour les clients d'Europe ou de France :
- Champs correspondants : vide.
- Expression avancée en Python :
doc.territory in ("Europe", "France").