Moteur de workflows visuel — règles et diagrammes sur tout modèle Odoo
Visual Workflow Engine — simple if/then rules or advanced graphs on any Odoo model. Workflows simples (si… alors…) ou avancés (étapes, décisions, attentes, parallèles, sous-workflows), diagramme avec bulles d'aide, simulation à blanc, export / import JSON.
Schermafbeeldingen
-
Moteur de workflows visuel — règles et diagrammes sur tout modèle Odoo — capture 1 -
Moteur de workflows visuel — règles et diagrammes sur tout modèle Odoo — capture 2 -
Moteur de workflows visuel — règles et diagrammes sur tout modèle Odoo — capture 3 -
Moteur de workflows visuel — règles et diagrammes sur tout modèle Odoo — capture 4 -
Moteur de workflows visuel — règles et diagrammes sur tout modèle Odoo — capture 5
Vos processus dessinés, compris par tous, exécutés par Odoo — sur n'importe quel modèle
Règles « si… alors… » en mode simple, ou graphe d'étapes, décisions, attentes, branches parallèles et sous-workflows en mode avancé ; un diagramme avec bulles d'aide, une simulation à blanc avant la mise en service, et des garde-fous qui empêchent un workflow de s'emballer.
In English — Visual Workflow Engine. Build workflows on any Odoo model: simple if/then rules or an advanced graph (steps, decisions, waits, parallel branches, sub-workflows). Interactive diagram with help tooltips, dry-run simulation on a real record, JSON export / import, versions, template library. Depends only on base and mail.
| Odoo 19 Community — On Premise | ✔ |
| Odoo.sh | ✔ |
| Odoo Online (SaaS) | ✘ |
Le problème
Relances oubliées, validations qui dorment dans une boîte de réception, dossiers bloqués faute de savoir qui fait quoi maintenant : les règles de gestion vivent dans la tête de quelqu'un. Les automatisations d'Odoo aident, mais une suite d'actions serveur ne se lit pas, ne se teste pas à blanc et ne montre pas où en est un dossier.
Ce que fait le module
Deux modes
Simple : règles lisibles évaluées de haut en bas. Avancé : parcours d'étapes reliées par des flèches.
Un diagramme qui explique
Formes et couleurs par type d'étape, bulle d'aide au survol, étape courante surlignée sur un enregistrement.
Tester avant d'activer
« Tester sur un enregistrement » montre ce qui se passerait, sans rien modifier ni envoyer.
Des garde-fous
50 étapes maximum par déclenchement, boucles détectées, condition invalide journalisée, jamais d'exception vers l'utilisateur.
Le module en images
Captures prises dans Odoo 19 Community, en français, sur une base de démonstration aux données fictives, avec la suite complète installée : certains onglets ou menus visibles appartiennent à d'autres modules de la suite.





