← 制造业系统 / 系统拆解

MES 中一张工单的完整生命周期

沿着一张风机工单,拆解 MES 的接单、准备、派工、开工、过站、报工、质量挂起、返工和完工,区分工单与单件状态,用动态图记录 ERP、WMS 和质量系统的交接,并给出异常恢复、追溯与 Agent 接入的验收范围。

上一篇 ERP 专题里,MO-0160 要生产 160 台新配置风机。ERP 可以安排数量、物料与日期,到了车间,还要回答另一组问题:哪台已经开工,当前在哪道工序,谁用了哪批支架,异常发生后还能不能继续。

这一篇沿着这张工单进入 MES(制造执行系统)。工单、工序和单件产品分别留下记录,返工和消息重传也纳入同一条链路。案例继续采用模拟的 A 工厂离散装配场景,单号、数量与流程均为教学设定,不代表某家工厂或某个产品的固定实现。

工单下面还有工序任务和单件产品

先确定每条状态属于谁

ERP 的 MO-0160 可以在 MES 中对应多个执行任务。车间可能按班次、产线或批次分派,也可能让同一工单里的产品停留在不同工序。只给整张工单一个“生产中”,无法说明 160 台产品各自的进度。

本例在开工前分配序列号 SN001201 至 SN001360,按单件跟踪。旧配置 40 台仍属于 MO-0040,不混入这张工单的数量和版本。生产批次、子批及载具可以另外关联,不拿它们替代单件身份。

对象本例中的记录状态回答的问题
ERP 生产订单MO-0160,160 台经营侧允许生产什么,数量和版本是什么
MES 执行工单关联 MO-0160 的现场执行安排接收、准备、派工和执行是否具备条件
工序任务备料确认、装配、终检等任务当前任务是否可开工,谁在执行,完成了多少
单件执行对象每台风机的序列号及执行身份当前工序、在制位置、挂起与最终结果
异常与返工任务缺陷、处置、返工路线和再检哪些产品受影响,允许怎样处理
执行事件开工、用料、测量、完工等记录何时、何人、在什么上下文中做了什么

不同产品对单件执行对象的命名不同。SAP Digital Manufacturing 使用 SFC 等对象组织现场执行,其状态说明区分排队、执行、挂起、完成和报废等状态。本篇使用自己的参考状态,不逐项复制厂商枚举;批次制造也需要另外定义数量、拆分和合并的规则。

工单状态通常需要结合下属任务、单件结果和人工动作计算,具体规则由系统与企业确定。不能用“某个工序完成”覆盖整张工单,也不能因为最后一台开工,就把前面已经完工的单件重新标为执行中。

给工单绑定一份可还原的执行依据

这张工单采用前文批准的新配置:产品 FAN-100 / B、A 工厂制造 BOM 04、装配工序 OP-030 / 3 和作业指导书 WI-030 / E。MES 接收时应核对目标工厂、物料、路线、工序与文件的映射,保存适用版本的引用或受控快照。

MES 后面再收到一份更新的路线,也不能直接改写已经开工产品的依据。需要先确定影响范围和切换规则:哪些单件尚未开工,哪些已经过站,哪些只能走批准的返工或变更流程。历史查询仍要能够找回当时采用的版本。

MES 可能自带排程、质量、仓储等能力,也可能与 APS、QMS、WMS 配合。本文按业务责任拆解,具体功能可以由同一产品里的模块承接。数据负责人、状态维护方和动作权限仍需逐项约定。

从接单到过站要经过哪些检查

接收到工单以后先确认准备情况

MES 收到 ERP 下达消息时,可以先登记消息身份,再检查引用对象是否完整。BOM、路线或物料映射缺失,应记录具体阻断项,不能把“消息已接收”直接显示成“现场可开工”。

准备检查至少覆盖适用文件、物料可领与到位情况、人员资格、设备或工装可用性,以及未解除的质量限制。每项检查要有来源和时点。有些条件在派工时成立,到开工时已经变化,因此实际开工还要复核。

