问题描述
出于测试目的,我在 SE37 中维护了与上述 BAPI 相关的所有参数。
但是,即使在相应字段中维护了物料代码 & 和所有其他字段,系统仍显示错误。
请找到附件截图以供参考。
解决方法
我的 2 美分,因为这种错误在许多 BAPI 函数中很常见。
BAPI 函数的参数经常加倍,例如一个名为 ITEM
的函数和另一个以 X
为后缀 (ITEMX
) 的函数。此附加参数具有完全相同的字段,名称相同,但长度为一个字符,其值可以是“
”或“X
”。
'X
'是表示ITEM
中对应的字段必须修改。在用于更改现有对象、强制将字段更改为空值的 BAPI 中,可以更好地理解这些双参数的重要性。值为空的字段表示“没有变化”。
示例代码:
DATA: items TYPE TABLE OF BAPIMEOUTITEM,items_x TYPE TABLE OF BAPIMEOUTITEMX.
items = VALUE #(
( item_no = '00010' material = 'MAT01' )
( item_no = '00020' material = 'MAT02' ) ).
items_x = VALUE #(
( item_no = '00010' material = 'X' )
( item_no = '00020' material = 'X' ) ).
...
CALL FUNCTION 'BAPI_CONTRACT_CREATE'
TABLES
item = items
itemx = items_x
...