Dessiner des processus
Le canvas des workflows — créer un processus, choisir l'enregistrement dont il traite, faire glisser des étapes, déclarer des variables et lire les avertissements du schéma.
Un workflow est un processus métier dessiné sur une toile : des étapes reliées par des flèches, des décisions qui ouvrent des chemins, des attentes qui peuvent durer des semaines et des tâches attribuées à des personnes. C'est la bonne pièce pour tout ce qui a des états et des gens au milieu — une approbation de dépense, la clôture d'une opportunité, l'accueil d'un nouveau client.
Un workflow se distingue d'un script planifié sur deux points :
- Toute exécution porte sur UN enregistrement. Ce n'est pas facultatif : chaque exécution est accrochée à une ligne d'une entité de l'app — l'opportunité 42, le compte 17. C'est cet enregistrement que les étapes lisent et écrivent.
- Une exécution peut dormir. Un script s'exécute en quelques secondes ; un processus peut rester trois semaines à attendre que quelqu'un clique sur un bouton, et il reprend exactement là où il s'était arrêté.
Tout au long de ce chapitre, nous utilisons le processus Aprovação de oportunidade de l'app Gestion des Clients : les opportunités au-dessus de 25 000 € passent par la direction avant d'être conclues ; en dessous, elles se concluent toutes seules.
Où vivent les workflows
Les workflows sont du côté UI de l'app : ouvrez le mini-onglet UI et descendez l'arborescence jusqu'au groupe Workflows, sous les écrans et les fichiers. Chaque processus est une ligne ; cliquer sur le nom ouvre le schéma dans un onglet de l'espace de travail.

