cancel
Showing results for 
Search instead for 
Did you mean: 

Dynamically Delay message in PI 7.1

Former Member
0 Kudos

Hi Guys,

We are on PI 7.1 EHP1.

We have a scenario where PI picks up the files. ( There might be multiple files for PI to pick-up)

On receiver we are doing a HTTP post. Receiver takes 20 sec to process each message.

The requirement is that - PI has to wait 20 sec for each message before it sends, so that the previous would get processed.

Options I looked at:

Put a wait in Java mapping/ Abap mapping/ use BPM with wait time (I have seen the same in the SDN posts as well)

--- Issue with this option is that PI picks up all the files almost at the same time, wait step above would not help because

Message 1, Message 2 will have the same wait time and go to the receiver at the same time after waiting for x secs.

Option 2: (which I think would workout)

Create an ABAP mapping, which would search for the messages -

- for the given sender, sender operation and sender interface name-space - in the last 10 mins from the current time stamp, if there are 10 messages - the current message would wait for 10 * 20 ( "number of messages" times "the wait time requested by the receiver application" )

Could you guys please share your thoughts and let me know if I am missing anything here?

Accepted Solutions (0)

Answers (2)

Answers (2)

baskar_gopalakrishnan2
Active Contributor
0 Kudos

You can acheive this through BPM. Follow BPMPatternMulticastSequential. Use Wait step before the send step in the block and ignore next recv step in that pattern.

Refer Basis swcv and namespace http://sap.com/xi/XI/System/Patterns and look for the above pattern

former_member181962
Active Contributor
0 Kudos

Did you consider the option of Setting the Quality of service as "EOIO" in the sender file adapter?

In which casde, the second message will wait till the first message is processed and then move to second message's processing.

Best Regards,

Ravikanth Talagana