MRP Properties on Sale Order Lines

mrp_property
REPOSITORY
REPOSITORYOCA/manufacture
GIT
GIThttps://github.com/OCA/manufacture.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/manufacture/tree/10.0/mrp_property
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYManufacturing
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Odoo S.A., Opener B.V.
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Odoo S.A., Opener B.V.
COMMITTERS
COMMITTERSStefan Rijnhart, oca-travis, OCA-git-bot
WEBSITE
WEBSITEhttps://github.com/oca/manufacture
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:19:58
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - sale_mrp
    - mrp
    - product
    - base
    - decimal_precision
    - mail
    - base_setup
    - web_kanban
    - web
    - bus
    - web_tour
    - report
    - stock
    - procurement
    - barcodes
    - web_planner
    - resource
    - sale_stock
    - sale
    - sales_team
    - account
    - analytic
    - stock_account
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
mrp_bom_form_view mrp.bom xpath Inherits mrp.mrp_bom_form_view
mrp_property_group_tree_view mrp.property.group tree New
mrp_property_tree_view mrp.property tree New
procurement_form_view procurement.order field Inherits procurement.procurement_form_view
view_mrp_property_search mrp.property.search mrp.property search New
view_order_form_inherit_sale_mrp sale.order xpath Inherits sale.view_order_form
Models touched (6)

New fields (1)
  • property_ids Many2many → mrp.property
    help='If a production product is manufactured for a sale order, the BoM that has the same properties as the sale order line will be selected (a BoM with no properties at all could be selected as a fallback.' string='Properties' args: 'mrp.property', 'mrp_bom_mrp_property_rel', 'mrp_bom_id', 'mrp_property_id'
Public methods (1)
  • search(self, args, offset=0, limit=None, order=None, count=False)
    @api.model
    If limit is set to 1 and property_ids is set in the context, search a BoM which has all properties specified, or if you can not find one, you return a BoM without any properties with the lowest sequence.

New fields (3)
  • description Text
  • group_id Many2one → mrp.property.group
    required=True args: 'mrp.property.group', 'Property Group'
  • name Char
    required=True
Public methods (1)
  • unlink(self)
    @api.multi
    Restrict the removal of properties that are in use

New fields (2)
  • description Text
  • name Char
    required=True
Public methods (0)

No public methods.

New fields (1)
  • property_ids Many2many → mrp.property
    help='The BoM that has the same properties as this procurement will be selected unless there is a BoM with no properties at all.' string='Properties' args: 'mrp.property', 'procurement_property_rel', 'procurement_id', 'property_id'
Public methods (0)

No public methods.

New fields (1)
  • property_ids Many2many → mrp.property
    help='If a production product is manufactured for this sale order, the BoM that has the same properties as the sale order line will be selected (a BoM with no properties at all could be selected as a fallback' readonly=True states={'draft': [('readonly', False)], 'sent': [('readonly', False)]} args: 'mrp.property', 'sale_order_line_property_rel', 'order_id', 'property_id', 'Properties'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • action_explode(self)
    @api.multi
    Pass the properties from the procurement in the context for the selection of the right BoM