采购订单收货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.


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部