Skip to Content
0

SAP PI 7.5 IDOC_ERROR_PARSE_FAILURE for EDI_DC40 : BUPA_INBOUND_MAIN_SAVE_M09

Jun 07, 2017 at 04:32 PM

530

avatar image
Former Member

Hi,

I'm trying to process message for idoc SAVE_M.BUPA_INBOUND_MAIN_SAVE_M09 with below block:

<EDI_DC40 SEGMENT="1"> <TABNAM>EDI_DC40</TABNAM> <MANDT>000</MANDT> <DOCNUM>132</DOCNUM> <DIRECT>2</DIRECT> <IDOCTYP>BUPAINBOUNDMAINSAVEM09</IDOCTYP> <MESTYP>BUPA_INBOUND_MAIN_SAVE_M</MESTYP> <SNDPOR>Cust</SNDPOR> <SNDPRT>LI</SNDPRT> <SNDPRN>4260266310</SNDPRN> <RCVPOR>SAP</RCVPOR> <RCVPRN>HEDCLNT100</RCVPRN> <CREDAT>20170505</CREDAT> <CRETIM>222222</CRETIM> </EDI_DC40>

But I've got below error.

Error:

Error before sending due to idoc parsing error: (7) IDOC_ERROR_PARSE_FAILURE: IDoc type within the EDI_DC40 control record segment does not match the IDoc-XML root tag <BUPA_INBOUND_MAIN_SAVE_M09>:
state=READING_ENDTAG, charPosition=392, lineNumber=1, columnNumber=393

What I've already tried:

1. Disable EDI_DC40 block at all

2. Disable all fields, all fields except mandatory fields, all fields except RCVPRN,RCVRPT and SNDPRN, SNDRPT

3. Enable all fields and mapped them with empty or business valid values

Could you help me please, what can be reason for such kind of error (internal mapping test passed successfully)

Best regards, Andrey

10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

1 Answer

Thomas Lelievre-Damit Aug 23, 2017 at 03:45 PM
0

Hey Andrey,

Late response but I stumbled across your question while having the same problem in PI 7.5. Try and do an XPI_Inspector while triggering the IDOC_AEE. You'll maybe notice too that the SND parameters are removed and replaced with a null before going to the adapter.

Apparently there is stricter record control checking, even a different namespace can cause this -->

https://launchpad.support.sap.com/#/notes/0001862655

My solution which seems to work is to override the control headers in the receiver communication channel. This implies you'll have to make a separate Idoc receiver for each inbound type

Show 2 Share
10 |10000 characters needed characters left characters exceeded

Hello. Are you able to share an example of how the header values must be overridden? Much appreciated.

0

Hey,

Under the 'advanced' tab of your IDOC receiver channel is a checkbox to override control headers.

0