客户 / 现场 / 开发统一视角

内部管理追溯工具为什么一路演进到 MGLA

旧 ERP 解决了“有账可查”,Yames 解决了“现场好操作”。最终答案不是二选一,而是把两边优点合起来:好操作,也能真追溯。

给客户

看懂我们为什么持续迭代,以及现在追溯为什么更可信。

给现场

看懂以前为什么麻烦,以后为什么可以扫更自然的对象。

给开发

看懂哪些是事实,哪些是操作,哪些只是给页面看的结果。

先说结论

我们不是推翻重来,而是一代一代补短板

每一代都解决了一个真实问题,也暴露了下一个问题。演进逻辑要这样看。

旧 ERP批次 / 库存流水
有账可查
Yames工单 / 工序流
现场更顺
MGLA操作友好 + 物理事实账
可信追溯
旧 ERP 强调“账”,Yames 强调“操作”。MGLA 要把两个优点合起来:现场按自然对象操作,底层按物料真实变化记账。
为什么要改

同一套系统,要回答三类很不一样的问题

如果底层只照顾其中一类,另外两类迟早会痛。

客户

要可信

这批货从哪里来?经过哪些工序?用了哪些原料?出问题时能不能缩小影响范围?

现场

要好用

我现在扫哪个码?能不能按箱、托、流转卡、工序在制品来操作?扫错了怎么改?

开发

要边界清楚

哪张表是真实事实?哪张只是操作记录?页面上的余额是存出来的,还是算出来的?

一个成熟的追溯模型,不能只让客户查得漂亮,也不能只让现场点得顺,更不能让开发靠猜。
第一代:旧 ERP

旧 ERP 不是一无是处,它解决的是“有账可查”

库存变化 + 生产跟踪适合简单库存和批次台账,它的问题是到了车间会变别扭。

优点

批次有身份

有批次二维码,有库存变化,有库位和余额;客户或仓库问某批料在哪里,系统至少有线索。

优点

库存能对账

入库、出库、移库、调整都能形成库存变化,管理上能看到数量结果。

优点

生产有跟踪

生产跟踪能记录工单、工序、报工等操作,让生产过程不是完全黑箱。

旧 ERP 的价值是:把“批次、库存、生产记录”先管起来。它不是错,而是只解决了追溯的一部分。
旧 ERP 的短板

现场为什么觉得麻烦:批次被迫承担太多角色

真正问题不是没有记录,而是物理事实和操作事实没有解耦。

物料身份

这是什么料、哪个批次。

现场操作入口

操作工要扫什么码、点什么动作。

批次二维码身份 / 入口 / 余额 / 追溯主线

库存余额

还剩多少、现在在哪里。

追溯主线

从哪里来、到哪里去。

现场拿在手里的可能是一箱、一托、一张流转卡、一个周转筐,不一定是“完整批次”。旧模型却要求大家绕回批次二维码。
旧 ERP 的典型痛点

不是现场不会操作,而是系统让大家用不自然的方式描述真实操作

这些都是一线每天会遇到、但很难说清楚原因的麻烦。

部分领用

一个批次 100 件,只领 37 件。要拆批、改数量、补标签,或者靠备注解释。

容器流转

现场搬的是箱、托、周转筐;系统入口却常常是批次码。

拆分合并

分装、拼箱、换标签,容易被迫做成库存变化。

报工追溯

有操作记录,但输入和输出之间的物理关系不够硬。

外协转换

千克发出、件数回来、损耗、补料,不适合只靠批次数量增减解释。

纠错冲销

扫错一次,改库存、改批次、改追溯链都让人紧张。

旧 ERP 的短板:账是有的,但操作不顺;记录是有的,但物料关系常常要反推。
第二代:Yames

Yames 为什么操作方便:它把入口放回了车间流程

它看到了旧 ERP 最大摩擦:现场不应该每一步都围绕库存批次二维码。

工单今天做什么
工序做到哪一步
在制品 / 流转工序间怎么走
方便在哪里

按流程操作

领料、转序、报工像电子流转卡一样推进,现场不需要每步先想库存批次。

方便在哪里

少绕一步

很多时候不用为了部分数量先拆批、补码、改批次。

