๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

ABAP

[ABAP] POD(Proof of Delivery) ์—…๋ฐ์ดํŠธ BAPI (WS_DELIVERY_UPDATE_2)

๐Ÿšฉ ์ฝ”๋“œ

  DATA : LS_VBKOK_WA TYPE VBKOK,
         LV_DELIVERY TYPE LIKP-VBELN,
         LV_PGI      TYPE XFELD,
         LT_VBPOK    TYPE TABLE OF VBPOK,
         LT_PROT     TYPE TABLE OF PROTT.


"(1) ์„ ํƒํ•œ ๋‚ฉํ’ˆ๋ฌธ์„œ์˜ ์•„์ดํ…œ ์ •๋ณด๋ฅผ ๋‹ค ๋ถˆ๋Ÿฌ์˜จ๋‹ค.
  SELECT VBELN,
         POSNR,
         MATNR,
         CHARG,
         LFIMG,
         VRKME
    FROM LIPS
   WHERE VBELN = 'ALV์—์„œ ์„ ํƒํ•œ ๋‚ฉํ’ˆ๋ฌธ์„œ'
   INTO TABLE @DATA(LT_LIPS).


  LS_VBKOK_WA-VBELN_VL = 'ALV์—์„œ ์„ ํƒํ•œ ๋‚ฉํ’ˆ๋ฌธ์„œ'.
  LS_VBKOK_WA-KZPOD = 'D'.
  LS_VBKOK_WA-PODAT = '์ž…๋ ฅ๋ฐ›์€ ๋‚ ์งœ'.
  LS_VBKOK_WA-POTIM = '์ž…๋ ฅ๋ฐ›์€ ์‹œ๊ฐ„'.
  LS_VBKOK_WA-WABUC = 'X'.
  LV_DELIVERY = 'ALV์—์„œ ์„ ํƒํ•œ ๋‚ฉํ’ˆ๋ฌธ์„œ'.


"(2) LT_VBPOK์— LIPS ๋ฐ์ดํ„ฐ ์ž…๋ ฅ์ด ๊ผญ ํ•„์š”ํ•˜๋‹ค.
  LOOP AT LT_LIPS ASSIGNING FIELD-SYMBOL(<FS_LIPS>).
    APPEND VALUE #( VBELN_VL = <FS_LIPS>-VBELN
                    POSNR_VL = <FS_LIPS>-POSNR
                    MATNR    = <FS_LIPS>-MATNR
                    CHARG    = <FS_LIPS>-CHARG
                    LFIMG    = <FS_LIPS>-LFIMG
                    VRKME    = <FS_LIPS>-VRKME ) TO LT_VBPOK.
  ENDLOOP.


"(3) POD ์—…๋ฐ์ดํŠธ.
  CALL FUNCTION 'WS_DELIVERY_UPDATE_2'
    EXPORTING
      VBKOK_WA                = LS_VBKOK_WA
      SYNCHRON                = GC_X
      COMMIT                  = GC_X
      DELIVERY                = LV_DELIVERY
      NICHT_SPERREN_1         = GC_Y
    IMPORTING
      EF_ERROR_IN_GOODS_ISSUE = PV_PGI
    TABLES
      VBPOK_TAB               = LT_VBPOK
      PROT                    = LT_PROT.
๋ฐ˜์‘ํ˜•