生产订单261发料得凭证A,262退料得凭证B。此刻冲销凭证要先冲销B,再能冲销A。否则提示数量超。MBST如何判断这种关系呢?
接下来做,冲销凭证B,得凭证C。试着冲销凭证A,再次提示数量超。试着冲销凭证B,提示凭证B已经冲销。此种关系又如何确定?
在表MSEG中,有字段SMBLN和SMBLP,冲销凭证会带上被冲销凭证的号和项目,被冲销凭证对应字段为空,且似乎没有字段体现它已被冲销。
其实存在一个有趣的视图:M_MBMPS:输入凭证号(其实是SMBLN),可查得它的对头。
至于数量问题,则通过与预留表RESB对比计算的。也就是说,MBST不会跟你在冲来冲去中胡闹,梳理那千丝万缕的关系,而是换了个角度跟RESB中的ENMNG(提货数)和BDMNG(需求量)对比。当然还有MARD-LABST的非限制使用。
详细的过程,可以参考FM: MB_CHECK_MATERIAL_STOCKS