Documentation9 min de lecture

Nomenclatures : versions, variantes dynamiques et contrôles

Quinze modules OCA du dépôt `manufacture` encadrent les nomenclatures dans Odoo 18 Community : `mrp_bom_version` ajoute un **cycle brouillon / active / historique** et un **numéro de version**, et `mrp_bom_attribute_match` permet un **composant dynamique** désigné par son modèle de produit, résolu selon les attributs du produit fabriqué. Les treize autres, des formules de quantité au contrôle d'alignement entre l'ordre et sa nomenclature.

Atelier de production et planification des ordres de fabrication

Une nomenclature est un document technique qui engage la production, les achats et le prix de revient. Dans Odoo, c'est un enregistrement qu'on modifie sans état, sans version et sans trace.

Quinze modules communautaires lui donnent un cycle de vie, des composants qui s'adaptent aux variantes, et les contrôles qui évitent les fabrications fausses.

Résumé

Quatre modules installent le cycle de vie : un état et un numéro de version contrôlant si la nomenclature est utilisable, le suivi des modifications dans le fil de discussion, un message d'avertissement affiché quand elle est utilisée, et le contrôle d'alignement entre un ordre de fabrication et sa nomenclature.

Quatre traitent les variantes et les quantités : un composant dynamique résolu par correspondance d'attributs, la sélection directe de la variante, une quantité calculée par formule, et le respect de la précision d'arrondi de l'unité de mesure.

Le reste améliore la lecture et l'usage : navigation dans la hiérarchie des nomenclatures, image du produit sur la fiche, notes en texte enrichi, sections et notes entre les composants, sélection automatique de la bonne nomenclature, conditionnements repris dans les ordres, et l'interdiction de livrer partiellement un kit.

L'essentiel

  • Un état et un numéro de version : une nomenclature en brouillon ne produit pas.
  • Le suivi des modifications dans le fil de discussion de la nomenclature.
  • Un composant dynamique résolu selon les attributs du produit fabriqué.
  • Une quantité calculée par formule, pour les composants proportionnels.
  • Le contrôle d'alignement entre l'ordre de fabrication et sa nomenclature.
  • Des sections et des notes entre les composants, comme sur un devis.
  • La bonne nomenclature sélectionnée automatiquement, au lieu de la première trouvée.
  • La livraison partielle d'un kit interdite, par produit.

Ce que ces modules ajoutent à l'instance

FamilleModulesNombre
Cycle de viemrp_bom_version, mrp_bom_tracking, mrp_bom_warn_message_oca, mrp_production_check_bom_alignment4
Variantes et quantitésmrp_bom_attribute_match, mrp_bom_select_product_variant, mrp_bom_line_formula_quantity, mrp_bom_line_uom_rounding4
Lecture et navigationmrp_bom_hierarchy, mrp_bom_image, mrp_bom_note, mrp_bom_widget_section_and_note_one2many4
Usagemrp_bom_assign_auto, mrp_packaging_default, stock_whole_kit_constraint3

Aucun n'ajoute de menu : tous enrichissent la nomenclature, ses lignes ou l'ordre de fabrication.

Donner un cycle de vie à une nomenclature

Dans Odoo, une nomenclature est immédiatement utilisable : créée, elle produit. Il n'existe ni brouillon, ni version, ni archivage de l'ancienne. Un bureau d'études qui prépare la nomenclature d'un produit non validé engage donc la production.

  • mrp_bom_version introduit un cycle brouillon / active / historique et un numéro de version. Seule une nomenclature active peut être utilisée.
  • mrp_bom_tracking active le suivi des modifications sur les principaux champs, journalisé dans le fil de discussion : qui a changé quelle quantité, et quand.
  • mrp_bom_warn_message_oca affiche un message d'avertissement quand la nomenclature est utilisée dans un ordre — « composant en fin de vie », « vérifier la gamme ».
  • mrp_production_check_bom_alignment vérifie que composants, sous-produits et opérations d'un ordre restent cohérents avec la nomenclature, même après modification de celle-ci.

