MM_无批次管理的库龄计算逻辑

作者:郑德鼎 约 4 分钟阅读 更新日期:2025-03-02 1 年前更新 标签:MM, 物料管理
MM_无批次管理的库龄计算逻辑 - 封面图
MM_无批次管理的库龄计算逻辑 - 封面图

**一、业务需求**

公司的系统中物料没有启用批次管理,但又想要出具库龄报表。

**二、矛盾点**

举个例子:容器A-

代表库存,水杯1-代表第1条入库记录,水杯2代表第2条入库记录……,在系统中没有启用批次管理的情况下,入库就类似于将水杯1、水杯2……的水倒进容器A。倒进去之后,想再

准确 区分容器A中的水是属于哪个水杯,也就不可能了。这个不可能,就是在不启用批次管理的情况想要 准确 计算库龄的难度。

**三、解决办法**

用户需求最大。没有条件创造条件也要解决用户的需求。既然无法准确计算库龄,那就和用户沟通是否可以模糊计算库龄。如果用户觉得不认可,那就只好不赚这份钱,即使做了也会因为结果得不到认可而拿不到签字,最终无法收钱。下面我们讨论用户接受模糊库龄的逻辑:

1、假设前提

出库是按照先进先出方式。先进先出一般是财务核算成本时要求的出库方式。如果使用批次管理可以做到系统和实物同步执行,但没有了批次管理,系统层面是无法实现的,也就无法确保账实同步先进先出。所以系统层面只能认为实际管理是按照先进先出执行。

2、具体执行逻辑

(1)读取物料库存明细

(2)读取物料库存所有的入库凭证(可以排除掉冲销,但如果是反向操作没办法避免)

(3)对入库凭证按照入库日期倒排(是按录入日期还是过账日期由业务确定)

(4)按照物料循环读取库存,在库存循环内再循环物料凭证,用物料凭证数量扣减库存库存的数量。当库存数量扣减为0时的物料凭证日期为基准,计算物料凭证日期与指定日期之间的差异,这个差异就是库龄。

**3、缺点**

(1)最大的缺点就是不准确,是以先进先出为前提。

(2)如果库龄是要求到具体的数字,比如10天、100天等,则同一个物料的库存要么以一个库龄数字显示一行,要么合并显示一行(更加的不准确,因为这种情况是按照最早入库的凭证日期计算所有库存的库龄了);如果库龄是要求区间,比如0-3个月,3个月-6个月等,相对会好点。

(3)实时计算对服务器压力太大,尤其随着数据量的增加,批量计算更加的不可能。毕竟是读取和计算物料凭证这个系统中第二个数据量大的表。如果设置后台作业,就需要把每天的库龄结果进行存储,也会导致存储的数据过大。

4、建议

在实施系统时,尽量通盘考虑启用批次管理,而不是云淡风轻向用户确认下,得到没有批次管理的时候,就直接不启用了。其实对绝大多数企业,批次管理基本都是潜在需求的,先进先出、质量追溯、库龄等,都需要批次管理进行支撑。

郑德鼎

关于作者:郑德鼎

企业信息化与 SAP 技术顾问,长期专注 SAP ABAP、FI/CO、MM、SD 等模块的技术分享与实战经验总结。查看更多介绍

来源说明:本文内容由「MM_无批次管理的库龄计算逻辑.md」整理生成,仅用于内部技术分享与学习交流。