- 摩杰斯
- 2026-10-27
工单做到一半要改?工单变更怎么管
工单已经投产,客户要加两百件;或者某道工序客户说不用做了,从下一件起跳过。这两种改法在系统里走的不是同一条路。这篇把工单变更拆开讲:什么时候该开变更单、明细为什么按工段对齐、日志记到什么程度。
![]()
一、工单变更不是改工单,是开一张变更单
最省事的做法是直接在工单上把数字改掉。改完车间照新数字干,看起来也没出错。
问题是三个月后。客户说这批货的数量对不上,你翻工单——上面写的是改后的数,原来是多少没地方查;你说改过,客户问什么时候改的、谁同意的、为什么改,答不上来。
所以正规做法是开一张变更单,编号 CH{YYMM}{4位流水},挂在这张工单下面。原工单的数字不动,变更单记录「从什么改成什么、因为什么、谁执行的」。工单当前生效的数据是变更执行后的结果,但历史每一笔改动都在自己的单子上。
这套做法有个前提:工单不能凭空改,也不能凭空建。工单必须由客户订单转过来,变更同样走单据——这是离散加工的基本秩序,跳过它,账就没法追。
二、四种变更类型:交期、数量、工序、取消
工单变更开放四类:
- delivery_date(改交期):工单的计划完成时间调整,影响排产顺序。
- quantity(改数量):这一单做多少件变了。数量一变,料、工时、成本全跟着变,这是影响面最大的一类。
- process(改工序):工段列表调整——加一道、减一道、或者改某道工序的计划工时。这类改动不动总数量,但动的是工艺路径。
- cancel(取消):这张工单不做了。
四类之外的情况,比如改产品、改件号,不属于工单变更的范围,该走订单层重开或者新建工单。变更单不是万能修改器,它只处理已经发生的事实变化。
三、明细与工段对齐:为什么按工序改
工单在离散加工里的结构是:一张工单 = 一个产品 + 一串工段 + 一个数量。工段是这张工单的主干,所以变更明细也是按工段一对一排的。
每个变更明细行记这些:工段顺序(seq)、工段定义、工段名称、计划工时(planned_hours)、工段备注,再加上变更专用的一组字段——操作类型(add / delete / modify)、变更前的计划工时(old_planned_hours)、变更前的备注(old_remark)。
这套设计解决的是一个具体问题:客户说「这道热处理不用做了」,变更单上就是删掉一个工段;客户说「这道磨加工时间要放宽」,变更是 modify,改计划工时,同时把原来的工时值留着。
如果变更明细只记一句「工序有调整」,那这张变更单等于废纸——车间不知道改哪道,成本也算不出差多少。
四、日志三态:创建、提交、作废
变更单有三个动作会被记日志:create(创建)、submit(提交)、void(作废)。日志里带操作人、操作人 ID、操作描述和时间。
为什么日志要单独一张表,而不是靠变更单的状态字段?因为状态只告诉你现在是什么,日志告诉你过程中发生过什么。一张变更单可能建了、改了两次、最后作废——状态只显示 void,日志里能看到完整的折腾过程。
小厂里这类情况不少:客户上午说要改,下午又说不改了。变更单作废是对的,但作废这个动作本身要留下,因为车间可能已经按上午的口径动过手。
五、改数量和改工序,影响完全不同
两类变更在系统里的处理路径应该分开看:
改数量影响的是料、工时、成本和交付。数量从 100 件变成 150 件,材料费按体积算的模型可能不变(单件成本一样),但加工费要按数量口径重算——这取决于租户的工时口径设置:按件算工时还是按单算工时。口径不同,算出来的加工费差一倍都是可能的。
改工序影响的是工艺路径和计划工时。少一道工序,加工费直接减一截;加一道工序,成本和交期都要重估。这类变更往往还牵扯外协——新加的工序可能厂里做不了。
所以变更单执行之后,成本该重算就得重算。系统提供按公式重算工单成本的动作,材料费和加工费会按当前的工单数据、工段计划工时和工段费率重新算一遍,覆盖原来的成本记录。
六、什么时候不该用变更单
有两种情况,变更单不是合适的工具:
一是改错了。 计划员录入时数量多打一个零,这不是「客户变更」,是录入错误。这种情况该作废重开或者按更正处理,不要用变更单掩盖——账面上多出来的那笔变更,年底复盘时会变成假信息。
二是还没投产。 工单刚建出来还没派工,客户就要改。这时候直接改工单本身或者撤了重建更干净,走变更单反而绕。变更单的价值在于记录「已发生的改变」,没发生的事不需要变更记录。
判断标准很简单:车间有没有按旧数据动过手。 动过,就必须留痕;没动过,改数据本身就行。
客户层面的改动走的是客户订单变更单(OC 单);工单管什么,见工单管理。产品了解 Moges PMS5。




