cancel
Showing results for 
Search instead for 
Did you mean: 

EOIO order issue after message split

pkrauthan
Explorer
0 Kudos

Hi,

we have an EOIO issue with following SAP PI (7.5 – Java Only) scenario.

A JDBC adapter reads entries from a database (poll cycle = 60 sec). An operation mapping creates via message split an IDOC for each record of the resultset. (In dependency of the payload a CREATE, CHANGE or DELETE – IDOC).

An EJB adapter module of the IDOC receiver channel dynamically sets the queue ID wit a value from the payload.

During a mass test following error occurred. With the first query PI retrieved a huge number of data records. As soon as PI finished the mapping (with the split), PI set the state DLVD to the query message and starts to process the next query-message even some of the created IDOCs have not been delivered successfully to the receiver system (SAP S/4).

So it happened that a DELETE IDOC of the second query was delivered before the change IDOC of the first query.

Does anyone of you have a suggestion hwo to avoid / fix this issue? The configuration should be clean (EOIO Flag of the sender channel, “Maintain Order at Runtime” of the operation mapping and Queueprocessing of the IDOC adapter are all set).

Thanks and best reagrds,

Peter

Accepted Solutions (0)

Answers (1)

Answers (1)

former_member190293
Active Contributor

Hi Peter!

As far as I know, quality of service EOIO and the queue name should be set in the sender channel's properties.

Regards, Evgeniy.

pkrauthan
Explorer
0 Kudos

Hi Evgeniy,

you are correct and we do this, too.

But as it looks the operation mapping overrides the serialization context of the sender adapter and creates a new serialization.

Therefore it happens that split messages of a later message overtake split messages of the first message.

Best regards,

Peter

former_member190293
Active Contributor
0 Kudos

Hi Peter!

Do you use "Maintain Order at Runtime" option in Receiver determination?

Regards, Evgeniy.