采购订单收货BAPI
文章目录
- 1. Intruduction
- 2.code example
1. Intruduction
The bapi is used by migo.
2.code example
DATA: GT_GOODSMVT_HEADER LIKE BAPI2017_GM_HEAD_01,GT_GOODSMVT_ITEM LIKE BAPI2017_GM_ITEM_CREATE OCCURS 0 WITH HEADER LINE,GT_RETURN LIKE BAPIRET2 OCCURS 0 WITH HEADER LINE.DATA: GT_GOODSMVT_HEADRET LIKE BAPI2017_GM_HEAD_RET,GOODSMVT_CODE_TMP TYPE BAPI2017_GM_CODE.DATA: L_RETURN LIKE BAPIRET2.
"根据收货单,做MIGO收货"抬头数据GT_GOODSMVT_HEADER-PSTNG_DATE = SY-DATUM. "过账日期GT_GOODSMVT_HEADER-REF_DOC_NO = L_DELIVERY.GT_GOODSMVT_HEADER-PSTNG_DATE = SY-DATUM.GT_GOODSMVT_HEADER-DOC_DATE = SY-DATUM.GT_GOODSMVT_HEADER-PR_UNAME = SY-UNAME.GT_GOODSMVT_HEADER-HEADER_TXT = 'CWMS传SAP采购订单收货记账'.GOODSMVT_CODE_TMP = '01'."行项目数据loop at itb_cwms_in INTO gw_cwms_in.GT_GOODSMVT_ITEM-MATERIAL = gw_cwms_in-MATNR.GT_GOODSMVT_ITEM-PLANT = gw_cwms_in-WERKS.GT_GOODSMVT_ITEM-STGE_LOC = gw_cwms_in-LGORT.GT_GOODSMVT_ITEM-MOVE_TYPE = '101' .GT_GOODSMVT_ITEM-ENTRY_QNT = gw_cwms_in-MENGE .GT_GOODSMVT_ITEM-MVT_IND = 'B'.SELECT * INTO CORRESPONDING FIELDS OF TABLE gt_ztcwms016FROM ztcwms016WHEREZEBELN = gw_cwms_in-ZSHDHAND VBELN = gw_cwms_in-VBELN.READ TABLE gt_ztcwms016 INTO gw_ztcwms016 WITH KEY VBELN = gw_cwms_in-VBELN."采购订单GT_GOODSMVT_ITEM-PO_NUMBER = gw_ztcwms016-EBELN. "采购凭证号GT_GOODSMVT_ITEM-PO_ITEM = gw_ztcwms016-EBELP. "采购凭证行号APPEND GT_GOODSMVT_ITEM.ENDLOOP.CALL FUNCTION 'BAPI_GOODSMVT_CREATE'EXPORTINGGOODSMVT_HEADER = GT_GOODSMVT_HEADERGOODSMVT_CODE = GOODSMVT_CODE_TMPIMPORTINGGOODSMVT_HEADRET = GT_GOODSMVT_HEADRETTABLESGOODSMVT_ITEM = GT_GOODSMVT_ITEMRETURN = GT_RETURN.IF GT_RETURN[] IS INITIAL.CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'EXPORTINGWAIT = 'X'.MBLNR = GT_GOODSMVT_HEADRET(10).CONCATENATE gw_cwms_in-ZSHDH 'DN收货成功。' INTO REMSG."更新日志CLEAR:gw_ztcwms010.LOOP at gt_ztcwms010 INTO gw_ztcwms010.gw_ztcwms010-VBELN1 = GT_GOODSMVT_HEADRET(10). "过账凭证gw_ztcwms010-REID = 'S'.gw_ztcwms010-REMSG = 'DN收货成功' .MODIFY gt_ztcwms010 FROM gw_ztcwms010.CLEAR:gw_ztcwms010.ENDLOOP.MODIFY ztcwms018 FROM TABLE gt_ztcwms010.COMMIT WORK AND WAIT.ELSE.CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.CONCATENATE gw_cwms_in-ZSHDH 'DN收货失败!' INTO REMSG."更新日志CLEAR:gw_ztcwms010.LOOP at gt_ztcwms010 INTO gw_ztcwms010.gw_ztcwms010-VBELN1 = GT_GOODSMVT_HEADRET(10). "过账凭证gw_ztcwms010-REID = 'E'.gw_ztcwms010-REMSG = 'DN收货失败' .MODIFY gt_ztcwms010 FROM gw_ztcwms010.CLEAR:gw_ztcwms010.ENDLOOP.MODIFY ztcwms018 FROM TABLE gt_ztcwms010[].COMMIT WORK AND WAIT.EXIT.ENDIF.
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
