Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

FI/CO interface: Inconsistent currency information in BAPI_ACC_DOCUMENT_POST for transaction FV60

former_member207480
Participant
0 Likes
1,930

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.

2 REPLIES 2
Read only

Abinathsiva
Active Contributor
0 Likes
1,503

Hi,

please edit your question and paste code inside code button...

Read only

Sijin_Chandran
Active Contributor
0 Likes
1,503

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