方便在哪里

节拍更顺

系统更贴近车间语言:今天哪道工序、拉多少、报多少、转哪里。

Yames 的短板

Yames 为什么追溯弱:它主要证明“流程走过”,不能证明“料怎么变”

好操作不等于真追溯。追溯要的是物料输入输出关系,而不只是操作顺序。

缺口 1

没有硬的出入关系

很多动作像流程日志,不是严格的“一边减少、一边增加”。数量顺了,不代表来源被证明了。

缺口 2

物料关系靠推断

查追溯时常按工单、工序、时间、数量规则推断,而不是沿着独立事实边走。

缺口 3

异常更薄

拆分、合并、损耗、返工、外协转换,很容易只把当前状态修顺,没有留下强证据链。

Yames 的问题不是“不好用”。恰恰相反,它是因为太像操作流程,所以如果不补物理事实账,追溯就会变薄。
两代模型各自强调了一半

旧 ERP 和 Yames 都对,但都不完整

最终答案不是回到旧 ERP,也不是只做 Yames。

维度
旧 ERP:强调账和批次
Yames:强调流程和操作
强项
库存有流水,批次可查,管理能看到数量结果。
现场按工单、工序、在制品推进,操作路径更自然。
短板
批次过载,现场对象错位,部分领用和拆并很麻烦。
操作链顺,但物料输入输出关系不够硬,追溯靠推断。
一句话
有账,但不够顺。
顺了,但事实太轻。
所以 MGLA 的目标很朴素:保留旧 ERP 的“账要硬”,保留 Yames 的“操作要顺”。
最终答案

MGLA:操作按人走,事实按物记,结果按投影看

把三件事拆开,系统才既好用,又可信,又好维护。

1

操作按人走

现场可以扫批次、箱、托、流转卡、供应商包。人扫的是自己真正拿在手上的东西。

2

事实按物记

底层记录物料在哪里、多少、从哪里来、到哪里去、是否拆分合并转换。

3

结果按投影看

库存余额、当前状态、追溯链、FIFO、成本,都是从事实账算出来给人看的答案。

换句话说:人不用为了系统绕弯,系统也不能为了好操作丢掉证据。
落地流水线

MGLA 不是一个新名词,而是一条稳定的处理流水线

一次现场操作,从“扫一个码”到“追溯可查”,中间要经过五步。每一步都只做自己的事。

1

扫锚点

扫批次码、箱码、托盘码、流转卡或供应商包。它只是操作入口,不直接代表事实余额。

2

解出物料群

系统把锚点解析成当前绑定的物料片段:哪些 matter、多少数量、在哪个节点。

3

应用操作

领料、转移、拆分、合并、转换、纠错,都是对这个物料群做选择、拆分或组合。

4

写事实边

真正落账的是物料事实:从哪里减少、到哪里增加、什么输入变成什么输出。

5

生成投影

库存余额、当前锚点状态、追溯链、报表,都是从事实图计算出来的答案。

关键边界:锚点负责“人怎么操作”,事实图负责“物料怎么变化”,投影负责“页面怎么看”。
更接近物理世界

把物料看成会流动的东西,不是只看成一笔笔库存加减

很多现场场景不是一个完整批次从 A 搬到 B,而是物料持续进入某个操作、在操作中被选择或转换,再流向一个或多个输出。

流入:选择本次用到的部分
流出:说明结果流向哪里
原料流仓库 / 供应商 / 上道工序持续提供输入。
在制品流工序间在制品,可能按卡、箱、托或机台组织。
操作环节 选择、拆分、合并、转换、损耗、纠错都在这里发生
产出流半成品、成品、检验入库或下道工序。
副流 / 损耗流损耗、返工、报废、估算或不确定输出。
流入记录从输入流里拿出本次真正用到的物料切片。
现场操作把切片拆分、合并、转换,并绑定现场证据。
流出记录声明产出、剩余、损耗或返工流向哪里。
语义落地

流入和流出不是动画概念,而是 MGLA 写事实的方式

它把一次操作拆成输入声明、操作事实、输出声明。这样才能覆盖多输入、多输出、跨单位、损耗和不确定性。

