cancel
Showing results for 
Search instead for 
Did you mean: 

publish/subscribe in SAP PI 7.1/7.3

Former Member
0 Kudos

Looking for the publish/subscribe concept in SAP PI 7.1 or 7.3.

I am working on an assignment in which one sender sends the data to three different recievers.  It might be same data or different data at recievers level.

We can do it normal PI based interface, but let us suppose at that specific time one of the reciever was unexpectedly down and not able to send the data to that reciever.  But the remaining two recievers got the data.

So for the third reciever, i need to send the data manually later after the third reciever is up.

To avoid manual work,  is there any concept like publish subscribe at PI level and the messages can handle automatically.

If yes please let me know the procedure, how i can proceed????

Need urgent help.

Thanks in advance.....

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

that's realy a tough one and we have recently implemented it.

If it was to bypass then i would have said just check the "ignore" condition in receiver determination but in your case use following approach.

1. As you know that when a message fails an alert is raised and goes into a table, SXMSSLERTCONTENT,so idea is to get the details from this using http(AAE) adapter and push it to PI, this this will be a query string payload and you have to write java mapping to read this payload and convert it to correct form of PI.

2. this payload will have MESSAGE ID, so the next idea is to make a RFC lookup from within another mapping (thus you have 2 mappings, java mapping along with normal/graphical message mapping) and get the payload that failed. This payload you can now pass to the receipient for which it was intended.

I sure though this approach will scracth your head but will definitely help you if you know java mapping to form the first level of payload in mapping.

Former Member
0 Kudos

Thanks Vishal for your response.

Can you please provide the details about it.

I am completely blank on it.

What was the scenario you worked and how you designed???

Please provide me in details.

Answers (2)

Answers (2)

udo_martens
Active Contributor
0 Kudos

Hi,

this is actually standard functionality of PI. All asynchronous message are queued and the execution of the queues will be repeated with configurable intervals and number of loops.

/Udo

iaki_vila
Active Contributor
0 Kudos

Hi Sabu,

As far as i know if you want to avoid the manual treatment the only solution is with ccBPM. The ccBPM can deal with intermediate states a re-try the attempts.

Also, you could develop an extra webservice that it checks that the data has arrived to the destiny, and the sender deals with the error situations with this webservice and the original one.

Regards.