Dans une app qui n'en a encore aucun, le groupe affiche seulement « Aucun workflow pour l'instant. ».
Créer un workflow
- Passez la souris sur la ligne du groupe Workflows et cliquez sur le bouton Nouveau workflow (l'icône de nœuds, à droite de celle de dossier).
- Remplissez le Nom — par exemple
Approbation de dépense. C'est le nom qui apparaît dans l'arborescence, dans l'historique des exécutions et dans les listes où le processus est choisi. - Cliquez sur Créer.

Le processus naît avec un nœud de Début déjà sur la toile — sans lui, il n'y a nulle part où commencer — et le schéma s'ouvre aussitôt.
Dica
Le bouton de dossier à côté crée des dossiers dans Workflows. Dans une
app avec beaucoup de processus, les grouper par domaine (comercial/,
rh/) fait gagner beaucoup de temps de recherche.
Le schéma
L'onglet d'un workflow a deux vues, Schéma et Exécutions, et le Schéma se divise en trois colonnes :

| Zone | Ce que c'est |
|---|---|
| Nœuds (à gauche) | La palette avec les types d'étape. On en fait glisser un sur la toile. |
| La toile (au centre) | Le processus dessiné. On la fait glisser pour se déplacer, on relie une sortie à une entrée pour créer des flèches. |
| Le panneau de droite | Les propriétés — du processus quand rien n'est sélectionné, de l'étape quand il y a une sélection. |
Dans l'en-tête, à droite du nom, se trouvent l'identifiant du processus (un
code comme wf_4ef9ed11, qui se copie d'un clic — c'est par lui que le code
fait démarrer le processus), l'état de l'enregistrement, et les flèches
d'annuler et de rétablir.
Il n'y a pas de bouton pour enregistrer : le schéma s'enregistre tout seul, un instant après chaque modification.
La palette de nœuds

Pour ajouter une étape, faites glisser le type de la palette vers la toile.
Pour la relier, tirez une flèche du point de sortie d'une étape jusqu'au point
d'entrée de la suivante. Pour la supprimer, sélectionnez-la et appuyez sur
Delete.
Le nœud de Début est l'exception : il y en a toujours un, et il ne se supprime pas.
Chaque type est décrit dans la page suivante, Étapes, décisions et attentes. Le résumé :
| Groupe | Nœuds |
|---|---|
| Décider et ramifier | Condition, Parallèle, Jonction, Boucle |
| Attendre | Attendre, Attendre un événement |
| Agir | Écrire dans l'enregistrement, Notifier, E-mail, Exécuter un script, Sous-workflow |
| Personnes | Tâche |
| Terminer | Fin |
Les propriétés du processus
Cliquez sur n'importe quelle zone vide de la toile pour désélectionner l'étape choisie — le panneau de droite se met à montrer les propriétés du processus.

| Champ | Ce qu'il fait |
|---|---|
| Description | « À quoi sert ce processus. » Texte libre, seulement pour ceux qui construisent. |
| Activé | Désactivé, « le processus ne démarre sur aucun événement — il n'existe que dans le schéma ». Il peut toujours être modifié ; il ne s'exécute simplement pas. |
| Exécutions sur le même enregistrement | Autant que nécessaire ou Une seule à la fois. |
| Entité | L'entité dont chaque exécution traite — l'une des APIs de table de l'app. |
| Champ de la clé | Le champ qui identifie l'enregistrement (normalement la clé primaire). |
| Variables | Voir la section suivante. |
Sur la concurrence : avec Une seule à la fois, « émettre l'événement à nouveau tant qu'une exécution est en cours ne démarre rien ». C'est ce que l'on veut dans une approbation — la même opportunité ne doit pas avoir deux processus d'approbation en cours en même temps. Dans un processus du genre « demande de congés », où le même employé peut avoir plusieurs demandes, on choisit Autant que nécessaire.
Atenção
Sans Entité choisie, le schéma signale une erreur et le processus ne s'exécute pas : « Il reste à choisir l'entité — chaque exécution porte sur un enregistrement. » C'est la première chose à définir dans un nouveau processus.
Variables du processus
Les variables sont « ce que l'exécution transporte avec elle : commentaires, valeurs calculées, décisions ». Elles vivent aussi longtemps que l'exécution, et sont indépendantes de l'enregistrement — le commentaire que la direction a écrit n'a pas besoin d'être enregistré dans la table des opportunités pour que le processus puisse s'en servir trois étapes plus loin.
Ouvrez-les avec le bouton … de la ligne Variables :

- Cliquez sur Ajouter une variable.
- Donnez-lui un Nom (sans espaces — c'est ainsi que les étapes l'appellent).
- Choisissez le Type : Texte, Nombre, Oui/Non ou Date.
- Éventuellement, une Valeur initiale.
À partir de là, toute étape qui demande une valeur peut aller la chercher dans la variable, et les étapes Exécuter un script et Tâche peuvent y écrire.
Les avertissements du schéma
Sous la toile apparaît une barre chaque fois qu'il y a des problèmes — « {n} erreur(s), {n} avertissement(s) dans le schéma ». Cliquer dessus ouvre la liste ; cliquer sur une ligne sélectionne l'étape en cause.

Les problèmes les plus courants :
| Message | Ce que cela veut dire |
|---|---|
| « Le processus n'a pas de nœud de début. » | Erreur. Sans début, rien ne démarre. |
| « Il reste à choisir l'entité — chaque exécution porte sur un enregistrement. » | Erreur. Il manque de remplir Entité dans les propriétés. |
| « Cette tâche n'indique pas à qui elle est attribuée — l'exécution échouera ici. » | Erreur. Une tâche sans destinataires n'arrive jamais à personne. |
| « Cette tâche n'a aucune décision : la personne n'aurait rien sur quoi cliquer. » | Erreur. Voir Tâches pour les personnes. |
| « Il ne peut y avoir qu'un seul Début : celui qui demande le démarrage indique le workflow, pas l'étape. » | Erreur. Supprimez les débuts en trop. |
| « La sortie « X » ne mène nulle part. » | Avertissement. Il y a un chemin à relier. |
| « Cette étape n'est pas accessible depuis le début. » | Avertissement. Une étape isolée sur la toile. |
| « Le processus n'a pas de nœud de fin. » | Avertissement. |
Nota
Les avertissements n'empêchent jamais d'enregistrer. On valide à l'usage, pas à l'écriture — un processus prend des jours à dessiner et personne ne veut perdre son travail à cause d'une flèche manquante. Mais un processus avec des erreurs ne doit pas être activé.
Activé ou désactivé
Le badge à côté du nom affiche Activé ou Désactivé. C'est l'interrupteur Activé dans les propriétés qui le commande, et la règle est simple : désactivé, le processus ne démarre sur rien — ni par un bouton d'un écran, ni par un script. Cela sert à dessiner tranquillement, et à arrêter un processus qui pose problème sans le supprimer.
Dica
Désactiver un processus n'annule pas les exécutions déjà en cours. Celles qui sont vivantes suivent leur chemin ; ce qui cesse d'arriver, c'est le démarrage de nouvelles.
Renommer, déplacer et supprimer
Dans le menu ⋮ de la ligne du workflow, dans l'arborescence :
- Renommer — change le nom d'affichage. L'identifiant du processus
(
wf_…) ne change pas, donc rien de ce qui l'appelle ne casse. - Déplacer vers — vers un autre dossier dans Workflows.
- Supprimer — supprime le schéma. Les exécutions déjà passées n'ont plus de processus auquel appartenir.
Questions fréquentes
J'ai modifié le schéma avec des exécutions en cours. Qu'arrive-t-il à celles qui tournent ? Rien. Chaque exécution garde la copie du schéma avec lequel elle a démarré — qui est au milieu d'un processus ne voit pas le sol bouger. La nouvelle version vaut pour les exécutions qui commenceront à partir de là.
Puis-je avoir deux nœuds de Début ? Non. Celui qui fait démarrer le processus, c'est l'écran, le script ou le processus parent — pas le schéma. Un deuxième Début est une erreur signalée dans la barre d'avertissements.
Le processus est Activé mais ne démarre pas. Vérifiez trois choses : si l'Entité est choisie ; si la concurrence est en Une seule à la fois et qu'il existe déjà une exécution vivante sur cet enregistrement ; et si celui qui demande le démarrage appelle bien le processus — voir Tâches pour les personnes, section « Formes de démarrage ».