Fonctionnalités
Types d'étapes
Début, étape, décision, action, attente, parallèle, fusion, sous-workflow, fin.
Transitions
Toujours, condition (domaine), événement, délai, bouton.
Déclencheurs
Création, modification de champs surveillés, manuel, événement métier, réévaluation périodique.
Actions
Modifier un champ, activité, modèle de courriel (brouillon, file ou immédiat, avec plafond), note, traitement métier en liste blanche, action serveur, sous-workflow.
Sécurité
Action serveur réservée au groupe Concepteur ; traitements métier déclarés par le modèle, aucun code libre.
Vérification
Avant activation : chaque problème avec sa solution.
Portabilité
Export / import JSON entre bases, versions, variables (seuils, délais, champs).
Branchement
Un modèle se branche en une ligne (mixin) ; panneau « Workflow » sur tout enregistrement.
Ce que le module ne fait pas
- La simulation lit les valeurs actuelles et simule les modifications de champs ; elle ne peut pas prévoir l'effet d'un traitement métier ou d'une action serveur.
- Les déclenchements automatiques à la création et à la modification ne concernent que les modèles branchés (mixin) ; les autres se lancent à la main, par événement ou par réévaluation périodique.
- Les écritures du moteur ne re-déclenchent pas les workflows « à la modification » (protection contre les boucles).
- Le réveil des attentes et délais dépend d'une tâche planifiée (toutes les 30 minutes, interne à la base).
Prérequis et dépendances
- Odoo 19 Community ou Enterprise, On Premise ou Odoo.sh (les modules Python tiers ne s'installent pas sur Odoo Online).
- Ne dépend que de
baseetmail: utilisable sans les modules Marchés publics.
| Nom technique | dyo_workflow_engine |
| Version | 19.0.1.0.0 |
| Licence | OPL-1 (Odoo Proprietary License v1.0) |
| Dépendances directes | base, mail |
| Éditeur | DYONYSOS |
Support
Questions, installation, paramétrage : welcome@dyonysos.fr. Le guide utilisateur en français est livré dans le module (doc/GUIDE_UTILISATEUR.md). DYONYSOS, éditeur d’applications Odoo 19 Community. Licence OPL-1, une base de production par achat.
Wat deze app niet doet
- La simulation lit les valeurs actuelles et simule les modifications de champs ; elle ne peut pas prévoir l'effet d'un traitement métier ou d'une action serveur.
- Les déclenchements automatiques à la création et à la modification ne concernent que les modèles branchés (mixin) ; les autres se lancent à la main, par événement ou par réévaluation périodique.
- Les écritures du moteur ne re-déclenchent pas les workflows « à la modification » (protection contre les boucles).
- Le réveil des attentes et délais dépend d'une tâche planifiée (toutes les 30 minutes, interne à la base).
Vereiste applicaties van de appstore
Geen.
Gebruikte Odoo Community-modules
basemail
Applicaties die haar aanvullen
| Serie | Versie | Status | Gepubliceerd op |
|---|---|---|---|
| 19.0 | 19.0.1.0.0 | Beschikbaar | 02-10-2026 |
Fiche gegenereerd uit de code van de uitgever (privé-repository, branch 19.0): de broncode is niet gepubliceerd.
Automatische controle van de appstore (los van de uitgever), toegepast op alle applicaties. Conforme.
| Controle | Resultaat | Effect indien afwezig |
|---|---|---|
| Manifeste lisible sans exécution | conforme | bloquant |
| Licence reconnue (OPL-1) | conforme | bloquant |
| Aucune dépendance vers Odoo Enterprise | conforme | bloquant |
| Aucun import de code Enterprise | conforme | bloquant |
| Aucun en-tête de licence Enterprise | conforme | bloquant |
| Icône static/description/icon.png | conforme | déclasse |
| Description (static/description/index.html ou README) | conforme | déclasse |
| Tests automatisés (tests/test_*.py) | conforme | déclasse |
| Traduction française (i18n/fr.po) | conforme | info |
| Section « Ce que le module ne fait pas » | conforme | info |
| Titre de 70 caractères au plus (70 actuellement) | conforme | info |
| Résumé en français | conforme | info |
Guide utilisateur — Moteur de workflows visuel
Ce module automatise un processus sur n'importe quel type d'enregistrement : contacts, devis, commandes, projets, tickets, notes de frais… Vous le construisez vous-même, sans programmer, en mode simple (une liste de règles « Si … Alors … ») ou en mode avancé (un parcours d'étapes dessiné comme un organigramme).
Menu : Workflows (icône dans la barre des applications).
| Menu | Contenu |
|---|---|
| Workflows | Vos workflows, en cartes avec une vignette du diagramme et les compteurs (en cours, terminées, en erreur) |
| Exécutions | Chaque enregistrement en cours de workflow : étape, état, historique, diagramme surligné |
| Journal | Tout ce que les workflows ont fait (filtres Erreurs, Règles appliquées, Courriels envoyés) |
| Modèles d'exemple | La bibliothèque livrée (à copier avec « Utiliser ce modèle ») |
| Importer | Import d'un workflow exporté d'une autre base (Concepteurs) |
1. Qui peut faire quoi
Réglages › Utilisateurs › la personne › section Workflows :
- Utilisateur : voit les workflows et les exécutions, teste sur un enregistrement, clique les boutons des étapes (si elle a le droit de modifier l'enregistrement et, le cas échéant, le groupe demandé par le bouton).
- Concepteur : crée, modifie, vérifie, active, exporte / importe, répare les exécutions en erreur. Seul un workflow activé par un Concepteur peut lancer une « action serveur ».
2. Premier workflow simple : relancer les contacts sans adresse électronique
- Workflows › Workflows › Nouveau.
- Nom : « Contacts à compléter ». S'applique à : Contact. Mode : Simple.
- Onglet Déclencheurs : cochez À la création et À la modification ; dans Champs surveillés, choisissez « Courriel » (sinon toute modification déclenche). Laissez Lancement manuel coché.
- Onglet Règles › Ajouter une ligne : - Nom : « Adresse électronique manquante » ; - Si… : cliquez dans l'éditeur de condition, « Courriel » › « n'est pas défini » ; - Alors… › Ajouter : type Programmer une activité, résumé « Compléter l'adresse », échéance 2 jours ; laissez Affecter à vide (l'activité ira à la personne qui a créé ou modifié le contact). - Une seule fois par enregistrement reste coché : la règle ne se réapplique pas au même contact.
- En haut : Tester sur un enregistrement › choisissez un contact. Le tableau dit, règle par règle, si la condition est VRAIE ou fausse et quelles actions seraient faites. Rien n'est modifié, rien n'est envoyé.
- Activer. Si quelque chose ne va pas, le workflow n'est pas activé et un encadré liste chaque problème avec sa solution (condition illisible, règle sans action, champ inexistant…). Les points d'attention non bloquants sont listés à part.
- Créez un contact sans courriel : l'activité apparaît. Le Journal du workflow indique « Règle … appliquée ».
Astuce : Arrêter après cette règle ignore les règles suivantes quand celle-ci s'applique (utile pour « si VIP alors … et rien d'autre »).
3. Workflow avancé : validation d'une demande
Le plus rapide est de partir d'un modèle : Modèles d'exemple › « Validation à deux niveaux » › Utiliser ce modèle. L'assistant demande :
- S'appliquera à : le type d'enregistrement (les modèles marqués « applicable à tout modèle » acceptent n'importe lequel, du moment qu'il a un fil de discussion) ;
- les variables (ici : rappel au valideur après 3 jours).
La copie est créée en brouillon. Ensuite :
- Onglet Diagramme : chaque forme a un sens — rond début / fin, rectangle étape, rectangle arrondi action automatique, losange décision, pointillés attente, barre parallèle / fusion, double cadre sous-workflow. Les flèches bleues sont des boutons, orange des conditions, violettes en tirets des événements ou délais.
- Survolez une forme : la bulle d'aide explique ce qu'on attend à cette étape et comment le moteur la traite. Cliquez : la fiche de l'étape (ou de la flèche) s'ouvre ; modifiez-la, fermez, le diagramme se met à jour.
- Ouvrez « Validation niveau 1 » et « Validation niveau 2 » et renseignez le Responsable : l'activité « Valider » lui sera affectée.
- Glissez les formes pour les ranger (les positions sont enregistrées) ; Réorganiser remet la disposition automatique. Molette ou boutons loupe : zoom. La disposition automatique range les étapes en couches du Début vers la Fin (rang = plus long chemin depuis le Début, les boucles retour ne font rien remonter), ordonne chaque couche pour limiter les croisements de flèches, et espace les formes selon la longueur de leur libellé (une étape au nom long s'élargit, ses voisines s'écartent). Des positions enregistrées qui feraient se toucher deux formes (import d'une autre base, libellé allongé) ne sont pas dessinées telles quelles : la disposition automatique reprend la main.
- Tester sur un enregistrement, puis Activer.
- Sur un enregistrement concerné : menu Action › Lancer le workflow (créé par le bouton Ajouter au menu Action du workflow). Sur les contacts, le bouton Workflows de la fiche apparaît dès qu'une exécution existe. Les boutons « Valider (niveau 1) », « Refuser »… apparaissent sur la fiche (modèles branchés) ou dans le panneau Action › Workflow : où en est-on ?, qui montre aussi le diagramme avec l'étape courante surlignée et le chemin déjà parcouru.
Les types d'étapes
| Type | Ce que fait le moteur | Alternative |
|---|---|---|
| Début | point de départ unique | une Décision juste après pour plusieurs entrées |
| Étape | exécute ses actions, puis suit la 1re sortie vraie ; sinon attend (bouton, événement, délai, condition qui deviendra vraie) | — |
| Décision | suit la 1re condition vraie ; prévoyez une sortie « Sinon » (Toujours) en dernier | une Étape à une seule sortie conditionnelle |
| Action automatique | exécute ses actions et continue aussitôt | une Étape avec responsable si un humain doit intervenir |
| Attente | pause de N jours (réveil par la tâche planifiée, toutes les 30 min) | une sortie « Après le délai » qui laisse aussi un bouton possible |
| Parallèle / Fusion | lance plusieurs branches ; la fusion attend qu'elles soient toutes arrivées | une suite d'étapes si l'ordre compte |
| Sous-workflow | lance un autre workflow du même modèle et attend sa fin | l'action « Lancer un sous-workflow », qui n'attend pas |
| Fin | termine ; plusieurs fins possibles (« Validé », « Refusé ») | — |
Les sorties (transitions)
Toujours ; Si la condition est vraie ; À l'événement (nom technique signalé
par le code métier, ex. commande_confirmee) ; Après le délai (jours passés
dans l'étape) ; Sur un bouton (libellé, éventuellement réservé à des groupes).
Les sorties d'une étape sont évaluées par séquence : la première franchissable
gagne. Un événement ne fait avancer que d'une étape.
Variables
Onglet Variables : un seuil, un nombre de jours, un nom de champ… s'utilisent
par leur clé dans les conditions ([("amount_total", ">=", seuil)], ou
[(champ_montant, ">=", seuil)] pour une variable de type Champ) et dans les
délais (« Ou délai lu dans la variable »). On change la valeur une fois et tout
le workflow suit.
4. Réutiliser sur le CRM (ou tout autre module)
Exemple : « Circuit d'approbation par montant » sur les pistes du CRM (module
crm installé).
- Modèles d'exemple › « Circuit d'approbation par montant » › Utiliser ce modèle.
- S'appliquera à : Piste/Opportunité. Variables : Champ montant = « Revenu espéré », seuil responsable 5 000, seuil direction 50 000.
- Dans la copie, renseignez le Responsable des deux étapes d'approbation.
- Ajouter au menu Action puis Activer.
- Sur une opportunité : Action › Lancer le workflow « … ». Sous 5 000 : approuvée automatiquement (note dans le fil) ; au-dessus : activité « Approuver » au responsable et boutons Approuver / Refuser dans Action › Workflow : où en est-on ?.
Pour un déclenchement automatique à la création ou à la modification, le
modèle doit être « branché » au moteur (une ligne de code, voir README.md) —
c'est déjà le cas des contacts, et des avis de marché avec le module Marchés
publics. En attendant, utilisez le lancement manuel ou la réévaluation
périodique (le workflow est réévalué toutes les 30 minutes sur les
enregistrements concernés).
5. Quand quelque chose se passe mal
- Une action échoue (valeur invalide, droits…) : l'exécution passe en erreur, la raison est écrite sur l'exécution et au journal ; l'opération de l'utilisateur (création, modification) aboutit quand même. Corrigez le workflow, puis Exécutions › l'exécution › Réactiver (Concepteur) : l'étape est rejouée. Annuler l'exécution l'arrête définitivement.
- Une action non bloquante (case Bloquant décochée) échoue : c'est noté au journal et la suite continue.
- Condition invalide : la transition est ignorée et l'erreur journalisée, sans plantage.
- Boucle : au-delà de 50 étapes enchaînées ou si la même étape revient sans pause, l'exécution s'arrête en erreur avec la solution (ajouter un bouton, une attente ou un événement dans la boucle). La vérification refuse d'avance les boucles « Toujours » infinies.
- Courriels : le mode Brouillon prépare le courriel dans le fil sans l'envoyer ; les modes File et Immédiat envoient réellement, dans la limite de Courriels max. par jour (20 par défaut).
6. Versions, export, import
- Nouvelle version : crée la version +1 en brouillon et archive l'actuelle ; les exécutions en cours de l'ancienne version vont jusqu'à leur fin.
- Exporter (JSON) : fichier portable (modèles et champs par nom technique, types d'activité, modèles de courriel et groupes par identifiant externe). Importer dans une autre base : le workflow arrive en brouillon ; tout ce qui manque (champ, modèle de courriel, sous-workflow…) est listé et rien n'est créé tant que ce n'est pas réglé.
7. Limites connues
- La simulation lit les valeurs actuelles et simule en mémoire l'effet des actions « Modifier un champ » ; elle ne peut pas prévoir ce que ferait un traitement métier ou une action serveur.
- Les écritures faites par le moteur lui-même ne re-déclenchent pas les workflows « À la modification » (protection contre les boucles).
- Création / modification automatiques : seulement sur les modèles branchés (mixin) ; sinon lancement manuel, événement ou réévaluation périodique.
- Le réveil des attentes et délais dépend de la tâche planifiée « Workflows : réveil des attentes » (toutes les 30 minutes, active par défaut, ne sort rien de la base).
Beoordelingen van ingelogde klanten. Eén beoordeling per klant; de uitgever kan erop reageren. Log in om een beoordeling te plaatsen.
- Uitgever
- DYONYSOS
- contact@omnifloo.com
- Omnifloo-klanten
- Support inbegrepen volgens uw formule: helpcentrum.