沿用 ERP 篇的备料条件,160 件新支架收货后,先有 140 件质量放行,另 20 件待检。假设本例批准首批 140 台先生产,MES 只对这批产品安排开工;剩余 20 台保持待准备,直到所需物料获准可领。整张工单的计划数量仍为 160。

派工把任务交给资源,开工形成执行事实

派工记录任务、优先级、工位和计划资源。操作员实际开工时,再确认单件身份、任务、人员与当前工位。设备状态、资格或物料条件不满足时,返回明确原因,而不只是一个无解释的“开工失败”。

Microsoft 的生产现场执行界面说明将任务启动、进度报告和任务状态分别处理,说明执行数量可以分次报告。本文据此区分这些动作,不假定所有 MES 都采用相同按钮或状态名。

一次过站应关联单件、工序实例、执行轮次、适用路线、资源、操作者和结果。记录必要的用料批次、测量数据及文件依据后,系统再按已配置条件判断是否允许完成该工序、进入下一工序。

例如终检任务 OP-050 不应只收到一个“PASS”字符串。至少要知道它属于哪台产品、哪次检测、采用什么检验要求、原始结果保存在哪里,以及结果是否经过规定的校验与授权。

单件执行与异常恢复独立窗口查看 ↗
本图表示一台产品的参考执行状态,工单进度由单件与任务结果汇总。执行中包含逐道工序,图中仅展开暂停、返工、报废及投产前撤销;其他处置按企业规则补充。点击节点或连线查看细节,动画不表示真实系统状态或必然执行时序。

暂停以后保留工序和在制位置

设备故障、换班或缺少后续物料,都可能让一项任务暂停。暂停应结束或暂停相应的计时区间,保留当前工序、在制位置、已完成动作和剩余工作。恢复时再检查条件,继续原任务或转入明确批准的新安排。

人员工时、设备运行时长和产品在制停留时间需要分别记录。一名操作员同时照看两项任务时,不能给两张工单各计一份完整的出勤时间;需要明确分配口径。设备运行信号也要关联工序与产品上下文,才能用于解释执行过程。

工序暂停与质量挂起的原因、权限不同。暂停的任务可能允许班组恢复,质量挂起通常需要对应处置和放行依据。不能因为设备恢复运行,就一并解除产品上的质量限制。

两台返工产品怎样回到合格数量

先保留不合格记录,再决定怎么处理

假设首批 140 台完成首轮终检,其中 138 台合格,2 台不合格。另 20 台尚未开工,仍在等待物料。此时工单上的单件结果可以分别列为:

时点已合格的不同单件质量挂起尚未开工合计
首批终检后138220160
后续 20 台完成首轮终检15820160
两台返工再检合格16000160

表中类别在每个时点互不重叠,合格指满足本例 MES 放行条件,尚不代表仓库收货或客户交付。实际报表还要列出其他在制状态,不能套用这三个类别覆盖所有工厂。

两台异常产品为 SN001245 和 SN001246。质量记录关联终检结果与缺陷,处置评审确认存在支架装配损伤,批准每台更换一件支架并重新检测。两件新支架另行获得供给与领用批准,原先的 160 件基础领料记录保留。

因此,最终仍是 160 台合格风机,支架净耗用为 162 件。损坏的是两件部件,不能把这次处置再记成两台整机报废。这个数量与 ERP 篇的成本例子保持一致;多出的人工时间仍需逐条工时记录解释,不能全部归到这两次返工。

返工有自己的路线、轮次和回归条件

返工任务应写清受影响的单件、处置依据、允许执行的动作、适用文件,以及完成后回到哪里再检。本例用返工任务 RW-0021 关联两台产品,各自保存拆换与再检记录。

SAP 的不合格路线配置说明区分原路线内的返工循环和独立处置路线。具体选哪一种,需要结合产品与工艺;不能把“退回上一工序”作为所有异常的默认恢复办法。

