库存修正

Odoo 报废和库存调整为什么不是一回事:scrap、inventory adjustment 和库存修正边界讲透

很多库存数量不对时,大家第一反应都是“调一下”。但报废和盘点调整其实代表两种不同语义。本文把边界讲清楚。

Odoo 开发 库存
进阶 开发者 1 分钟阅读
0 评论 0 点赞 0 收藏 6 阅读

先说结论

在 Odoo 里,报废(scrap)和库存调整(inventory adjustment)表面都可能让数量减少或变化,但它们代表的业务语义并不一样。

最实用的区分是:

  • scrap:这批货因为损坏、失效、不可再用而退出可用库存
  • inventory adjustment:系统库存记录与现实盘点不一致,需要校正账实差异

所以它们不只是“两个都能改数量”的入口,而是在表达两种完全不同的库存事实。


为什么这个问题特别容易被混

因为用户最直接的目的很像:

  • 把数量改对

于是很容易想成:

  • 用哪个都差不多吧

但库存系统不仅关心数字最后是多少,还关心:

  • 为什么会变成这样。

而 scrap 和 inventory adjustment,回答的就是两种不同的“为什么”。


scrap 更像什么

它更像:

这批货物本身失去了继续参与正常库存流转的资格。

也就是说,scrap 关心的是货物状态变化:

  • 坏了
  • 过期了
  • 污损了
  • 不能再卖 / 再用

这是一种业务事实,而不只是数值修正。


inventory adjustment 更像什么

它更像:

现实库存和系统记录对不上,所以需要把系统账面修正回来。

这时重点不一定是货坏了,而是:

  • 盘点发现差异
  • 记录不准
  • 需要校正系统现状

所以它更多是在修“系统认知”和“现实状态”的偏差。


为什么这两者不能随便互换

因为后面你还可能需要回答:

  • 这批货是坏掉了,还是只是系统记错了?
  • 这是损耗,还是盘点差异?
  • 这是业务损失,还是数据修正?

如果入口语义用错,后面:

  • 分析
  • 追责
  • 报表
  • 流程解释

都会被带偏。

所以区别它们,不是做形式主义,而是保留真实业务原因。


实战里最容易踩的 5 个坑

1. 只想着把数改对,不想为什么改

后面语义会乱。

2. 用库存调整去代替报废

损耗原因会被抹平。

3. 用报废去覆盖盘点差异

系统认知问题会被伪装成货损。

4. 只看数量结果,不看业务解释链

很多报表会失真。

5. 把所有库存修正都理解成同一种动作

这是最根本的误区。


一句话记忆法

把它记成一句话:

scrap 在表达“货本身失去可用资格”,inventory adjustment 在表达“系统记录和现实库存不一致需要校正”;它们都改数量,但原因语义完全不同。

理解这一句,库存修正问题会清楚很多。

DISCUSSION

评论区

想参与讨论?先 登录 再发表评论。
还没有评论,你可以成为第一个留言的人。