zoukankan      html  css  js  c++  java
  • WMS函数组:14.RDC入库1

    FUNCTION ZRFC_WMS_GOODSMVT_CREATE_D1.
    *"--------------------------------------------------------------------
    *"*"本地接口:
    *"  IMPORTING
    *"     VALUE(IT_ZMKPF002) LIKE  ZWMS_GOODSMOVE_HEAD
    *"  STRUCTURE  ZWMS_GOODSMOVE_HEAD OPTIONAL
    *"  EXPORTING
    *"     VALUE(EP_SUBRC) TYPE  SY-SUBRC
    *"     VALUE(EP_MATERIALDOCUMENT) TYPE  BAPI2017_GM_HEAD_RET-MAT_DOC
    *"     VALUE(EP_MATDOCUMENTYEAR) TYPE  BAPI2017_GM_HEAD_RET-DOC_YEAR
    *"  TABLES
    *"      ET_LOG STRUCTURE  BAPIRET2 OPTIONAL
    *"      IT_DETAIL STRUCTURE  ZWMS_RDC_DETAIL OPTIONAL
    *"--------------------------------------------------------------------
    *{   INSERT         DEVK919920                                        1
    *GM_CODE 01: GOODS RECEIPT FOR PURCHASE ORDER
    *}   INSERT
    *"----------------------------------------------------------------------
    *{   INSERT         DEVK919920                                        2
    DATA:
      GOODSMVT_CODE          LIKE  IT_ZMKPF002-GM_CODE,
      IP_GMHEAD              LIKE  BAPI2017_GM_HEAD_01     OCCURS    0
    WITH HEADER  LINE,
      IP_GMCODE              LIKE  BAPI2017_GM_CODE        OCCURS    0
    WITH HEADER  LINE,
      IP_MTHEAD              LIKE  BAPI2017_GM_HEAD_RET    OCCURS    0
    WITH HEADER  LINE,
      IP_MITEM               LIKE  BAPI2017_GM_ITEM_CREATE OCCURS    0
    WITH HEADER  LINE,
      EP_GOODSMVT_HEADRET    LIKE  BAPI2017_GM_HEAD_RET OCCURS    0   WITH
    HEADER  LINE,
      I_ERROR_MESSAGES       LIKE  ARRANG_ERR,
      IT_LIPS LIKE LIPS ,
      I_LOG                  LIKE  BAPIRET2        OCCURS 0 WITH HEADER LINE
    .
    CLEAR :
        IP_GMHEAD,
        IP_GMCODE ,
        IP_MTHEAD,
        IP_MITEM ,
        I_LOG,
        EP_GOODSMVT_HEADRET.
    REFRESH:
        IP_GMHEAD,
        IP_GMCODE ,
        IP_MTHEAD,
        IP_MITEM ,
        I_LOG,
        EP_GOODSMVT_HEADRET.
    **********  HEADER      凭证日期
    IF IT_ZMKPF002-DOC_DATE IS NOT INITIAL.
        IP_GMHEAD-DOC_DATE = IT_ZMKPF002-DOC_DATE    .
    ELSE.
        IP_GMHEAD-DOC_DATE  = SY-DATUM  .
    ENDIF.
    **********  HEADER      记帐日期
    IF IT_ZMKPF002-PSTNG_DATE IS NOT INITIAL.
        IP_GMHEAD-PSTNG_DATE = IT_ZMKPF002-PSTNG_DATE    .
    ELSE.
        IP_GMHEAD-PSTNG_DATE = SY-DATUM .
    ENDIF.
    *******下面取渠道
      IP_GMHEAD-REF_DOC_NO = IT_ZMKPF002-LFSNR.
    **********  HEADER     凭证抬头文本
      IP_GMHEAD-HEADER_TXT = IT_ZMKPF002-HEADER_TXT   .
    **********  HEADER 事务代码
      GOODSMVT_CODE = IT_ZMKPF002-GM_CODE.
      IP_GMCODE-GM_CODE  = GOODSMVT_CODE.
    **********  HEADER    用户名
      IP_GMHEAD-PR_UNAME = SY-UNAME.
    DATA:TMP_LINE LIKE IP_MITEM-LINE_ID.
    ***********明细
    *--------------CHA JWY_20170811
    SORT IT_DETAIL.
    *--------------CHA JWY_20170811
    LOOP AT IT_DETAIL.
    SELECT SINGLE * INTO  IT_LIPS FROM LIPS WHERE VBELN =
    IT_DETAIL-VBELN AND POSNR = IT_DETAIL-POSNR.
        IP_MITEM-MATERIAL =  IT_LIPS-MATNR.
    *    IP_MITEM-PLANT =  IT_LIPS-WERKS.
    IF IT_DETAIL-LGOBE = '6700'.
          IP_MITEM-PLANT =  '6700'.
    ELSE.
          IP_MITEM-PLANT =  IT_LIPS-WERKS.
    ENDIF.
        IP_MITEM-STGE_LOC =  IT_DETAIL-LGOBE.
        IP_MITEM-BATCH = IT_DETAIL-CHARG.
        IP_MITEM-MOVE_TYPE = '101'.
        IP_MITEM-ENTRY_QNT = IT_DETAIL-ERFMG.
        IP_MITEM-PO_NUMBER = IT_LIPS-VGBEL.
        IP_MITEM-PO_ITEM = IT_LIPS-VGPOS.
        IP_MITEM-MVT_IND = 'B'.
        IP_MITEM-DELIV_NUMB_TO_SEARCH = IT_DETAIL-VBELN.
        IP_MITEM-DELIV_ITEM_TO_SEARCH = IT_DETAIL-POSNR.
        IP_MITEM-DELIV_NUMB =  IT_DETAIL-VBELN.
        IP_MITEM-DELIV_ITEM = IT_DETAIL-POSNR.
    PERFORM F_ADD_ZERO USING IP_MITEM-PO_NUMBER.
    PERFORM F_ADD_ZERO USING IP_MITEM-PO_ITEM.
    IF IP_MITEM-PO_NUMBER+0(1) = '4'.
    SELECT SINGLE WERKS LGORT INTO (IP_MITEM-PLANT,IP_MITEM-STGE_LOC)
    FROM EKPO
    WHERE    EBELN = IP_MITEM-PO_NUMBER AND EBELP = IP_MITEM-PO_ITEM.
    ENDIF.
    PERFORM F_ADD_ZERO USING IP_MITEM-DELIV_NUMB_TO_SEARCH.
    PERFORM F_ADD_ZERO USING IP_MITEM-DELIV_ITEM_TO_SEARCH.
    PERFORM F_ADD_ZERO USING  IP_MITEM-DELIV_NUMB.
    PERFORM F_ADD_ZERO USING IP_MITEM-DELIV_ITEM.
    SELECT SINGLE LIFNR INTO IP_MITEM-VENDOR FROM EKKO WHERE EBELN =
    IP_MITEM-PO_NUMBER.
    *=====行号===========================
    CLEAR TMP_LINE.
    DESCRIBE TABLE IP_MITEM LINES TMP_LINE .
        TMP_LINE = TMP_LINE + 1.
    PERFORM F_ADD_ZERO USING TMP_LINE.
        IP_MITEM-LINE_ID = TMP_LINE .
        IP_MITEM-PARENT_ID = '000000'.
    APPEND IP_MITEM.
    ENDLOOP.
    ***以下是进行过帐处理*******************************************
    *Append lines of IP_MITEM to IT_R. "显示输入参数便于调试
    CLEAR I_LOG[].
    ****************处理特殊移动类型
    CALL FUNCTION 'BAPI_GOODSMVT_CREATE'
    EXPORTING
          GOODSMVT_HEADER  = IP_GMHEAD
          GOODSMVT_CODE    = IP_GMCODE
    IMPORTING
          GOODSMVT_HEADRET = EP_GOODSMVT_HEADRET
          MATERIALDOCUMENT = EP_MATERIALDOCUMENT
          MATDOCUMENTYEAR  = EP_MATDOCUMENTYEAR
    TABLES
          GOODSMVT_ITEM    = IP_MITEM
    RETURN           = I_LOG.
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
    EXPORTING
    WAIT = 'X'.
    CLEAR:IP_MITEM[].
    *--------------CHA JWY_20170811
    SORT I_LOG.
    *--------------CHA JWY_20170811
    LOOP AT I_LOG.
    IF I_LOG-TYPE = 'E'.
    CONCATENATE IT_ZMKPF002-LFSNR I_LOG-MESSAGE INTO ET_LOG-MESSAGE.
          ET_LOG-TYPE =  I_LOG-TYPE .
          ET_LOG-ID               = I_LOG-ID .
          ET_LOG-NUMBER           = I_LOG-NUMBER.
          ET_LOG-LOG_NO           = I_LOG-LOG_NO.
    APPEND  ET_LOG.
    ENDIF.
    ENDLOOP.
    CLEAR I_LOG[].
    READ  TABLE   I_LOG WITH  KEY  TYPE   = 'E'.
    IF  SY-SUBRC   =   0  .
        EP_SUBRC  =  -1.
    ENDIF.
    *}   INSERT
    ENDFUNCTION.

  • 相关阅读:
    hdu 4710 Balls Rearrangement()
    hdu 4707 Pet(DFS水过)
    hdu 4706 Children's Day(模拟)
    hdu 4712 Hamming Distance(随机函数暴力)
    csu 1305 Substring (后缀数组)
    csu 1306 Manor(优先队列)
    csu 1312 榜单(模拟题)
    csu 1303 Decimal (数论题)
    网络爬虫
    Python处理微信利器——itchat
  • 原文地址:https://www.cnblogs.com/twttafku/p/14327463.html
Copyright © 2011-2022 走看看