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

ABAP

[ABAP] Billing BAPI (BAPI_BILLINGDOC_CREATEMULTIPLE)

๐Ÿšฉ ์ฝ”๋“œ

  DATA : LT_BILLING TYPE TABLE OF BAPIVBRK,
         LT_RETURN  TYPE TABLE OF BAPIRET1,
         LT_SUCCESS TYPE TABLE OF BAPIVBRKSUCCESS,
         LT_MESG    TYPE TABLE OF MESG WITH HEADER LINE.


  APPEND VALUE #( REF_DOC    = 'ALV์—์„œ ์„ ํƒํ•œ ๋‚ฉํ’ˆ๋ฌธ์„œ'
                  REF_DOC_CA = 'ALV์—์„œ ์…€๋ ‰ํŠธ๋œ VBTYP'
                  BILL_DATE  = '์ž…๋ ฅ๋ฐ›์€ WADAT_IST' ) TO LT_BILLING.


  CALL FUNCTION 'BAPI_BILLINGDOC_CREATEMULTIPLE'
    TABLES
      BILLINGDATAIN = LT_BILLING
      RETURN        = LT_RETURN
      SUCCESS       = LT_SUCCESS.


  READ TABLE LT_SUCCESS INTO DATA(LS_SUCCESS) INDEX GC_1.

  IF LS_SUCCESS-BILL_DOC IS INITIAL.
    CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.

    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
      INTO LT_MESG-TEXT
      WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

    MESSAGE E000 WITH LT_MESG-TEXT.

  ELSE.
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
      EXPORTING
        WAIT = 'X'.

    MESSAGE S011. "Processed successfully.
  ENDIF.
๋ฐ˜์‘ํ˜•