Skip to Content
Icône de Timeline (Gantt) View for Odoo Community — drag and drop, dependencies, workload

Timeline (Gantt) View for Odoo Community — drag and drop, dependencies, workload

Free Odoo 20 Module Quality check: Verified OPL-1 (Odoo proprietary)

Gantt / Timeline view for Odoo 20 Community — a real new view type <dyo_timeline>: day/week/month/year scales, multi-level grouping, drag and drop to reschedule or reassign, Ctrl-drag to copy, resize, click-and-drag creation, editable dependency arrows, progress bars, workload per row and load histo

Screenshots

Vue Gantt — Odoo 20.0 Community

Une vraie vue Gantt dans Odoo Community

Ajoute le type de vue <dyo_timeline> : une frise chronologique à déclarer sur n'importe quel modèle daté, pour replanifier et réaffecter au glisser-déposer. Code 100 % original, sans une ligne d'Odoo Enterprise.

Nom techniquedyo_web_timeline
Version20.0.1.0.0
LicenceOPL-1 (Odoo Proprietary License v1.0)
Dépendanceweb (module Ressources facultatif)

Le constat

Odoo Community n'a pas de vue Gantt : la frise des tâches, des ordres de travail ou des réservations est une fonctionnalité Enterprise. On se rabat sur le calendrier, qui montre des événements mais pas des ressources, ni la charge, ni les enchaînements. Ce module comble ce manque par un type de vue à part entière, enregistré dans Odoo comme la liste ou le kanban : il apparaît dans le sélecteur de vues et s'utilise avec la recherche, les filtres, les regroupements et les favoris standard.

Frise des tâches par responsable, échelle semaine
Échelle semaine, regroupement par responsable : dépendances, jours non travaillés grisés, ligne « maintenant », charge par ligne.

Ce que fait la vue

📅

Jour, semaine, mois, année

Quatre échelles, navigation période précédente / suivante, bouton « Aujourd'hui » et ligne rouge de l'instant présent.

🗂️

Regroupement sur plusieurs niveaux

Par défaut dans la vue (default_group_by="team,user_id") ou depuis la recherche ; groupes repliables avec bandeau de synthèse.

↔️

Glisser-déposer et redimensionnement

Déplacer une barre la replanifie ; la déposer dans une autre ligne la réaffecte ; ses deux bords l'allongent ou la raccourcissent. Avec Ctrl, le glisser crée une copie.

⛔

Refus serveur respecté

Si le serveur refuse (contrainte, droit, tâche verrouillée), la barre revient à sa place et le message d'erreur s'affiche.

➕

Création par cliquer-glisser

Glisser dans une ligne vide ouvre le formulaire pré-rempli : dates sélectionnées et valeur du groupe (responsable, équipe…).

🔗

Dépendances éditables

Flèches tracées depuis un champ many2many ; on les crée en tirant le point d'une barre vers une autre, on les retire d'un clic ou depuis l'aperçu ; les boucles sont refusées, les conflits dessinés en rouge.

🎨

Couleurs, progression, décorations

Couleur par champ (index, code #hex, relation, sélection), barre d'avancement, décorations conditionnelles decoration-danger…

⚖️

Charge et histogramme

Total d'heures (ou d'un champ numérique) par ligne, en rouge au-delà de consolidation_max ; histogramme de charge par période en pied de frise.

🏖️

Jours non travaillés

Grisés d'après le calendrier de travail de la société (module Ressources), à défaut les week-ends.

⌨️

Clavier et tactile

Barres focalisables, Entrée pour l'aperçu, Maj + flèche pour déplacer, Ctrl + Maj + flèche pour redimensionner ; utilisable au doigt sur mobile.

🚀

Des milliers de barres

Au-delà de 500 barres, seules celles à l'écran sont dessinées : 1 500 tâches s'affichent en environ une demi-seconde sur notre banc.

🖥️

Plein écran

Un bouton passe la frise en plein écran pour les réunions de planification.

Regroupement équipe puis responsable, échelle mois
Regroupement à deux niveaux (équipe › responsable), échelle mois, groupes repliables.
1 500 tâches affichées
1 500 tâches générées : rendu virtualisé, seuil de capacité dépassé signalé en rouge.

Déclarer une frise

