Friday, 19 February 2021

SAP ABAP Posting Invoice From Parked Document Using BAPI

 REPORT ZPOST_INVOICE.


DATA :
  I_BELNR      TYPE RBKP_V-BELNR,
  I_GJAHR      TYPE RBKP_V-GJAHR,
  E_RBKPV      TYPE MRM_RBKPV,
  I_RBKPV      TYPE MRM_RBKPV,
  T_DRSEG      TYPE MMCR_TDRSEG,
  TI_DRSEG     TYPE MMCR_TDRSEG,
  I_EDITOR     TYPE REF TO C_TEXTEDIT_CONTROL,
  I_DO_PRICING TYPE BOOLE-BOOLE,
  I_BOPF_CALL  TYPE BOOLE-BOOLE.

DATA:
  EX_OBJECT_CX_ROOT TYPE REF TO CX_ROOT,
  EX_TEXT           TYPE STRING,
  EX_TEXT_LONG      TYPE STRING.


I_BELNR = '5105603952'.
I_GJAHR = '2021'.

CALL FUNCTION 'MRM_INVOICE_READ'
  EXPORTING
    I_BELNR = I_BELNR
    I_GJAHR = I_GJAHR
*   I_XSELK = ' '
*   I_BUFFER_ON            = X
*   I_LOCK  = ' '
*   I_DISPL = ' '
  IMPORTING
    E_RBKPV = E_RBKPV
*   T_RBSELCONTRACT        =
*   T_RBSELTRANSPMNG       =
*   T_RBSELTM              =
  TABLES
    T_DRSEG = T_DRSEG
*   T_KONV  =
*   T_RBSELBEST            =
*   T_RBSELLIFS            =
*   T_RBSELFRBR            =
*   T_RBSELWERK            =
*   T_RBSELERFB            =
*   T_RBSELTRAN            =
* EXCEPTIONS
*   ENTRY_NOT_FOUND        = 1
*   LOCK_ERROR             = 2
*   OTHERS  = 3
  .
IF SY-SUBRC = 0.
  TI_DRSEG = T_DRSEG.
  I_RBKPV  = E_RBKPV.

  TRY .
      CALL FUNCTION 'MRM_PARKED_INVOICE_POST'
        EXPORTING
          I_RBKPV  = I_RBKPV
          TI_DRSEG = TI_DRSEG.

      CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
        EXPORTING
          WAIT = 'X'.
    CATCH CX_ROOT INTO EX_OBJECT_CX_ROOT.
      EX_TEXT = EX_OBJECT_CX_ROOT->GET_TEXT( ).
      EX_TEXT_LONG = EX_OBJECT_CX_ROOT->GET_LONGTEXT( ).
  ENDTRY.




  WRITE 'Posted'.

ENDIF.

SAP ABAP Parking Invoice With Purchase Order Using BAPI

 REPORT ZPARK_INVOICE.


DATA :
  HEADERDATA       TYPE BAPI_INCINV_CREATE_HEADER,
  ITEMDATA         TYPE TABLE OF BAPI_INCINV_CREATE_ITEM,
  LSEMDATA         TYPE BAPI_INCINV_CREATE_ITEM,
  ACCOUNTINGDATA   TYPE TABLE OF BAPI_INCINV_CREATE_ACCOUNT,
  GLACCOUNTDATA     TYPE TABLE OF BAPI_INCINV_CREATE_GL_ACCOUNT,
  LSACCOUNTDATA     TYPE BAPI_INCINV_CREATE_GL_ACCOUNT,
  ITRETURN         TYPE TABLE OF BAPIRET2,
  INVOICEDOCNUMBER TYPE BAPI_INCINV_FLD-INV_DOC_NO,
  FISCALYEAR       TYPE BAPI_INCINV_FLD-FISC_YEAR.

CLEAR HEADERDATA.
HEADERDATA-INVOICE_IND = 'X'.
HEADERDATA-DOC_TYPE = 'KR'.
HEADERDATA-DOC_DATE   = SY-DATUM.
HEADERDATA-PSTNG_DATE = SY-DATUM.
HEADERDATA-BLINE_DATE = SY-DATUM.
HEADERDATA-REF_DOC_NO = 'IV/PO000000001'.
HEADERDATA-COMP_CODE  = '1000'.
HEADERDATA-CURRENCY   = 'IDR'.
HEADERDATA-GROSS_AMOUNT = '2000000'.
HEADERDATA-HEADER_TXT   = 'Parking INV'.

CLEAR LSEMDATA.
LSEMDATA-INVOICE_DOC_ITEM = '000010'.
LSEMDATA-PO_NUMBER        = '4500003809'.
LSEMDATA-PO_ITEM          = '000010'.
LSEMDATA-ITEM_AMOUNT      = '1050000'.
LSEMDATA-QUANTITY         = '300'.
LSEMDATA-PO_UNIT          = 'ST'.
LSEMDATA-ITEM_TEXT        = 'Parking INV'.
APPEND LSEMDATA TO ITEMDATA.

CLEAR LSACCOUNTDATA.
LSACCOUNTDATA-INVOICE_DOC_ITEM = '000010'.
LSACCOUNTDATA-GL_ACCOUNT       = '0063003000'.
LSACCOUNTDATA-ITEM_AMOUNT      = '1050000'.
LSACCOUNTDATA-DB_CR_IND        = 'S'.
LSACCOUNTDATA-COMP_CODE        = '1000'.
LSACCOUNTDATA-TAX_CODE         = 'I1'.
APPEND LSACCOUNTDATA TO GLACCOUNTDATA.

CALL FUNCTION 'BAPI_INCOMINGINVOICE_PARK'
  EXPORTING
    HEADERDATA       = HEADERDATA
*   ADDRESSDATA      =
  IMPORTING
    INVOICEDOCNUMBER = INVOICEDOCNUMBER
    FISCALYEAR       = FISCALYEAR
  TABLES
    ITEMDATA         = ITEMDATA
*   ACCOUNTINGDATA   =
    GLACCOUNTDATA    = GLACCOUNTDATA
*   MATERIALDATA     =
*   TAXDATA          =
*   WITHTAXDATA      =
*   VENDORITEMSPLITDATA       =
    RETURN           = ITRETURN
*   EXTENSIONIN      =
*   TM_ITEMDATA      =
*   NFMETALLITMS     =
  .

Turn off default MS Word Editor in Smartforms SAP S/4HANA

Fix SMARTFORMS and SE71 Access Issue in S/4HANA - Enhancement Solution Fix SMARTFORMS and SE71 Access Issue in S/...