制造质量检查

Odoo 质量检查为什么要插进制造步骤里:quality point、工单与失败去向讲透

质量不是完工后补一张单那么简单。Odoo 会把 quality point 直接挂到生产单和工单节点上,让放行、失败去向和后续处理发生在制造过程内部。

制造
进阶 开发者 1 分钟阅读
0 评论 0 点赞 0 收藏 6 阅读

先说结论

如果你把 Odoo 质量模块理解成“做完以后补一次抽检”,那你会完全看错它在制造里的定位。

quality_mrpquality_mrp_workorder 的源码看,Odoo 想做的是:

  • 在生产单级别插入质量检查
  • 在工序 / 工单级别继续插入更细的质量检查
  • 如果失败,直接改变成品去向或弹出失败向导

所以质量不是制造后的附件,而是制造步骤本身的一部分

两层嵌入:生产单级检查 + 工单级检查

制造质量检查至少有两层:

1. 生产单级

quality.check 上有 production_id,系统知道这次检查属于哪张 MO。

这带来两个直接结果:

  • 允许产品范围可从 production_id.move_finished_ids.product_id 推导
  • 失败时可以把成品 move 的目标库位改到 failure_location_id

2. 工单级

quality_mrp_workorder 里,quality point 还能跟 operation_id 关联。

这意味着检查不是笼统发生在“制造完工前”,而是能卡在某个具体步骤前后,比如:

  • 首件确认
  • 扭矩测量
  • 包装前外观放行

为什么“嵌入步骤”比“完工后补检”更重要

如果检查放在完工后,系统只能告诉你:

  • 这批东西做完了
  • 现在发现不合格

但如果把检查挂在工单步骤里,系统能更早介入:

  • 某道工序是否允许继续下一步
  • 当前失败是影响整个生产单,还是只影响某个产品 / move
  • 失败后成品要不要直接去 failure location

源码里 action_pass_and_next()action_fail_and_next()_next() 这些方法,就是在表达这种“检查完成后驱动后续动作”的过程控制语义。

failure location 为什么关键

很多团队做制造质检,只关心 Pass / Fail 两个按钮,却忽略了失败后的物流去向。

quality_mrp 里很明确:

  • 如果检查关联 production_id
  • 且质量状态为 fail
  • 系统可以通过 _move_to_failure_location_operation() / _move_to_failure_location_product() 把成品或指定产品 move 改送到失败库位

这件事很重要,因为它把质量与库存动作连起来了:

  • 不只是“记录不合格”
  • 而是直接决定库存下一步应该去哪

工单质量检查最容易被误解的地方

1. 以为 on-demand 可以随便挂到工序质量点

源码里有限制,某些频率和工序级质量点不能随意组合。

2. 以为质量检查只影响看板提醒

不是,失败可能改变 move 的目标位置,或阻断继续流程。

3. 以为 production 级和 workorder 级检查作用一样

不一样。一个更偏整张 MO 结果控制,一个更偏工序节点控制。

4. 以为质量警报和质量检查是同一个东西

不是。检查是过程节点,alert 是后续问题管理对象。

设计制造质检流程时,最该想清楚的 4 个问题

  1. 这道检查是针对整张 MO,还是针对某个 operation?
  2. 失败时要不要把成品或部分成品送去 failure location?
  3. 失败后只是记录,还是必须阻断下一步?
  4. 这道检查是在首件、每件、每批,还是特定条件下触发?

只有把这几个问题想清楚,quality point 才不是“多配几条规则”。

排错顺序

如果制造质量检查没有按预期出现或放行,按这个顺序查:

  1. quality point 是绑在 production 还是 operation
  2. 检查频率与 test type 是否和工序级限制冲突
  3. quality.check 是否正确生成并关联 production_id / workorder_id
  4. fail 时是否配置了 failure_location_id
  5. 失败弹窗、next check 与后续工单推进逻辑是否被自定义覆盖
  6. 再看 alert 流程和团队分派

一句话记忆法

Odoo 制造质检的重点不是“做个检查”,而是把质量决策插进制造步骤,并让失败结果直接影响库存去向和流程推进。

DISCUSSION

评论区

想参与讨论?先 登录 再发表评论。
还没有评论,你可以成为第一个留言的人。