Quantcast
Channel: SCN : All Content - All Communities
Viewing all articles
Browse latest Browse all 8150

error msg in BAPI_ACC_DOCUMENT_POST :FI/CO interface: Inconsistent FI/CO document header data for updating

$
0
0

Hi Every one,

   please lookin this urgent issue i need your help to correct my BAPI upload program, im using BAPI_ACC_UPLOAD _POST to upload the accounting document's but its not getting update and im getting above error please do needful ,following is my code

 

  

SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-002.
PARAMETERS :DOCD TYPE ERDAT OBLIGATORY,
            POSD TYPE ERDAT OBLIGATORY,
            DOCT TYPE BLART OBLIGATORY,
            bktxt LIKE bkpf-bktxt OBLIGATORY,
            xblnr LIKE bkpf-xblnr OBLIGATORY.
SELECTION-SCREEN END OF BLOCK B1.

DATA: BEGIN OF IT_FINAL OCCURS 0,
      key(2),
      NEWKO(10) type C,
      GSBER(4),   " BAREA(4),
      KOSTL(10),
      PRCTR(10),
      BUKRS(4),
      MWSKZ(2),
      TXJCD(15),
      EBELN(10),
      EBELP(05),
      WRBTR type P decimals 2,
      SALESORG(09),
      CUSTOMER(10),
      SGTXT(50),
      END OF IT_FINAL,
      WA_FINAL LIKE LINE OF IT_FINAL.

DATA: gs_documentheader LIKE BAPIACHE09,
      criteria   LIKE BAPIACKEC9 OCCURS 0 WITH HEADER LINE,
      acctgl    LIKE BAPIACGL09 OCCURS 0 WITH HEADER LINE,
      acctrcv    LIKE BAPIACAR09 OCCURS 0 WITH HEADER LINE,
      doc_values LIKE BAPIACCR09 OCCURS 0 WITH HEADER LINE,
      return     LIKE bapiret2 OCCURS 0 WITH HEADER LINE,
      extension1 like BAPIACEXTC occurs 0 with header line,
      obj_type   LIKE bapiache08-obj_type,
      obj_key    LIKE bapiache02-obj_key,
      obj_sys    LIKE bapiache02-obj_sys,
      docnum     LIKE bkpf-belnr.
DATA:lv_item TYPE I VALUE 1.


CALL FUNCTION 'UPLOAD'
   EXPORTING
     FILENAME                      = ' '
     FILETYPE                      = 'DAT'
   TABLES
     DATA_TAB                      = IT_FINAL
  EXCEPTIONS
    CONVERSION_ERROR              = 1
    INVALID_TABLE_WIDTH           = 2
    INVALID_TYPE                  = 3
    NO_BATCH                      = 4
    UNKNOWN_ERROR                 = 5
    GUI_REFUSE_FILETRANSFER       = 6
    OTHERS                        = 7
           .
IF SY-SUBRC <> 0.
* Implement suitable error handling here
ENDIF.


""logic for month and year from posting date
DATA: E_GJAHR TYPE FTIS_GJAHR,
      E_MONAT TYPE FTIS_MONAT.
READ TABLE it_final INTO wa_final INDEX 1.
CALL FUNCTION 'FTI_FISCAL_YEAR_MONTH_GET'
  EXPORTING
    I_BUKRS        wa_final-BUKRS
    I_BUDAT         = POSD
*   I_DZTERM       = FTIS_DATUM-INITIAL
*   I_GJAHR        = FTIS_GJAHR-INITIAL
IMPORTING
   E_GJAHR        = E_GJAHR
   E_MONAT        = E_MONAT.
""END of logic.

CLEAR gs_documentheader.
gs_documentheader-bus_act = 'RFBU'.
GS_DOCUMENTHEADER-PSTNG_DATE POSD.        "posting date
gs_documentheader-doc_date   DOCD.        "Document Date
GS_DOCUMENTHEADER-DOC_TYPE   DOCT.        "Document type
gs_documentheader-HEADER_TXT BKTXT.       "Header Text
gs_documentheader-ref_doc_no XBLNR.       "refrenes doc number
gs_documentheader-username   SY-UNAME.    "user ID
gs_documentheader-fis_period E_MONAT.     "Month
gs_documentheader-fisc_year  E_GJAHR.     "Year
REad TABLE IT_FINAL INTO WA_FINAL INDEX 1.
GS_DOCUMENTHEADER-COMP_CODE  =   WA_FINAL-BUKRS.     "Year
MOVE 'RFBU'    TO GS_DOCUMENTHEADER-BUS_ACT.
MOVE 'BKPFF'   TO GS_DOCUMENTHEADER-OBJ_TYPE"Comment for >= ECC5.0
MOVE '$'       TO GS_DOCUMENTHEADER-OBJ_KEY.   "Comment for >= ECC5.0
MOVE SY-MANDT  TO GS_DOCUMENTHEADER-OBJ_SYS.   "Comment for >= ECC5.0


  LOOP AT it_final INTO wa_final.
* Increment item number
    lv_item = lv_item + 1.
    IF wa_final-customer IS INITIAL.
* Fill Account GL if it is GL account
      CLEAR acctgl .
      ACCTGL-ITEMNO_ACC  = LV_ITEM.
      acctgl-gl_account  = wa_final-NEWKO.
      acctgl-comp_code   = wa_final-bukrs.
      acctgl-pstng_date  = posd.
      acctgl-doc_type    = doct.
      acctgl-costcenter  = wa_final-kostl.
      acctgl-item_text   = wa_final-sgtxt.
*      acctgl-tax_code    = lco_tax_code.
      APPEND acctgl.
    ELSE.
* Fill Account receivable if it is a customer
      CLEAR acctrcv.
      acctrcv-itemno_acc = lv_item.
      acctrcv-customer   = wa_final-customer.
      acctrcv-gl_account = wa_final-newko.
      acctrcv-comp_code  = wa_final-bukrs.
      acctrcv-item_text  = wa_final-sgtxt.
      APPEND acctrcv.
    ENDIF.
* Fill amounts
    CLEAR doc_values.
    doc_values-itemno_acc = lv_item.
    doc_values-currency   = 'USD'.
    doc_values-amt_doccur = wa_FINAL-wrbtr.
    APPEND doc_values.
  ENDLOOP.

  CALL FUNCTION 'BAPI_ACC_DOCUMENT_CHECK'
    EXPORTING
      documentheader    = gs_documentheader
    TABLES
      accountgl         = acctgl
      accountreceivable = acctrcv
      currencyamount    = doc_values
      return            = return.

* Check if the document is okay to post

* Post the account document
    CALL FUNCTION 'BAPI_ACC_DOCUMENT_POST'
      EXPORTING
        DOCUMENTHEADER    = GS_DOCUMENTHEADER
      IMPORTING
        OBJ_KEY           = GS_DOCUMENTHEADER-OBJ_KEY
        OBJ_TYPE          = GS_DOCUMENTHEADER-OBJ_TYPE
        OBJ_SYS           = GS_DOCUMENTHEADER-OBJ_SYS

      TABLES
        ACCOUNTGL         = ACCTGL
        ACCOUNTRECEIVABLE = ACCTRCV
        CURRENCYAMOUNT    = DOC_VALUES
        RETURN            = RETURN.

BREAK-POINT.
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.


Viewing all articles
Browse latest Browse all 8150

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>