重新检测不合格时,保留新的轮次和结果,再进入相应挂起与处置。需要报废整机时,另走批准的整机处置与实物核对流程。让步接收、更改用途或其他处置,也应有明确权限和范围,不能由操作员或 Agent 随意选一个“通过”。

挂起与解除本身也要有记录。SAP 的挂起与解除说明要求分别记录相关原因。本文进一步把处置批准、返工完成和再检结果作为本例解除限制的依据,避免一条解除消息丢掉整个过程。

返工过站不增加不同产品的产量

到第二个时点,160 台都已经过首轮终检,158 台首次合格,首轮合格率为 158 ÷ 160=98.75%。两台再检合格以后,最终合格的不同单件数为 160;终检执行记录共有 162 次。

162 次检测可以说明工作量,不能当作 162 台产量。报表需要明确统计的是工序通过次数、去重后的最终合格单件,还是截至某时点的在制数量。返工路线中的再检还要区分首次通过与最终通过,保留原始失败记录。

追溯时,从任一产品可以找到原装支架批次、拆除记录、替换支架批次、操作工序和检测结果。SAP 的 SFC Report 说明列出了生产日志、装配与消耗、部件移除、不合格及数据采集等查询内容。这些是产品能力示例,项目仍要核实实际启用和保存了哪些字段。

MES 完工以后怎样与其他系统核对

订单、配送和质量处置分别交接

ERP 下达生产订单及适用数据,MES 回传开工、数量、材料和资源等约定的执行结果。WMS 提供备料、配送和收货等仓储记录,MES 核验到位物料并登记实际投入。质量岗位在 QMS 或已有质量模块中处理处置权限,MES 执行批准的路线并记录结果。

MES 与其他系统的业务交接独立窗口查看 ↗
三行分别展开订单回传、备料与实际用料、质量处置与返工再检,使用同一订单及单件上下文。每行是一个交接视角,未绘出所有反向回执和异常路径。点击节点与连线可查看关系,动画只表达已绘制的流向。

Microsoft 的第三方 MES 集成说明分别列出了开工、产出与报废、材料耗用、工序时间和结束订单等集成过程,并提供消息处理状态。本文用它核对交接范围,以下事件结构则是概念契约,不对应该产品的 API。

仓库配送到位与现场实际投入需要分别留证。产品执行完成、WMS 成品收货、ERP 事务过账和订单成本结算也有各自状态。某个下游接口失败时,MES 已发生的装配与检测事实仍然存在,需要显示待同步或差异情况,而不把产品退回一个虚假的“尚未生产”。

用事件身份和预期状态处理重试与乱序

下面表示 SN001245 的第二次终检通过。身份、版本、测量引用和时间均为模拟值:

{
  "source_system": "MES_A",
  "event_id": "EVT-TEST-00452",
  "event_type": "operation_completed",
  "plant": "A",
  "erp_production_order": "MO-0160",
  "serial_number": "SN001245",
  "operation": "OP-050",
  "operation_instance": "TEST-1245-02",
  "attempt": 2,
  "rework_order": "RW-0021",
  "expected_unit_version": 9,
  "route_revision": "R04",
  "result": "PASS",
  "quantity": 1,
  "unit": "EA",
  "measurement_record": "MEAS-0452",
  "occurred_at": "2026-10-14T14:20:00+08:00"
}

本例额外设定执行路线版本为 R04,它与前文装配工序版本 OP-030 / 3 共同组成受控依据,两者编号没有隐含的大小关系。expected_unit_version 是对单件业务状态的预期版本,用于发现并发修改,不表示路线或文件版本。

事件被接受后,MES 还要根据所有必需工序、未结异常和放行权限,判断单件能否成为最终合格。一次工序通过不能无条件转换成一次成品入库,也不能在每次返工再检时都向 ERP 多报一台新增产出。

同一来源、同一事件身份和相同内容重传时,应返回已有处理结果。相同身份携带不同内容时,报告冲突。迟到的旧状态消息不能覆盖较新的单件状态;如果消息表示已经发生的实物动作,应保留原事件进入核对,而不直接丢弃记录。

