KEPLIN Docs

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.

Le groupe Workflows dans l'arborescence de l'app, avec les processus de Gestion des Clients
Le groupe Workflows dans l'arborescence de l'app, avec les processus de Gestion des Clients

Dans une app qui n'en a encore aucun, le groupe affiche seulement « Aucun workflow pour l'instant. ».

Créer un workflow

  1. 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).
  2. 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.
  3. Cliquez sur Créer.

La boîte de dialogue Nouveau workflow, avec le champ Nom
La boîte de dialogue Nouveau workflow, avec le champ Nom

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 :

Le schéma d'Aprovação de oportunidade : palette, toile et propriétés
Le schéma d'Aprovação de oportunidade : palette, toile et propriétés

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

La palette Nœuds, avec tous les types d'étape
La palette Nœuds, avec tous les types d'étape

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.

Les propriétés du processus, dans le panneau de droite
Les propriétés du processus, dans le panneau de droite

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 :

La boîte de dialogue Variables du processus
La boîte de dialogue Variables du processus

  1. Cliquez sur Ajouter une variable.
  2. Donnez-lui un Nom (sans espaces — c'est ainsi que les étapes l'appellent).
  3. Choisissez le Type : Texte, Nombre, Oui/Non ou Date.
  4. É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.

La barre d'avertissements d'un processus inachevé
La barre d'avertissements d'un processus inachevé

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 ».