流入记录

进入操作的物料切片

输入不是“扫了哪个码”本身,而是这个码当前代表的物料群里,被本次操作选择出来的那部分。

流入记录 = 来源 + 物料种类 + 数量切片 + 单位 + 现场证据 + 可信程度
流出记录

从操作流出的结果切片

输出可以是下道工序、成品、损耗、返工、供应商流、剩余流。输出数量和输入数量不一定同单位,但关系必须声明清楚。

流出记录 = 去向 + 形成物料 + 数量 + 单位 + 与输入的关系
部分领用
流入记录从原料流切出 37 件;流出记录进入工序在制品,同时剩余 63 件留在原流。
外协转换
流入可能是 100 千克原料;流出可能是 200 件成品加损耗声明,边上带转换规则和证据。
纠错冲销
不改旧记录;追加一条修正记录,投影重算当前答案,历史仍然能解释。
为什么必须有物料流动语义

旧模型卡住的地方,往往都是“流”的场景

如果只把所有事情都做成库存加减或流程日志,下面这些场景就会越来越靠规则解释。

工序在制品

不是一次完整批次搬家

上道不断产出,下道不断消耗,中间可能按流转卡、箱、机台、班次组织。物料流动语义能表达连续进入和连续流出。

外协供应商流

发出去和回来不是同一种单位

千克发出、件数回来、损耗和供应商声明,都应该是输入流和输出流之间的转换关系,而不是硬凑一个平衡转仓。

返工 / 纠错

历史不能被抹掉

返工是回流,纠错是修正流。它们应该追加事实,让当前状态重算,而不是直接修改旧记录。

物料流动语义让系统能说清楚:哪些物料进入了这个操作,哪些物料从这个操作流出,中间发生了什么转换或不确定性。
三维物料流动演示

把一次现场动作,看成“流入、操作、流出”的空间关系

左边是本次操作选中的输入,中心是现场动作,右边是产出、剩余、损耗或修正。拖动画面可以换角度看。

部分领用:只拿出 37 件进入工序,剩余 63 件继续留在原来的物料流里。
输入原料 100 件
操作选择 37 件
输出在制品 37 件;剩余 63 件

拖动画面旋转,点按钮切换不同现场场景。

图论怎么落地

图不是画给人看的花样,而是追溯真正能走的路

MGLA 把物料变化记录成节点和边。追溯时不是靠时间和备注反推,而是沿着边往前、往后走。

物理事实图

原料 A 100 千克 辅料 B 20 件 加工 转换 成品 C 200 件

节点是观察到的物料状态,边是物料关系:移动、消耗、产出、转换、拆分、合并、纠错。

工程映射

Node

某个时点、某个位置、某种物料、某个数量和状态。

Edge

输入和输出之间的事实关系,说明这份料怎样流动或变化。

Trace

追溯就是沿边遍历,不再主要靠工单、时间和备注猜关系。

群/集合怎么落地

二维码、箱、托、流转卡,本质上是“可操作的物料群”

这里的“群”不是让现场理解数学,而是工程上把一组物料片段圈起来,给人一个自然的操作入口。

锚点群

锚点 = 操作入口 + 当前绑定

一个箱码可以绑定多个物料片段;一张流转卡可以代表某道工序的在制品;一个供应商包可以代表外部声明的一组物料。锚点本身不拥有权威数量,数量来自事实图投影。

箱码 B-01 物料 A:37 件 物料 A:63 件 在制品-P20
集合操作

操作就是对群做选择、拆分、合并和重绑定

现场点的是“领 37 件”“两箱合并”“换一个标签”“外协回来入库”。系统把这些动作翻译成集合操作,再写成物理事实边。

select 37 partition 37 / 63 合并 A+B 新箱重新绑定
选择从一个锚点群里选择本次操作影响的那部分物料。
拆分把一个群拆成“本次使用”和“剩余保留”。
合并多个锚点群一起成为一次操作的输入。
重绑定换箱、换标签、换流转卡,只改操作入口,不伪造物料变化。
从操作到事实

一次扫码操作怎么映射成 MGLA 记录

页面看起来是一个按钮,底层要清楚写下:谁操作、选了哪些输入、物料怎么变化、当前答案如何计算。

