MES 和 ERP 的分工,用一句话判断:按天和金额管的归 ERP,按分钟和实物管的归 MES。计划层、财务层、采购层在 ERP;执行层、设备层、工序层在 MES。
划分依据:时间尺度与对象粒度
| 维度 | ERP | MES |
|---|---|---|
| 时间尺度 | 天、周、月 | 分钟、秒 |
| 对象粒度 | 工单、批次、物料大类 | 单板、单卷料、单工位 |
| 主要问题 | 做多少、成本多少、什么时候交 | 现在做到哪、用了什么、谁做的 |
| 数据来源 | 人录入与单据流转 | 扫码、设备采集、工位终端 |
两者都管工单,但管的是不同侧面:ERP 的工单是计划单位与成本归集对象,MES 的工单是执行单位,负责拆到工序、机台、人员。
冲突最多的三处
工单号
ERP 生成工单号,MES 沿用还是自建?建议沿用,并允许 MES 在生产中拆分子工单(分批投产、跨班次),用「ERP 工单号 + 子批号」表达。两边各自生成工单号,事后对账一定对不上。
库存口径
ERP 的库存是账面库存,按出入库单据变动;MES 的库存是线边实物,按扫码变动。两者天然有差异,差异来源是:
- 已发料到线边但未上机(ERP 已扣账,MES 未消耗)
- 上机后报废但未退库
- 尾数盘点的时点不同
处理方式是明确线边库归属:线边库由 MES 管,ERP 只看到「已发料」这一个状态,不做线边明细。要合并看总量时,用 MES 的线边数据回写 ERP 的线边仓。
BOM 版本
ERP 的 BOM 是工程 BOM 与成本 BOM,MES 用的是制造 BOM(含替代料、站位、面别)。替代关系通常只在 MES 维护,因为它是执行层的判断,且随工单变化。
风险点:ERP 改了 BOM 版本,MES 不知道,产线还在按旧版本上料。必须有一个版本同步动作,且要在 MES 侧留「本次生产用的是哪个 BOM 版本」的记录。
四个常规对接点
- 工单下发:ERP → MES,含工单号、料号、数量、交期
- 物料主数据:ERP → MES,料号、名称、单位、批次规则
- 完工回报:MES → ERP,良品数、不良数、工时、物料消耗
- 库存变动:MES → ERP,线边消耗与退料
这四项之外的需求,先问「这个数据在哪个时间尺度上变化」,答案会指向归属方。
只上 ERP 不上 MES 会怎样
常见的结果是:ERP 里的工单状态只能靠人工在班后录入,等于把执行层的数据往后推了一个班次。报工不准、在制品数量不清、追溯只能到批次级——这三件事 ERP 本身解决不了,因为它没有工序级的采集点。
反过来,只上 MES 不上 ERP,计划与成本仍然靠 Excel,MES 变成孤岛。两边都要有,接口不必多,四个够用。
常见问题
常见问题
- MES 能不能代替 ERP?
- 不能。MES 没有财务、采购、销售与成本核算能力,也不处理计划层的产能平衡。两者覆盖的时间尺度不同,替代关系不成立。
- 工单号应该谁来生成?
- 由 ERP 生成,MES 沿用并允许拆分子批。两边各自编号会导致完工回报时无法一一对应,对账成本很高。
- 线边库存算谁的?
- 建议归 MES 管明细,ERP 只看「已发料」状态。若两边都维护线边明细,盘点差异会长期存在,且难以定责。
- 对接需要几个接口?
- 常规四个:工单下发、物料主数据、完工回报、库存变动。接口数量不是关键,关键是字段口径与更新时间点要写进对接文档。