diff --git a/sf_manufacturing/models/mrp_workorder.py b/sf_manufacturing/models/mrp_workorder.py
index 25436081..62a63f72 100644
--- a/sf_manufacturing/models/mrp_workorder.py
+++ b/sf_manufacturing/models/mrp_workorder.py
@@ -735,7 +735,15 @@ class ResMrpWorkOrder(models.Model):
def button_start(self):
if self.routing_type == '装夹预调' and self.production_id.move_raw_ids[0].move_line_ids[0].lot_id.name:
self.pro_code = self.production_id.move_raw_ids[0].move_line_ids[0].lot_id.name
-
+ if self.routing_type == '装夹预调':
+ if not self.cnc_ids:
+ raise UserError(_('该制造订单还未下发CNC程序,请稍后再试'))
+ else:
+ for item in self.cnc_ids:
+ functional_cutting_tool = self.env['sf.functional.cutting.tool.entity'].search(
+ [('tool_name_id.name', '=', item.cutting_tool_name)])
+ if not functional_cutting_tool:
+ raise UserError(_('该制造订单的CNC程序为%s没有对应的功能刀具%s' % item.cutting_tool_name))
if self.routing_type == '解除装夹':
'''
记录开始时间
diff --git a/sf_manufacturing/views/mrp_workorder_view.xml b/sf_manufacturing/views/mrp_workorder_view.xml
index 22228ea7..843a9c53 100644
--- a/sf_manufacturing/views/mrp_workorder_view.xml
+++ b/sf_manufacturing/views/mrp_workorder_view.xml
@@ -125,7 +125,7 @@
attrs="{'invisible': ['|', '|', '|', ('production_state','in', ('draft', 'done', 'cancel')), ('working_state', '=', 'blocked'), ('state', 'in', ('done', 'cancel')), ('is_user_working', '!=', False)]}"/>
-