Le dernier traite le problème le plus insidieux de la production : un ordre lancé la semaine dernière, une nomenclature modifiée depuis, et un écart que personne ne voit jusqu'à la consommation.

Le MRP qui exploite ces nomenclatures est traité dans production : MRP multi-niveaux.

Les variantes et les quantités

ModuleCe qu'il permet
mrp_bom_attribute_matchUn composant dynamique désigné par son modèle de produit, résolu selon les attributs du produit fabriqué
mrp_bom_select_product_variantLa saisie privilégiant la variante précise plutôt que le modèle générique
mrp_bom_line_formula_quantityUne quantité calculée par formule, plutôt qu'une valeur fixe
mrp_bom_line_uom_roundingLe respect de la précision d'arrondi de l'unité de mesure du composant

Le composant dynamique est la réponse au casse-tête des produits à variantes : fabriquer une chaise rouge consomme une assise rouge, une chaise bleue une assise bleue. Sans ce module, il faut une nomenclature par variante — et cinquante variantes font cinquante nomenclatures à maintenir.

La quantité par formule sert les composants proportionnels : une longueur de joint fonction du périmètre, une quantité de colle fonction de la surface. Elle évite de figer une valeur qui ne vaut que pour une taille.

Le dernier module est un garde-fou discret : saisir 0,333 unité d'un composant géré en unités entières produit des consommations fausses et des stocks fractionnaires impossibles à inventorier.

Lire une nomenclature

  • mrp_bom_hierarchy ajoute des boutons de navigation dans la hiérarchie : remonter au parent, descendre dans les sous-nomenclatures sans repasser par la recherche.
  • mrp_bom_image affiche l'image du produit fabriqué sur la fiche et en vue kanban.
  • mrp_bom_note ajoute des notes en texte enrichi sur la nomenclature — consignes, historique de conception, points de vigilance.
  • mrp_bom_widget_section_and_note_one2many permet d'insérer des sections et des notes entre les composants, comme sur un devis.

Le dernier change la lisibilité d'une nomenclature longue : « Châssis », « Habillage », « Visserie » structurent une liste de quarante composants qui, sans sections, se lit comme un inventaire.

Ces quatre modules ne changent aucun calcul. Ils rendent le document lisible par ceux qui l'utilisent — bureau d'études, méthodes, atelier — et c'est précisément ce qui détermine si la nomenclature est tenue à jour ou contournée.

Trois contrôles à l'usage

ModuleCe qu'il résout
mrp_bom_assign_autoLa sélection de la bonne nomenclature au lieu de la première correspondante — le comportement standard d'Odoo
mrp_packaging_defaultLes conditionnements repris dans les nomenclatures et les ordres de fabrication
stock_whole_kit_constraintL'interdiction de livrer partiellement les composants d'un kit, par produit

Le premier corrige un comportement coûteux : lorsqu'un produit a plusieurs nomenclatures — deux gammes, deux sites, deux versions —, Odoo prend la première trouvée. Le module applique une logique de sélection.

Le troisième traite les produits vendus en kit : livrer la moitié des composants d'un ensemble n'a pas de sens pour le client, et génère un reliquat que personne ne suit. L'option se règle par produit.

La notion de kit et ses conséquences commerciales sont abordées dans recommandation de produits et assortiments.

Limites connues

  • Le cycle de vie des nomenclatures change les habitudes : une nomenclature en brouillon ne produit plus, ce qui bloque les raccourcis existants.
  • Le composant dynamique suppose des attributs bien structurés sur les produits — sinon la correspondance échoue.
  • Les formules de quantité sont du code : elles demandent un auteur et une relecture.
  • Le contrôle d'alignement signale des écarts qu'il faut traiter : sans décision, il ajoute du bruit.
  • mrp_bom_assign_auto modifie une logique centrale : à éprouver sur une copie avant une base en production.
  • L'interdiction de livraison partielle d'un kit peut bloquer une expédition urgente.

Identité technique

