Here I want to share a small helpful document, which I have experienced in my POC. We all know the concept of EOIO in SAP PI. Now we are going to consider the same, suppose if we are processing an EOIO message using BPM with multiple conditions and similarly routing the messages to multiple systems based upon conditions.
Problem: Consider 5 messages which have to go to 3 different systems (A, B, C) based on conditions.For example message 1, 2 to System A, message 3 to System B and Message 4, 5 to system C. If any kind of error occurred for any of the messages 1 or 2 then rest all of the messages will be on scheduling state along with the messages of systems (B, C).
Solution: Instead if we have three different queues for each system then that particular message of that system will be on hold instead queuing up of all the messages of other systems and it is also easier to check and monitor the queues. Here we go with an example for the same.
In every BPM we will have the below following steps according to the requirement.
Transformation: Here, as we discussed earlier we need to route the messages according to the conditions all the transformation starts for the mapping and final messages will be routed to three different systems.
Fork Step: Here we have final message routing to three different systems.
Send Step: I am going to maintain the queues (A, B, C) in Send step of a BPM. As we have three different systems namely A, B, C in our example we will take the same now. After the fork step we will have a send step where we are going to have our queue maintenance.
In each of the send step I have specified different Queue names (A, B, C) .Below is the screen shot where I have mentioned the queue name with three different system names.
Now we will monitor the messages in SXI_MONITOR with the different queue names
In the above screen shot you can observe messages flowing through three different queues. Similarly if any issue comes to any of the queue that particular queue effects instead of other systems. Please reach to me if you have any kind of queries regarding the same.