====== Présentation > Workflow ====== ===== Introduction au Workflow ===== Le workflow est la zone permettant de créer des ensembles de tâches pour manipuler des documents (et éventuellement des informations) au sein de EzGED. Il est possible de créer ainsi des processus avec lesquels les utilisateurs peuvent intéragir. Liens rapides : * [[doc:v3:presentation:workflow#Tâches dans une étape|Tâches dans une étape]] * [[doc:v3:presentation:workflow#Liste des Conditions|Liste des Conditions]] Pour se faire, le workflow contient des scénarios qui sont un ensemble de tâches organisées dans des étapes. Vous pouvez ajouter dans un scénario, autant d'étapes que nécessaires. Et dans ces étapes, vous pouvez ajouter autant de tâches automatiques que nécessaires. ===== Paramètres et propriétés d'un scénario de workflow ===== Chaque scénario peut contenir au moins une étape, et, doit être associé à au moins une requête. ==== Etapes ==== Un scénario peut être composé d'autant d'étapes que nécessaire. Pour fonctionner, un scénario doit contenir une **étape de départ**, pensez donc à cocher la case de la première étape. Chaque étape peut être composées d'autant de tâches que nécessaire, exécutées suivant leur rang attribué (colonne de droite). MAIS Chaque étape peut contenir une **unique** tâche d'Intervention humaine. [[doc:v3:presentation:workflow#Tâches dans une étape|Voir plus de détails sur les Tâches dans une étape]] ==== Requêtes associées ==== Un scénario peut être relié à plusieurs requêtes. Les requêtes associées au scénario sont celles depuis laquelle un utilisateur peut envoer le document dans le scénario. ==== Requêtes associées : requête affichée par défaut ==== Lorsque l'utilisateur interagira avec une des étapes du scénario, un formulaire se présentera à lui. La **requête affichée par défaut** est celle dont les champs peuvent constituer ce formulaire. ==== Champs à afficher==== Il s'agit des champs qui vont constituer le formulaire. Lorsque l'utilisateur interagira avec une des étapes du scénario, un formulaire se présentera à lui. La **requête affichée par défaut** est celle dont les champs peuvent constituer ce formulaire. Donc s'il y a une tâche d'intervention humaine, pensez à cocher la case "**Requête d'affichage par défaut**" pour afficher les champs de cette requête dans la grille des **Requêtes associées** au-dessus. ===== Tâches dans une étape ===== Il existe deux types de tâches : * Automatique : autant de tâches automatiques que vous avez besoin * Intervention Humaine : une au maximum par étape Chaque étape peut être composées d'autant de tâches que nécessaire, exécutées suivant leur rang attribué (colonne de droite), donc exécutées dans l'ordre des rangs. **Remarque** : Chaque étape peut contenir une unique tâche d'Intervention humaine. **Remarque** : si l'étape contient une **tâche automatique de fin**, les tâches suivantes seront ignorées et l'étape se finalisera. ==== Liste des tâches automatiques disponibles ==== ^ Désignation ^ Description ^ Script résultat ^ Commentaire^ | Mise à jour de champ | Affecte une nouvelle valeur à un champ. Cette valeur peut être fixe(écrite "en dur") ou dynamique (issue d'un autre champ ou d'un paramètre d'une étape précédente) | @TABLE_CHAMP= | @FACTURE_VALIDE=@validefact| | Attente | La tâche se met en attente (rien n'est effectuée) | nothing //ou// rien //ou// chaine vide | Utile pour bloquer le workflow à une étape en attente de réalisation d'une condition particulière | | Fin | Indique que la tâche doit mettre fin au workflow (maj WFBAG_STATUS=CLOSED). | end //ou// fin | | | Attacher des fichiers | Attache les 10 premiers documents issus d'une table en indiquant la valeur d'un de ses champs | attach: | | | Notification par mail | Envoi un email aux adresses spécifiées (séparées par une virgule ou un point virgule). Le mail contient un lien vers ezged et redirige vers la tâche. | email: | email:florian@ezdev.fr,arnaud@ezdev.fr | | Envoi des fichiers par mail | Envoi des documents de la pochette par email | ermailf:florian@ezdev.fr,arnaud@ezdev.fr | emailf: | | Envoi dans la bannette | Envoi des documents de la pochette par bannette | bannette:, | bannette:1,Commerciaux,fabrice (Envoi au groupe des commerciaux + utilisateur fabrice)| | Incrémentation| Ajoute à la valeur du champ @CHAMP la valeur entière //valeurX// | incr:@CHAMP: | incr:@FACTURE_COMPTEUR:1 | | Script externe Python |script::