Une vue se déclare en XML comme toute autre vue Odoo, puis s'ajoute au view_mode de l'action (dyo_timeline,list,form) :

<dyo_timeline date_start="date_start" date_stop="date_stop"
              default_group_by="user_id" default_scale="week"
              color="color" progress="progress"
              dependency_field="depend_on_ids"
              consolidation="allocated_hours" consolidation_max="40"
              decoration-danger="stage == 'late'">
    <field name="name"/>
    <field name="user_id"/>
</dyo_timeline>

L'architecture est validée à l'installation par un schéma RelaxNG et par des contrôles sur les champs (existence, type date, many2many vers le même modèle). Un attribut reschedule_method permet d'appeler une méthode métier plutôt que write — par exemple pour relancer un planificateur quand on déplace un ordre de travail.

Interface en anglais et en français (fichiers de traduction fournis).

Recherché aussi sous : diagramme de Gantt Odoo Community, planning Odoo 20.0 gratuit.

Sur mobile

Frise sur un téléphone
Largeur 390 px : défilement horizontal de la grille, aperçu au toucher.

Compatible avec

Odoo 20.0 Community et Enterprise, On Premise et Odoo.sh. Le module n'émet aucun appel sortant. Un module de démonstration facultatif, dyo_web_timeline_demo, installe des tâches (avec dépendances et une tâche verrouillée) et des réservations en dates sans heure.

Ce que le module ne fait pas

Il ne planifie pas à votre place : pas d'ordonnancement automatique, pas de nivellement de charge, pas de recalcul des successeurs quand on déplace un prédécesseur (la flèche passe au rouge, c'est tout — une méthode reschedule_method peut le faire côté serveur). Il n'offre pas de plage de dates libre, n'exporte pas en PDF, ne gère pas d'échelle horaire plus fine que le quart d'heure, et les jours non travaillés sont ceux du calendrier de la société, pas ceux de chaque ressource. Il ne fournit aucune frise « prête à l'emploi » sur les modules standard : c'est un type de vue, à déclarer sur le modèle de votre choix.

DYONYSOS — welcome@dyonysos.fr
Odoo 20.0 Community · licence OPL-1.

Timeline (Gantt) View for Odoo Community — drag and drop, dependencies, workload — capture 1
Timeline (Gantt) View for Odoo Community — drag and drop, dependencies, workload — capture 1
Timeline (Gantt) View for Odoo Community — drag and drop, dependencies, workload — capture 2
Timeline (Gantt) View for Odoo Community — drag and drop, dependencies, workload — capture 2
Timeline (Gantt) View for Odoo Community — drag and drop, dependencies, workload — capture 3
Timeline (Gantt) View for Odoo Community — drag and drop, dependencies, workload — capture 3
Timeline (Gantt) View for Odoo Community — drag and drop, dependencies, workload — capture 4
Timeline (Gantt) View for Odoo Community — drag and drop, dependencies, workload — capture 4
Timeline (Gantt) View for Odoo Community — drag and drop, dependencies, workload — capture 5
Timeline (Gantt) View for Odoo Community — drag and drop, dependencies, workload — capture 5

What this app does not do

  • Il ne planifie pas à votre place : pas d'ordonnancement automatique, pas de nivellement de charge, pas de recalcul des successeurs quand on déplace un prédécesseur (la flèche passe au rouge, c'est tout — une méthode reschedule_method peut le faire côté serveur). Il n'offre pas de plage de dates libr
  • DYONYSOS — welcome@dyonysos.fr Odoo 20.0 Community · licence OPL-1.

Store apps required

None.

Odoo Community modules used

web

Apps that complement it

SeriesVersionStatusPublished on
20.020.0.1.0.0 Available 02/10/2026
19.019.0.1.0.0 Available

Listing generated from the publisher's code (private repository, branch 20.0): the source code is not published.

Automatic store check (separate from the publisher's), applied to all apps. Conforme.

CheckResultEffect if absent
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 (80 actuellement) absent info
Résumé en français absent info

Reviews from signed-in customers. One rated review per customer; the publisher can reply. Sign in to leave a review.

Publisher
DYONYSOS
Email
contact@omnifloo.com
Omnifloo customers
Support included with your plan: help centre.