使用BAPI:BAPI_BATCH_CREATE 创建批次时,能够保存成功,但是MCH1表和KSSK表中没有内部对象号。
无奈,查找源码。
最后在BAPI中调用的这个函数这里找到了问题。此处kzcla需要打一个标识‘1’。
往上查找kzcla,找到该字段修改的地方。
上图所示,当batchcontrolfields-callcfc_cl EQ c_upper_x OR batchcontrolfields-callcfc_cl EQ c_lower_x.时,则修改 f_kzcla = ‘1’
通过调试得知,c_upper_x 是大写的‘X’,c_lower_x 是小写的‘x’,因此继续向上,发现 batchcontrolfields是传进来的值,因此找到了症结,
在调用BAPI_BATCH_CREATE时,传进这个值,并将batchcontrolfields-callcfc_cl = 'X'即可。
调用BAPI后发现可以在MCH1和KSSK中生成内部对象号CUOBJ_BM。