cancel
Showing results for 
Search instead for 
Did you mean: 

IDOC_AAE Receiver Module Error

Former Member
0 Kudos

Hi All,

I have a requirement where in I have to use XSLT Mapping. Its a IDOC to IDOC Scenario where both the sender and receiver IDOC are same. I am using PI 7.3 and the sender and receiver communication channels have IDOC_AAE as Adapters. I have done the complete mapping as per the requirements. There are no errors in my Operation Mapping. But when i triggering my IDOC from WE19 and check Message Monitoring in RWB I get the following error after the mapping is completed but before sending to the receiver.

IDoc: Error before sending : IDocException com.sap.conn.idoc.IDocParseException: (7) IDOC_ERROR_PARSE_FAILURE: An IDocConversionException occurred while parsing IDocXML for type <FIDCCP02>: state=READING_FIELD_VALUE_TAG, charPosition=1013, lineNumber=1, columnNumber=1014

At this Position in my IDOC i have a currency field. DMBTR.

The value which is coming from the source side is 1.500.000,00.

Since i was getting the above error i tried to change the value to 1500000.00 and it passed but the client wants the above value to come at the target side.

Can u pls provide any suggestions so that i can pass 1.500.000,00 on the target side.

Accepted Solutions (0)

Answers (1)

Answers (1)

former_member184681
Active Contributor
0 Kudos

Hi,

I believe what you observe is a standard behaviour. Although the financial document displayed in fb03 or t-code like this shows the value formatted like this: 1.500.000,00, when you send the FIDCCP02 IDoc with SAP standard functionality, it would come like 1500000.00. I mean, there is a format conversion between the source financial posting document and IDoc sent out from ECC. And you were able to send it like 1.500.000,00 only because you were testing output from we19.

Looking from the receivers perspective: the IDoc from PI to the receiver should also contain the non-formatted value, like 1500000.00. Once the document is posted in FI, you should see it formatted properly (for instance as 1.500.000,00, depending on your local settings). The inbound IDoc will create a posting only when the amounts do not have additional separators.

Putting things simple, SAP always "technically" operates on unseparated values, and only displays it with some additional separators when necessary.

Regards,

Greg

Former Member
0 Kudos

Hi Greg,

First of all thanks for your reply. Actaully i am new to SAP PI and also XSLT mapping. So let me reframe my understanding from your reply. What i understood is:

  • The actual value will be 1500000.00 only but before sending it as an IDOC there is a format conversion which converts the value to 1.500.000,00.

  • Also the the target accepts the original value 1500000.00 and once the IDOC is posted i again see the value as 1.500.000,00.

So in the mapping i have to write a UDF to convert 1.500.000,00 to 1500000.00. So the target accepts the value and once it is posted i can see the value as 1.500.000,00.

former_member184681
Active Contributor
0 Kudos

Hi,

With just one small correction:

The actual value will be 1500000.00 only but before sending it as an IDOC there is a format conversion which converts the value to 1.500.000,00.

The actual value in DB table is 1500000.00 (correct) and it is also sent in the IDoc as 1500000.00. Only when you display the posting in fb03, it is displayed according to your local settings, so for instance as 1.500.000,00.

As a result, you don't need any UDF, since sender ECC sends 1500000.00 and receiver should receive 1500000.00 as well. And once a document is posted in receiver system, it will again be displayed as 1.500.000,00.

Regards,

Greg