Mapping 如何将交付中的PIKMG设置为0?

Mapping 如何将交付中的PIKMG设置为0?,mapping,sap,bapi,Mapping,Sap,Bapi,在退货订单流程中,我需要: 反向发货后==>OK 将PIKMG设置为0==>ko 修改LFIMG并再次发布GI==>OK 我找不到执行第二个项目的方法,我尝试了BAPI\u OUTB\u DELIVERY\u CHANGE,但没有成功。 有人能为我的需求发布一个好的bapi映射,或者建议另一个bapi吗? 非常感谢你。 Riky使用WS\u DELIVERY\u UPDATE\u 2BAPI更新领料数量 FM呼叫可以如下所示: CALL FUNCTION 'WS_DELIVERY_UPDAT

在退货订单流程中,我需要:

  • 反向发货后==>OK
  • 将PIKMG设置为0==>ko
  • 修改
    LFIMG
    并再次发布GI==>OK
我找不到执行第二个项目的方法,我尝试了
BAPI\u OUTB\u DELIVERY\u CHANGE
,但没有成功。 有人能为我的需求发布一个好的bapi映射,或者建议另一个bapi吗? 非常感谢你。
Riky

使用
WS\u DELIVERY\u UPDATE\u 2
BAPI更新领料数量

FM呼叫可以如下所示:

CALL FUNCTION 'WS_DELIVERY_UPDATE_2'
 EXPORTING
  vbkok_wa =       wa_vbkok " Header Data
  synchron =       'X'
  commit =         'X'
  delivery =       vbeln " delivery number
  update_picking = 'X'
  if_database_update_1 = '1'
 TABLES
  vbpok_tab =      it_vbpok[] " Item Data
  prot =           it_return. " Message Return Table

CLEAR: deliv_head,wa_vbkok.

READ TABLE it_return INTO wa_return WITH KEY msgty = 'E'.
IF sy-subrc <> 0.
  CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
   EXPORTING
    wait = 'X'.
ELSE.
* message handling
ENDIF.
调用函数“WS\u DELIVERY\u UPDATE\u 2”
出口
vbkok_wa=wa_vbkok“标题数据
synchron='X'
提交='X'
交货=vbeln“交货编号
更新_拾取='X'
如果_数据库_更新_1='1'
桌子
vbpok_tab=it_vbpok[]”项目数据
prot=it_return.“消息返回表
清除:交付头,瓦夫科克。
将表it_return读入键为msgty='E'的wa_return。
如果sy subrc为0。
调用函数“BAPI\u事务\u提交”
出口
等待='X'。
其他的
*消息处理
恩迪夫。

谢谢,我知道FM的结构,问题是如何填充项目数据