SAP财务物资动态表取数基本原理

2021-08-29 23:33发布


          点击此处--->   EasySAP.com 群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)

(1)    问题再现:

物资动态表是关于物资在当月的期初、期末、收入、发出的情况表,细分到显示单 物料数据,显示某类物料组物资数据,也包含了相应科目的收发数据。

存货情况表是关于物资当月的收发情况。两个表的功能基本类似。

物资表和存货表最初存在的主要问题是运行时间很长,单个物料需要消耗大约5分钟时间,系统中主数据上万条,结果就是程序卡在系统内,不能完整的取数。

××对此进行细致的分析,发现取数的方式存在一定问题。两个报表中存有期初、期末数据,这两个数据在SAP系统中是个动态数据,大家当时没有找到存储它们的数据表,默认为是系统程序计算出来的结果。故物资表和存货表开发的时候都是基于MB5B的标准程序取数。也可以说,只有先运行MB5B标准程序后,我们的物资表和存货表才能取到准确的数据。这一过程,就浪费了很长的时间,何况MB5B数据运行出来后,我们还需要对其进行筛选分析,又消耗很长时间。所以最终业务人员运行事务代码的时候,就会等上相当长的时间。

(2)    实现优化过程:

针对上述运行时间长的问题,××进行了细致分析,我们最终达成一致

意见,还是在系统寻求存储相应数据的数据表以代替MB5B标准程序。他们通过几个工作日的摸索,发现了那些特殊数据,分散在系统表内并且存在一定的结构关系。他们分别存在ckmlcr,mlcd,ckmlpp ,ckmlhd

期初数量ckmlpp-umkumo + ckmlpp-abkumo

收入数量ckmlppzukumo

发出数量ckmlppvnkumo

期末数量ckmlpplbkum

 

期初价差是期末价差+发出价差-收入价差;

收入价差ckmlcr-zuprd_o + ckmlcr-zuprd_mo

发出价差ckmlcr-vnprd_ea + ckmlcr-vnprd_ma

期末价差ckmlcr-ebprd_ea + ckmlcr-ebprd_ma

 

期初金额为上月期末金额。

收入金额mlcdcateg = 'ZU'mlcdsalk3

发入金额mlcdcateg = 'VN'mlcdsalk3

期末金额ckmlcr-salk3

通过上述方法的取数,速度提高了六十倍,由原来的单个物料运行3分钟提高到3秒钟。


赞赏支持