SAP 取月度期初库存和月度期末库存(历史库存)-mard和mardh的区别

来源:互联网 发布:紫鸟数据魔方可靠吗 编辑:程序博客网 时间:2024/05/17 12:01

mard里记载的是当前库存的数量,但是期间并不一定是当月。比如你物料4月一整月都没有库存数量变化(没收没发),那么5月初你看mard里的条目期间数还是4月而非5月。
当某个期间发生货物移动的时候,系统在更新mard数据的之前(这个表是实时更新的),会检查此笔业务过账期间和mard里对应记录的期间是否一致,也就是看这是不是本期间第一笔移动。如果是,copy表mard里对应记录到mardh,然后把mard记录改成当期(也可能是先删后建),然后再作更新数量数据的操作。如果不是第一笔记录,也就是mard期间和mseg期间一致,则不作copy记录只更新mard数量。

这样处理貌似减少了冗余数据,不过给编程取历史库存增加了很大的工作量,个人觉得不算明智之举。
库存方面的表
mbew  --当前库存
mbewh  --历史库存

EBEWH  --销售订单库存的评估:历史

mard--查主库存
mardh--主库存历史记录
mslb--特殊库存O
mkol--特殊库存K/M
mska--特殊库存E
msku--特殊库存V/W
mcha
mchb 


有很多人在做库存进销存的时候,感觉期初库存和期末库存比较难搞定,感觉要去取货物移动的数据来获取期初库存和期末库存,其实不然,只要理解原理就可以快速取出期初库存和期末库存

库存表:MARDH MARD MSKUH MSKU MSLBH MSLB MSKAH MSKA

下面以MARDH MARD为例,如果一个物料在2011年9月份做了一笔货物移动,则会自动在MARDH中更新2011年8月份的期末库存,假如在2011年9月份一直没有做货物移动,则不会更新MARDH中8月份的期末库存

 

假如我想获得2011年7月份的库存,则需要先在MARH中查找7月份的库存,找不到找8月份的库存,找不到找9月份的库存,以此类推,最后都找不到,则用MARD中的库存。

原创粉丝点击