cancel
Showing results for 
Search instead for 
Did you mean: 

Can we make a customized queue wait for few seconds??

Former Member
0 Kudos

Hi All,

Please help me in solving or please do suggest.

I am using EOIO in CC in order to send my messages from the same queue in order.

We have a scenario where the messages contain status updates for a specific WorkOrder and need to reach the target system in the same sequence.

The messages are flowing through single queue but two status updates are getting updated at once (same time). This is making the target system arrange the statuses in wrong sequence.

Is there any way to make the specified queue wait for few milli seconds in between every message.

Thanks & Regards,

Sandhya.

Accepted Solutions (0)

Answers (2)

Answers (2)

iaki_vila
Active Contributor
0 Kudos

Hi everybody,

I was thinking that this case can be done with the async approach Tentative Update & Confirm/Compensate (TU&C/C), the main problem is the receiver has to make changes in their system as well. What do you think?

Regards

Eduardo_Rubia
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hello, there,

How about "sleep" in message mapping? This would enable an explicit delay in the pipeline, thus postponing the message delivery to the EOIO queue;

Not sure this will help you, though, since this will act before the message reaches the queue. If the problem is on the receiver side that doesn't know how to order the incoming messages, then you might consider investigating that first.

Good luck,
Eduardo

engswee
Active Contributor
0 Kudos

Sandhya

I agree with Eduardo, it looks like an issue with the target system. EOIO only ensures that PI delivers them in sequence, but if the receiver does not know how to process them in sequence, it should be fixed on that side.

What receiver system and channel are you using?

Rgds

Eng Swee

Former Member
0 Kudos

Thanks Eduardo for your reply.

we are placing files into ECC(interface1) and updating ECC in correct sequence but 2/ more statuses are updating at same time in ECC and from there we have a proxy to SOAP interface (interface2). jumbling is happening in the soap receiver of second interface.

Regards,

Sandhya

Former Member
0 Kudos

Thanks Eng Swee for your reply.

We are placing files into ECC (interface1- SFTP to proxy) and updating ECC in correct sequence but 2/ more statuses are updating at same time in ECC and from there we have a proxy to SOAP interface (interface2). Jumbling is happening in the soap receiver of second interface but the time is same only the statuses are jumbled which should not happen. The EOIO is used in SFTP Sender CC.

Can you please help in resolving this.

Regards,

Sandhya

engswee
Active Contributor
0 Kudos

How is the inbound proxy receiver of the first interface related to the outbound proxy sender of the second interface? Does the inbound proxy call the outbound proxy?

If the sequence is incorrect in the second interface, it most likely means that the second interface is not being executed as EOIO. The ABAP logic that triggers the outbound proxy needs to set the serialization context - refer ASYNC_MESSAGING protocol in the following blog

Former Member
0 Kudos

Hi Eng,

Many Thanks!!

We are now trying to make the messages delay in outbound proxy ABAP code(interface2). We need to perform testing on this.

I will check whether this works fine. It should work as expected

Regards,

Sandhya.

engswee
Active Contributor
0 Kudos

You don't need to delay them in the outbound proxy, just set a queue for the proxy so that it is EOIO. Just adding a few milliseconds delay can never 100% guarantee that the sequence is maintained.

Former Member
0 Kudos

I will check with the option provided by you as well. Thank You.

engswee
Active Contributor
0 Kudos

Hi Sandhya

Noticed that you marked my reply as helpful. Any progress on how it is working with the EOIO queue?

Rgds

Eng Swee

Former Member
0 Kudos

Hi Swee,

We have delayed inbound proxy (1st interface) and the Status are in order in ECC and also in receiver of interface 2. We tried using Queue for proxy as well but there are other interfaces using this proxy. That is the reason we are not maintaining Queue there as we may have issues with Queue overloading.Thanks for your solution which was helpful.

Regards,

Sandhya.