Repository
OCA/manufacture · module folder · Try on Runboat
Module version
1.1.0
Category
Manufacturing
Folder size
0.06 MB
License
AGPL-3
Application
No
Auto-installable
No
Website
https://github.com/OCA/manufacture
Last tracking update
2026-08-07 08:22:59
Authors
Odoo Community Association (OCA), ForgeFlow
Maintainers
Odoo Community Association (OCA), ForgeFlow
Committers
Weblate, OCA-git-bot, oca-ci, Andreu Orensanz
Odoo dependencies
Python dependencies
None
System dependencies
None
Required by
None
Description
This module allows you to replace or remove a component in several bills
of materials at once.

When a component must be changed, the wizard shows the bills of
materials where it is used (excluding, when replacing, those that already
contain the new component to avoid duplicated lines), lets the user
select the ones to update, and then either removes the component or
replaces it with another product (setting the new quantity) in a single
step.

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
mrp_bom_component_mass_change_view_form mrp.bom.component.mass.change.form - mrp_bom_component_mass_change mrp.bom.component.mass.change form New
mrp_bom_form_view mrp.bom.form - mrp_bom_component_mass_change mrp.bom form Inherits mrp.mrp_bom_form_view
HTTP endpoints (0)

No HTTP endpoints found for this module.

Models touched (2)

New fields (6)
  • bom_ids Many2many → mrp.bom
    compute='_compute_bom_ids' readonly=False store=True string='Bills of Materials' args: 'mrp.bom'
  • change_type Selection
    default='replace' required=True args: [('replace', 'Replace'), ('remove', 'Remove')]
  • component_id Many2one → product.product
    required=True string='Component to Change' args: 'product.product'
  • component_locked Boolean
    default=False
  • new_component_id Many2one → product.product
    string='New Component' args: 'product.product'
  • new_product_qty Float
    default=1.0 digits='Product Unit of Measure' string='New Quantity'
Public methods (2)
  • action_apply(self)
  • default_get(self, fields_list)
    @api.model

New fields (1)
  • component_in_multiple_boms Boolean
    compute='_compute_component_in_multiple_boms'
Public methods (1)
  • action_bom_component_mass_change(self)