Option 1: Customization – Add Work Center-Specific Instructions
You can customize the mrp.routing.workcenter (aka Operation lines in Routing) model to include work center-specific instructions. Here's a high-level outline:
1. Add a One2many field on the operation to store multiple instructions:
class MrpRoutingWorkcenter(models.Model):
_inherit = 'mrp.routing.workcenter'
instruction_ids = fields.One2many(
'mrp.workcenter.instruction', 'routing_wc_id', string="Work Center Instructions")
Create a model for mrp.workcenter.instruction:
class MrpWorkcenterInstruction(models.Model):
_name = 'mrp.workcenter.instruction'
_description = 'Work Center Specific Instruction'
routing_wc_id = fields.Many2one('mrp.routing.workcenter', string="Routing Operation")
workcenter_id = fields.Many2one('mrp.workcenter', string="Work Center")
instruction = fields.Html(string="Instruction")
Update your views to allow editing instructions per work center.
Modify the work order UI or PDF report to show the correct instruction based on the work center.
Option 2: Duplicate Operation with Work Center-Specific Routing (Less dynamic)
-
Create two separate operations in the routing:
-
"Cutting - Machine A"
-
"Cutting - Machine B"
-
Assign the appropriate work center and instructions for each.
-
In the BoM, choose the correct routing depending on which machine is used.
This option is easy to implement but not as scalable if you have many overlapping operations.