03 · ERP & SUPPLY CHAINP113 MIN
Stock Movement、入库、出库与调整
用不可变流水解释库存为什么变化,而不是只覆盖当前数字。
MENTAL MODELINVENTORY MOVEMENTS
01Opening 20
→02+ Receiving 15
→03- Shipment 8
→04- Damage 1
→05Closing 26
先把概念与边界说清楚
定义告诉你它是什么,边界告诉你它不负责什么;企业系统最常见的误解通常发生在两者混用时。
Stock Movement
记录 SKU、仓库、方向、数量、原因、来源单据和操作者的库存变化。
Inbound / Outbound
入库增加实物在库,出库减少实物在库,并分别关联收货和履约单据。
Inventory Adjustment
盘点差异、破损、丢失等非标准业务流造成的账面修正。
库存余额是 26,没人知道怎么算的
管理员直接编辑 inventory.quantity,审计只看见最后值。
- 01
禁止直接覆盖余额。
- 02
所有变化写 movement 并在事务内更新聚合。
- 03
定期用流水重算对账。
每次变化都有来源,发现差异时能定位具体单据。
马上动手
- 为订单预占、取消、发货分别选择 movement 类型。
- 设计 adjustment reason code。
常见坑
- 允许负数 movement 语义混乱
- 出库不关联 Shipment
- 删除错误流水而不是冲正
05 · KNOWLEDGE CHECK发现历史流水错误时为什么推荐冲正?查看答案⌄
答案
删除或修改会破坏审计时间线;新增相反方向的冲正记录能保留原错误、纠正动作与责任。