Les quinze modules viennent du dépôt OCA manufacture, branche 18.0 — 57 modules au total —, en licences AGPL-3 et LGPL-3 selon le module. Tous dépendent de mrp ; deux s'appuient sur des briques de conditionnement et de comptabilité.

La famille voisine : production : MRP multi-niveaux et nomenclatures, qui traite le calcul des besoins.

Questions fréquentes

Peut-on préparer une nomenclature sans qu'elle soit utilisable ?

Pas en standard : créée, elle produit. mrp_bom_version introduit un cycle brouillon / active / historique et un numéro de version — seule une nomenclature active est utilisable. C'est ce qui permet au bureau d'études de préparer sans engager la production.

Faut-il une nomenclature par variante de produit ?

Pas avec mrp_bom_attribute_match : un composant peut être désigné par son modèle de produit et résolu selon les attributs du produit fabriqué — une chaise rouge consomme une assise rouge. Sans ce module, cinquante variantes font cinquante nomenclatures à maintenir.

Que se passe-t-il si la nomenclature change après le lancement d'un ordre ?

Rien, et c'est le problème : l'ordre garde ses composants d'origine, la nomenclature a changé, et l'écart se découvre à la consommation. mrp_production_check_bom_alignment vérifie la cohérence entre l'ordre et sa nomenclature et signale les écarts.

Quelle nomenclature Odoo choisit-il quand il y en a plusieurs ?

La première correspondante, ce qui est rarement le bon choix quand un produit a deux gammes, deux sites ou deux versions. mrp_bom_assign_auto applique une logique de sélection. Le module modifie un comportement central : à éprouver sur une copie.

Peut-on calculer la quantité d'un composant par une formule ?

Oui, avec mrp_bom_line_formula_quantity : la quantité d'un composant se calcule dynamiquement plutôt que d'être figée — une longueur de joint fonction du périmètre, une quantité de colle fonction de la surface. Ces formules sont du code : elles demandent un auteur et une relecture.

Se faire accompagner

La nomenclature officielle diffère presque toujours de celle de l'atelier — c'est le constat qui ouvre tout projet industriel. La raison est rarement technique : elle tient à ce que modifier la nomenclature est trop lourd ou trop risqué, donc l'atelier compense.

Nous commençons donc par la lisibilité et le cycle de vie — sections, notes, versions, traçabilité des modifications — avant les contrôles. Une nomenclature qu'on peut faire évoluer est une nomenclature qui reste juste. Voir les prestations d'Atalios Consulting, notre méthode ou demander un rappel.

Pour aller plus loin

En résumé

La nomenclature devient un document technique : un état qui dit si elle produit, un numéro de version, un historique des modifications, et un contrôle d'alignement avec les ordres en cours. Plus les composants dynamiques, qui évitent cinquante nomenclatures pour cinquante variantes. Parlons de vos nomenclatures.

Documentation OCAIndustrieProduction

Partager

Fiches connexes

Équipe au travail sur des ordinateurs portables autour d'une table
Le module OCA `account_invoice_en16931` (dépôt `fr-einvoicing`, version 18.0.1.0.0, licence AGPL-3) est le socle qui fabrique le fichier de facture électronique conforme à la norme européenne **EN 16931** : Factur-X (PDF/A-3 avec XML CII embarqué), XML UBL, XML CII ou PDF accompagné d'un UBL — et il ajoute des **contrôles bloquants à la validation** d'une facture client. Les quatre modules qui s'y greffent pour la France, et ce que le socle ne fait pas.
Lire la suite
Documentation OCA, Facturation électronique
Réunion d'approbation autour d'un document de travail
Relevé sur une instance Odoo 18 Community, le module OCA `base_tier_validation` (dépôt `server-ux`, version 18.0.3.5.1, licence AGPL-3) ajoute 1 modèle, 101 champs et 3 menus, mais ne s'active sur aucun document métier par lui-même : il lui faut un module d'implémentation. C'est le point qui surprend le plus — voici ce qu'il fait réellement, et comment le mettre en service.
Lire la suite
Documentation OCA, Odoo