[问题解决]开启了adsubcon调用BAPI_GOODSMVT_CREATE创建物料凭证时第一行批次错误详解编程语言

1,问题描述

项目里使用了ADSUBCON,在调用BAPI_GOODSMVT_CREATE创建带subcontractor行项目的物料移动凭证时,发现主行项目中的批次赋值错误。

错误截图:

看到第一行,也就是物料移动类型是101的行项目上的批次是1208221560,实际调用bapi时的输入批次是另外一个1906050181,但是创建出来的物料凭证却不同,而且bapi返回消息中也没有提示任何信息。

[问题解决]开启了adsubcon调用BAPI_GOODSMVT_CREATE创建物料凭证时第一行批次错误详解编程语言

预想结果:

[问题解决]开启了adsubcon调用BAPI_GOODSMVT_CREATE创建物料凭证时第一行批次错误详解编程语言

2,问题分析

业务顾问一头雾水,所以只能搬出debug大法,此处略去10000000个字。。。。经过debug发现了一段标准SAP代码中的注释,

include:MM07MFS0_SEGMENTDATEN_EK_SETZE中

翻译过来就是,用tcode MIGO根据带subcon的采购订单创建物料凭证时,主行项目中的批次号和评估类型是不能被PO带过来的值覆盖,反言之,就是不使用MIGO创建物料凭证时PO中的批次和评估类型的优先级就高,会覆盖bapi输入参数里的值!!!

[问题解决]开启了adsubcon调用BAPI_GOODSMVT_CREATE创建物料凭证时第一行批次错误详解编程语言

这时再查看一下对应的PO批次,

MIGO中找到物料凭证中的PO

[问题解决]开启了adsubcon调用BAPI_GOODSMVT_CREATE创建物料凭证时第一行批次错误详解编程语言

ME23n找到PO中的批次,果然和BAPI输入的不一致。

[问题解决]开启了adsubcon调用BAPI_GOODSMVT_CREATE创建物料凭证时第一行批次错误详解编程语言

以上。

原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/19333.html

(0)
上一篇 2021年7月19日 22:03
下一篇 2021年7月19日 22:03

相关推荐

发表回复

登录后才能评论