接收方可以按约定的对象序列、依赖事件或预期版本处理顺序。网络先收到“完成”、后收到“开工”时,应能够识别依赖缺失并等待补齐或进入差异处理,不能把消息到达顺序自动当作真实发生顺序。更正数量或撤回误报也应关联原事件与批准依据。

断网、重复扫码和工单变更都要有恢复规则

断网时是否允许继续作业,需要按具体工序和企业规则确定。允许离线的动作应限定有效的缓存定义和授权范围,保存本地事件身份、发生时间及资源上下文,恢复连接后逐条对账。依赖实时资格、质量限制或版本校验的动作,缺少必要证据时不能自行视为通过。

重复扫码要区分重复提交与新的执行轮次。相同的单件和工序,在返工之后可能合法地再次出现;用“序列号+工序”永久去重,会吞掉真实返工。反过来,为每次网络重试都生成新业务事件,又会重复报工。

工单数量调整、暂停范围扩大或撤销时,要核对已开工和未开工产品。已经发生的用料、测量、返工和实物移动按业务流程处理,不能只把 ERP 数量调小,再从 MES 删除多出来的历史。

现场验收与 Agent 查询怎样落到记录

验收要同时检查产品、任务和接口状态

可以选一台直接通过的产品,以及本例两台返工产品,从工单接收一直查到放行、仓储交接和 ERP 处理结果。抽查旧配置 MO-0040 时,还应能还原它原来的工艺文件,不被新工单采用的定义覆盖。

验收情形应当保留的结果与证据
工单接收成功但缺少路线或映射显示准备阻断和缺失对象,不允许直接开工
首批只具备 140 台备料条件限定派工与开工范围,剩余 20 台仍可识别
人员资格、设备状态或质量限制变化开工或恢复时重新校验,记录具体结果
任务暂停后换班恢复保留原工序与在制位置,分开各段人员和资源时间
两台不合格产品返工再检原失败记录不丢失,返工与再检有独立轮次
终检共执行 162 次最终合格的不同产品仍为 160 台,首次合格率可还原
两件损坏支架被替换谱系包含原件拆除和替换件投入,不虚增整机报废
重复事件、迟到消息或内容冲突不重复报工,不覆盖新状态,能查到待处理差异
MES 完成而 ERP 回传失败保留执行事实和待同步状态,按原事件恢复
部分系统无响应明确未知范围,不当作零在制或全部完成

不要只按一个工单状态验收。按单件数量核对当前分布,再按工序任务核对执行结果,最后核对跨系统事件与目标事务。这样能发现工单看起来已完成,实际仍有单件挂起或一批结果未被下游接受的情况。

Agent 可以先整理在制位置和阻断原因

一个实用的问题是:“MO-0160 剩下的产品在哪里,为什么还没有全部交给仓库?”

Agent 需要读取工单与单件清单、当前工序、挂起原因、返工任务、物料条件、资源状态和接口回执。结论附上来源系统、对象身份、业务发生时间、读取时间及适用版本。对暂停或挂起,还应指出下一步允许由哪个岗位处理。

可以先让 Agent 生成班次交接摘要、在制分布、返工证据清单或跨系统差异说明。涉及人员信息和质量证据的查询,要按对象权限返回;读取不到的记录标明缺失,不靠其他字段猜出一份完整结果。

派工、补报、更改路线、解除挂起、批准报废和回写 ERP 各有前置条件与权限。Agent 提出建议后,执行工具仍需检查最新状态,并保存实际执行人与目标记录。不能因为一段解释合理,就跳过业务系统的控制。

MES 篇先记录到这里。下一篇进入 WMS,继续看支架从收货、待检、上架到备料、配送、退料的库存变化,以及“在库”和“可领”怎样落在批次与库位上。完整选题保留在制造业研究目录,系统关系可以回到数据地图查看。