TIP: You can type at any time to perform a new search.
MRP Production Request
mrp_production_request · OCA/manufacture
Security findings
Migration considerations
mrp.production.request.assigned_to— Field 'assigned_to' on 'mrp.production.request' uses the deprecated `track_visibility` kwarg: renamed to `tracking` in Odoo 13.0. migration-track-visibilitymrp.production.request.product_id— Field 'product_id' on 'mrp.production.request' uses the deprecated `track_visibility` kwarg: renamed to `tracking` in Odoo 13.0. migration-track-visibilitymrp.production.request.product_qty— Field 'product_qty' on 'mrp.production.request' uses the deprecated `track_visibility` kwarg: renamed to `tracking` in Odoo 13.0. migration-track-visibilitymrp.production.request.requested_by— Field 'requested_by' on 'mrp.production.request' uses the deprecated `track_visibility` kwarg: renamed to `tracking` in Odoo 13.0. migration-track-visibilitymrp.production.request.state— Field 'state' on 'mrp.production.request' uses the deprecated `track_visibility` kwarg: renamed to `tracking` in Odoo 13.0. migration-track-visibilityview_mrp_production_request_form— For a target of Odoo 17.0+: view 'view_mrp_production_request_form' uses `attrs=`/`states=`, which are no longer supported. Convert modifiers to direct Python boolean expressions in `invisible`/`readonly`/`required`; preserve the original AND/OR logic. migration-view-attrs-states · sourceview_mrp_production_request_tree— View 'view_mrp_production_request_tree' is defined with a `<tree>` root tag: renamed to `<list>` in Odoo 18.0. migration-view-tree-tag · source
Migration review checklist, not a compatibility verdict. No target version is selected: apply version-specific advice only when migrating to that version or later.
- Repository
- OCA/manufacture · module folder · Try on Runboat
- Module version
- 1.0.2
- Category
- Manufacturing
- Folder size
- 2.13 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/manufacture
- Last tracking update
- 2026-10-01 12:45:11
- Authors
- Odoo Community Association (OCA), ForgeFlow
- Maintainers
- Odoo Community Association (OCA), ForgeFlow
- Committers
- Pedro M. Baeza, mreficent, Lois Rilo, Yann Papouin, Weblate, OCA Transbot, OCA-git-bot, oca-travis, Chandresh Thakkar
- Odoo dependencies
- Python dependencies
- None
- System dependencies
- None
- Required by
- None
- Description
Code Analysis
Views touched (6)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
mrp_production_form_view |
mrp.production.form - mrp_production_request | mrp.production | form | Inherits mrp.mrp_production_form_view |
mrp_production_request_create_mo_view |
mrp.production.request.create.mo.form | mrp.production.request.create.mo | form | New |
view_mrp_production_request_form |
mrp.production.request.form | mrp.production.request | form | New |
view_mrp_production_request_search |
mrp.production.request.search | mrp.production.request | search | New |
view_mrp_production_request_tree |
mrp.production.request.tree | mrp.production.request | tree | New |
view_template_property_form |
product.template.form - mrp_production_request | product.template | form | Inherits stock.view_template_property_form |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (8)
New fields (1)
-
mrp_production_request_idMany2one → mrp.production.requestcomodel_name='mrp.production.request'copy=Falsereadonly=Truestring='Manufacturing Request'
No public methods.
New fields (28)
-
assigned_toMany2one → res.userscomodel_name='res.users'domain=<expr>readonly=Truestates={'draft': [('readonly', False)]}string='Approver'track_visibility='onchange' -
bom_idMany2one → mrp.bomcomodel_name='mrp.bom'readonly=Truerequired=Truestates={'draft': [('readonly', False)]}string='Bill of Materials' -
category_uom_idMany2onerelated='product_uom_id.category_id' -
company_idMany2one → res.companycomodel_name='res.company'default=<expr>required=Truestring='Company' -
date_planned_finishedDatetimecopy=Falsedefault=fields.Datetime.nowindex=Truestates={'confirmed': [('readonly', False)]} args: 'Deadline End' -
date_planned_startDatetimecopy=Falsedefault=fields.Datetime.nowindex=Truerequired=Truestates={'confirmed': [('readonly', False)]} args: 'Deadline Start' -
descriptionTextargs: 'Description' -
done_qtyFloatcompute='_compute_manufactured_qty'digits='Product Unit of Measure'help='Sum of the quantities in all done Manufacturing Orders.'readonly=Truestore=Truestring='Quantity Done' -
location_dest_idMany2one → stock.locationcomodel_name='stock.location'default=<expr>readonly=Truerequired=Truestates={'draft': [('readonly', False)]}string='Finished Products Location' -
location_src_idMany2one → stock.locationcomodel_name='stock.location'default=<expr>readonly=Truerequired=Truestates={'draft': [('readonly', False)]}string='Raw Materials Location' -
manufactured_qtyFloatcompute='_compute_manufactured_qty'digits='Product Unit of Measure'help='Sum of the quantities in Manufacturing Orders (in any state).'readonly=Truestore=Truestring='Quantity in Manufacturing Orders' -
move_dest_idsOne2many → stock.movecomodel_name='stock.move'inverse_name='created_mrp_production_request_id'string='Stock Movements of Produced Goods' -
mrp_production_countIntegercompute='_compute_mrp_production_count'string="MO's Count" -
mrp_production_idsOne2many → mrp.productioncomodel_name='mrp.production'inverse_name='mrp_production_request_id'readonly=Truestring='Manufacturing Orders' -
nameChardefault='/'readonly=Truerequired=Truestates={'draft': [('readonly', False)]} -
orderpoint_idMany2one → stock.warehouse.orderpointcomodel_name='stock.warehouse.orderpoint'string='Orderpoint' -
originCharreadonly=Truestates={'draft': [('readonly', False)]}string='Source Document' -
pending_qtyFloatcompute='_compute_manufactured_qty'digits='Product Unit of Measure'help='Quantity pending to add to Manufacturing Orders to fulfill the Manufacturing Request requirement.'readonly=Truestore=Truestring='Pending Quantity' -
picking_type_idMany2one → stock.picking.typecomodel_name='stock.picking.type'default=<expr>readonly=Truerequired=Truestates={'draft': [('readonly', False)]}string='Picking Type' -
procurement_group_idMany2one → procurement.groupcomodel_name='procurement.group'copy=Falsestring='Procurement Group' -
product_idMany2one → product.productcomodel_name='product.product'domain=[('type', 'in', ['product', 'consu'])]readonly=Truerequired=Truestates={'draft': [('readonly', False)]}string='Product'track_visibility='onchange' -
product_qtyFloatdefault=1.0digits='Product Unit of Measure'readonly=Truerequired=Truestates={'draft': [('readonly', False)]}string='Required Quantity'track_visibility='onchange' -
product_tmpl_idMany2one → product.templatecomodel_name='product.template'related='product_id.product_tmpl_id'string='Product Template' -
product_uom_idMany2one → uom.uomcomodel_name='uom.uom'domain="[('category_id', '=', category_uom_id)]"readonly=Truestates={'draft': [('readonly', False)]}string='Unit of Measure' -
propagateBooleanhelp='If checked, when the previous move of the move (which was generated by a next procurement) is cancelled or split, the move generated by this move will too' args: 'Propagate cancel and split' -
requested_byMany2one → res.userscomodel_name='res.users'default=<expr>readonly=Truerequired=Truestates={'draft': [('readonly', False)]}string='Requested by'track_visibility='onchange' -
routing_idMany2one → mrp.routingcomodel_name='mrp.routing'help='The list of operations (list of work centers) to produce the finished product. The routing is mainly used to compute work center costs during operations and to plan future loads on work centers based on production plannification.'on_delete='setnull'readonly=Truestates={'draft': [('readonly', False)]}string='Routing' -
stateSelectioncopy=Falsedefault='draft'index=Truerequired=Trueselection=[('draft', 'Draft'), ('to_approve', 'To Be Approved'), ('approved', 'Approved'), ('done', 'Done'), ('cancel', 'Cancelled')]track_visibility='onchange'
-
action_view_mrp_productions(self) -
button_approved(self) -
button_cancel(self) -
button_done(self) -
button_draft(self) -
button_to_approve(self) -
create(self, vals)@api.modelAdd sequence if name is not defined and subscribe to the thread the user assigned to the request. -
write(self, vals)
New fields (8)
-
bom_idMany2onereadonly=Truerelated='mrp_production_request_id.bom_id' -
date_planned_finishedDatetimerequired=Truestring='Deadline End' -
date_planned_startDatetimerequired=Truestring='Deadline Start' -
mo_qtyFloatdigits='Product Unit of Measure'string='Quantity' -
mrp_production_request_idMany2one → mrp.production.requestcomodel_name='mrp.production.request'readonly=True -
pending_qtyFloatdigits='Product Unit of Measure'related='mrp_production_request_id.pending_qty' -
product_line_idsOne2many → mrp.production.request.create.mo.linecomodel_name='mrp.production.request.create.mo.line'inverse_name='mrp_production_request_create_mo_id'readonly=Truestring='Products needed' -
product_uom_idMany2onerelated='mrp_production_request_id.product_uom_id'
-
compute_product_line_ids(self) -
create_mo(self) -
default_get(self, fields)@api.model
New fields (7)
-
available_qtyFloatcompute='_compute_available_qty'digits='Product Unit of Measure'string='Quantity Available' -
bottle_neck_factorFloatcompute='_compute_bottle_neck_factor' -
location_idMany2one → stock.locationcomodel_name='stock.location'required=True -
mrp_production_request_create_mo_idMany2one → mrp.production.request.create.mocomodel_name='mrp.production.request.create.mo' -
product_idMany2one → product.productcomodel_name='product.product'required=Truestring='Product' -
product_qtyFloatdigits='Product Unit of Measure'required=Truestring='Quantity Required' -
product_uom_idMany2one → uom.uomcomodel_name='uom.uom'required=Truestring='UoM'
No public methods.
New fields (1)
-
mrp_production_requestBooleanhelp='Check this box to generate manufacturing request instead of generating manufacturing orders from procurement.'string='Manufacturing Request'
No public methods.
New fields (1)
-
created_mrp_production_request_idMany2one → mrp.production.requestcomodel_name='mrp.production.request'string='Created Production Request'
-
create(self, vals)@api.model
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
Loading…
Loading…
Loading…
Loading…
Loading…
- Status
- Open migration PR — not merged yet for this version
- CI status
- green — ready to merge
- Open since
- 466 days ago
- Last activity
- 114 days ago
- Repository
- OCA/manufacture
- Pull request
- [18.0][MIG] mrp_production_request (#1552)