现场动作
系统翻译
落到 MGLA
扫箱码
找到锚点,解析当前绑定的物料群。
写操作事实和锚点绑定,不直接改余额。
领 37 件
从群里选择 37,剩余 63 留在原群或新锚点。
写拆分或移动事实边,投影计算两个余额。
合并两箱
两个锚点群做合并,成为一次操作输入。
写合并或移动事实边,新箱码只做重新绑定。
外协回货
供应商声明和检验结果作为证据输入。
写转换事实边,声明可信度和单位转换关系。
落地原则:操作可以很简单,但事实不能含糊;页面可以只显示当前状态,但底层必须能重算。
交互演示

点一个操作,看锚点群怎样变成物理事实图

这页用二维动效表达核心逻辑。它比 3D 更容易看清楚:锚点在左边,事实图在右边,操作在中间落成边。

箱码 B-01 100 件 箱码 B-02 40 件 操作环节 选择 37 在制品-P20 +37 件 剩余 63 件 成品 200 件

部分领用:扫箱码只是找到可操作的物料群;真正落账的是从原物料减少 37 件、在制品增加 37 件,剩余 63 件由投影算出来。

MGLA 四个积木

技术名词用业务语言翻译

现场不需要背表名,开发团队也可以先从职责边界理解每块负责什么。

事实账

物料事实

物料真实发生了什么:增加、减少、移动、消耗、产出、拆分、合并、转换。

操作入口

锚点

人能扫、能拿、能选择的东西:批次码、箱码、托盘码、流转卡、供应商包。

操作记录

现场操作

谁在什么时间扫了什么、点了什么、选择了哪些输入、做了什么业务动作。

当前答案

Projections

页面看到的余额、状态、追溯链、报表、FIFO、成本,都是可重算的结果。

开发团队要先记住:不要把页面结果当事实,不要把扫码动作当物料变化。
现场案例

部分领用:同一件小事,三代模型差别很大

一批 100 件,只领 37 件。现场觉得麻烦,底层原因很清楚。

模型
怎么做
问题 / 改进
旧 ERP
围绕批次二维码,可能要拆批、改数量、补标签。
账能对,但现场绕;批次被迫代表完整操作范围。
Yames
围绕工单、工序、在制品拉动,操作更像现场流程。
顺了,但 37 件具体从哪份物料出来,证据不一定硬。
MGLA
扫现场对象,声明这次作用范围;底层记录从哪份物料减少 37 件、到哪里增加。
操作顺,事实也硬;剩余 63 件由投影算出来。
现场看起来只是少扫几次码,底层其实是把“这次操作”和“这份物料变化”拆清楚。
复杂案例

外协千克发出、件数回来:不能只靠“数量流水”硬解释

跨单位、损耗、转换、供应商报告,是旧模型和 Yames 都容易变薄的地方。

仓库发出100 千克原料
供应商加工损耗 / 转换 / 回报
检验入库200 件成品
旧 ERP

会绕

千克和件数很难用单一批次数量流水说清楚,常常靠备注或规则解释。

Yames

会薄

流程能走,但具体输入输出、损耗、转换来源不一定形成强证据。

MGLA

直接表达

把发出、转换、回收、供应商声明、可信度都作为事实或证据记录。

各类人员要记住什么

同一套底层,给不同人不同答案

这页可以作为培训收束,也可以作为客户沟通总结。

客户

看证据链。不是只看页面上有一条追溯线,而是每个关键关系都有事实或证据支撑。

现场

扫自然对象。能按批次、箱、托、流转卡、供应商包操作;系统背后负责把事实记清楚。

开发

守住边界。操作不是事实,余额不是事实;事实写入底账,页面读投影,不要把三者混成一团。

客户要可信,现场要省事,开发要不乱。MGLA 的价值就是让这三件事不再互相打架。
最后一句话

这次演进的逻辑

旧 ERP 让我们有了账,Yames 让我们看见现场怎么更顺。MGLA 要做的是把两件事合起来。

操作要像现场一样自然,追溯要像账一样可信。

人扫的是锚点,系统记的是物理事实,页面给的是可重算答案。