2021 Aug 01 2:54 PM
Hi,
I am facing issue in BAPI_ACC_DOCUMENT_POST for transaction FV60 as 'FI/CO interface: Inconsistent currency information'.
I have written below source code. Kindly suggest if the code is wrong or any correction.
SY-TCODE = 'FV60'.
* Populate Data for Header
CALL FUNCTION 'OWN_LOGICAL_SYSTEM_GET'
IMPORTING
OWN_LOGICAL_SYSTEM = ES_DOCUMENTHEADER-OBJ_SYS
EXCEPTIONS
OWN_LOGICAL_SYSTEM_NOT_DEFINED = 1
OTHERS = 2.
ES_DOCUMENTHEADER-OBJ_TYPE = 'BKPFF'.
CONCATENATE SY-DATUM SY-UZEIT INTO ES_DOCUMENTHEADER-OBJ_KEY .
ES_DOCUMENTHEADER-BUS_ACT = 'RFBU'.
ES_DOCUMENTHEADER-USERNAME = SY-UNAME.
ES_DOCUMENTHEADER-HEADER_TXT = 'TEST1_9100'.
ES_DOCUMENTHEADER-COMP_CODE = '9100'.
ES_DOCUMENTHEADER-DOC_DATE = '20160801'.
ES_DOCUMENTHEADER-PSTNG_DATE = '20160801'.
ES_DOCUMENTHEADER-DOC_TYPE = 'KR'.
ES_DOCUMENTHEADER-FISC_YEAR = '2016'.
ES_DOCUMENTHEADER-REF_DOC_NO = 'TEST1_9100'.
ES_DOCUMENTHEADER-DOC_STATUS = '3'.
****Populate Vendor Data
REFRESH : IT_VENDORITEM[].
WA_VENDORITEM-ITEMNO_ACC = '000001'.
LV_LIFNR = 'UCRO002'.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
INPUT = LV_LIFNR
IMPORTING
OUTPUT = LV_LIFNR.
WA_VENDORITEM-VENDOR_NO = LV_LIFNR.
WA_VENDORITEM-COMP_CODE = '9100'.
WA_VENDORITEM-BLINE_DATE = '20160628'.
WA_VENDORITEM-ITEM_TEXT = 'TEST1_9100'.
WA_VENDORITEM-TAXJURCODE = 'AB0010001'.
WA_VENDORITEM-PMNTTRMS = '0001'.
APPEND WA_VENDORITEM TO IT_VENDORITEM.
CLEAR WA_VENDORITEM.
CLEAR : IS_ACCOUNTGL.
IS_ACCOUNTGL-ITEMNO_ACC = '000002'.
IS_ACCOUNTGL-GL_ACCOUNT = '0005538135'.
IS_ACCOUNTGL-ITEM_TEXT = 'TEST1_9100'.
IS_ACCOUNTGL-ACCT_TYPE = 'S'.
IS_ACCOUNTGL-ALLOC_NMBR = 'TEST1_9100'.
IS_ACCOUNTGL-COMP_CODE = '9100'.
IS_ACCOUNTGL-TAXJURCODE = 'AB0010001'.
APPEND IS_ACCOUNTGL TO IT_ACCOUNTGL.
CLEAR IS_ACCOUNTGL.
CLEAR IS_CURRENCYAMOUNT.
IS_CURRENCYAMOUNT-ITEMNO_ACC = '000001'.
IS_CURRENCYAMOUNT-CURR_TYPE = '00'.
IS_CURRENCYAMOUNT-CURRENCY = 'USD'.
IS_CURRENCYAMOUNT-CURRENCY_ISO = 'INR'.
IS_CURRENCYAMOUNT-AMT_DOCCUR = '200' * -1.
IS_CURRENCYAMOUNT-AMT_BASE = '200' * -1.
APPEND IS_CURRENCYAMOUNT TO IT_CURRENCYAMOUNT.
CLEAR IS_CURRENCYAMOUNT.
IS_CURRENCYAMOUNT-ITEMNO_ACC = '000002'.
IS_CURRENCYAMOUNT-CURR_TYPE = '00'.
IS_CURRENCYAMOUNT-CURRENCY = 'USD'.
IS_CURRENCYAMOUNT-CURRENCY_ISO = 'INR'.
IS_CURRENCYAMOUNT-AMT_DOCCUR = '200'.
IS_CURRENCYAMOUNT-AMT_BASE = '200'.
APPEND IS_CURRENCYAMOUNT TO IT_CURRENCYAMOUNT.
CLEAR IS_CURRENCYAMOUNT.
IS_ACCOUNTTAX-ITEMNO_ACC = '000002'.
IS_ACCOUNTTAX-GL_ACCOUNT = '0005538135'.
IS_ACCOUNTTAX-COND_KEY = 'JP3I'.
IS_ACCOUNTTAX-ACCT_KEY = 'NVV'.
IS_ACCOUNTTAX-TAX_CODE = 'U0'.
IS_ACCOUNTTAX-TAX_RATE = ''.
IS_ACCOUNTTAX-TAXJURCODE = 'AB0010001'.
IS_ACCOUNTTAX-TAXJURCODE_DEEP = 'AB0010001'.
IS_ACCOUNTTAX-TAXJURCODE_LEVEL = '3'.
APPEND IS_ACCOUNTTAX TO IT_ACCOUNTTAX.
CLEAR IS_ACCOUNTTAX.
*** Passing filled BAPI tables
CALL FUNCTION 'BAPI_ACC_DOCUMENT_POST'
EXPORTING
DOCUMENTHEADER = ES_DOCUMENTHEADER
TABLES
ACCOUNTGL = IT_ACCOUNTGL
ACCOUNTPAYABLE = IT_VENDORITEM
ACCOUNTTAX = IT_ACCOUNTTAX
CURRENCYAMOUNT = IT_CURRENCYAMOUNT
RETURN = IT_RETURN.
IF SY-SUBRC = 0.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT = 'X'.
ENDIF.
LOOP AT IT_RETURN INTO WA_RETURN.
WRITE:/001 WA_RETURN-TYPE, WA_RETURN-ID,
WA_RETURN-NUMBER, WA_RETURN-MESSAGE.
CLEAR WA_RETURN.
ENDLOOP.
Hi,
I am facing issue in BAPI_ACC_DOCUMENT_POST for transaction FV60 as 'FI/CO interface: Inconsistent currency information'.
I have written below source code. Kindly suggest if the code is wrong or any correction.
SY-TCODE = 'FV60'.
* Populate Data for Header
CALL FUNCTION 'OWN_LOGICAL_SYSTEM_GET'
IMPORTING
OWN_LOGICAL_SYSTEM = ES_DOCUMENTHEADER-OBJ_SYS
EXCEPTIONS
OWN_LOGICAL_SYSTEM_NOT_DEFINED = 1
OTHERS = 2.
ES_DOCUMENTHEADER-OBJ_TYPE = 'BKPFF'.
CONCATENATE SY-DATUM SY-UZEIT INTO ES_DOCUMENTHEADER-OBJ_KEY .
ES_DOCUMENTHEADER-BUS_ACT = 'RFBU'.
ES_DOCUMENTHEADER-USERNAME = SY-UNAME.
ES_DOCUMENTHEADER-HEADER_TXT = 'TEST1_9100'.
ES_DOCUMENTHEADER-COMP_CODE = '9100'.
ES_DOCUMENTHEADER-DOC_DATE = '20160801'.
ES_DOCUMENTHEADER-PSTNG_DATE = '20160801'.
ES_DOCUMENTHEADER-DOC_TYPE = 'KR'.
ES_DOCUMENTHEADER-FISC_YEAR = '2016'.
ES_DOCUMENTHEADER-REF_DOC_NO = 'TEST1_9100'.
ES_DOCUMENTHEADER-DOC_STATUS = '3'.
****Populate Vendor Data
REFRESH : IT_VENDORITEM[].
WA_VENDORITEM-ITEMNO_ACC = '000001'.
LV_LIFNR = 'UCRO002'.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
EXPORTING
INPUT = LV_LIFNR
IMPORTING
OUTPUT = LV_LIFNR.
WA_VENDORITEM-VENDOR_NO = LV_LIFNR.
WA_VENDORITEM-COMP_CODE = '9100'.
WA_VENDORITEM-BLINE_DATE = '20160628'.
WA_VENDORITEM-ITEM_TEXT = 'TEST1_9100'.
WA_VENDORITEM-TAXJURCODE = 'AB0010001'.
WA_VENDORITEM-PMNTTRMS = '0001'.
APPEND WA_VENDORITEM TO IT_VENDORITEM.
CLEAR WA_VENDORITEM.
CLEAR : IS_ACCOUNTGL.
IS_ACCOUNTGL-ITEMNO_ACC = '000002'.
IS_ACCOUNTGL-GL_ACCOUNT = '0005538135'.
IS_ACCOUNTGL-ITEM_TEXT = 'TEST1_9100'.
IS_ACCOUNTGL-ACCT_TYPE = 'S'.
IS_ACCOUNTGL-ALLOC_NMBR = 'TEST1_9100'.
IS_ACCOUNTGL-COMP_CODE = '9100'.
IS_ACCOUNTGL-TAXJURCODE = 'AB0010001'.
APPEND IS_ACCOUNTGL TO IT_ACCOUNTGL.
CLEAR IS_ACCOUNTGL.
CLEAR IS_CURRENCYAMOUNT.
IS_CURRENCYAMOUNT-ITEMNO_ACC = '000001'.
IS_CURRENCYAMOUNT-CURR_TYPE = '00'.
IS_CURRENCYAMOUNT-CURRENCY = 'USD'.
IS_CURRENCYAMOUNT-CURRENCY_ISO = 'INR'.
IS_CURRENCYAMOUNT-AMT_DOCCUR = '200' * -1.
IS_CURRENCYAMOUNT-AMT_BASE = '200' * -1.
APPEND IS_CURRENCYAMOUNT TO IT_CURRENCYAMOUNT.
CLEAR IS_CURRENCYAMOUNT.
IS_CURRENCYAMOUNT-ITEMNO_ACC = '000002'.
IS_CURRENCYAMOUNT-CURR_TYPE = '00'.
IS_CURRENCYAMOUNT-CURRENCY = 'USD'.
IS_CURRENCYAMOUNT-CURRENCY_ISO = 'INR'.
IS_CURRENCYAMOUNT-AMT_DOCCUR = '200'.
IS_CURRENCYAMOUNT-AMT_BASE = '200'.
APPEND IS_CURRENCYAMOUNT TO IT_CURRENCYAMOUNT.
CLEAR IS_CURRENCYAMOUNT.
IS_ACCOUNTTAX-ITEMNO_ACC = '000002'.
IS_ACCOUNTTAX-GL_ACCOUNT = '0005538135'.
IS_ACCOUNTTAX-COND_KEY = 'JP3I'.
IS_ACCOUNTTAX-ACCT_KEY = 'NVV'.
IS_ACCOUNTTAX-TAX_CODE = 'U0'.
IS_ACCOUNTTAX-TAX_RATE = ''.
IS_ACCOUNTTAX-TAXJURCODE = 'AB0010001'.
IS_ACCOUNTTAX-TAXJURCODE_DEEP = 'AB0010001'.
IS_ACCOUNTTAX-TAXJURCODE_LEVEL = '3'.
APPEND IS_ACCOUNTTAX TO IT_ACCOUNTTAX.
CLEAR IS_ACCOUNTTAX.
*** Passing filled BAPI tables
CALL FUNCTION 'BAPI_ACC_DOCUMENT_POST'
EXPORTING
DOCUMENTHEADER = ES_DOCUMENTHEADER
TABLES
ACCOUNTGL = IT_ACCOUNTGL
ACCOUNTPAYABLE = IT_VENDORITEM
ACCOUNTTAX = IT_ACCOUNTTAX
CURRENCYAMOUNT = IT_CURRENCYAMOUNT
RETURN = IT_RETURN.
IF SY-SUBRC = 0.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT = 'X'.
ENDIF.
LOOP AT IT_RETURN INTO WA_RETURN.
WRITE:/001 WA_RETURN-TYPE, WA_RETURN-ID,
WA_RETURN-NUMBER, WA_RETURN-MESSAGE.
CLEAR WA_RETURN.
ENDLOOP.
2021 Aug 01 5:10 PM
Hi,
please edit your question and paste code inside code button...
2021 Aug 02 8:05 AM
Hello,
Issues seems to be with the ISO Currency information you are passing against the Currency in Internal Table "IT_CURRENCYAMOUNT"
IS_CURRENCYAMOUNT-CURR_TYPE = '00'.
IS_CURRENCYAMOUNT-CURRENCY = 'USD'.
IS_CURRENCYAMOUNT-CURRENCY_ISO = 'INR'.
IS_CURRENCYAMOUNT-AMT_DOCCUR = '200'.
IS_CURRENCYAMOUNT-AMT_BASE = '200'.
APPEND IS_CURRENCYAMOUNT TO IT_CURRENCYAMOUNT.
CLEAR IS_CURRENCYAMOUNT.Thanks,
Sijin
| User | Count |
|---|---|
| 3 | |
| 2 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |