Call sync BPM from Async BPM – issue


SAP PI Interview Questions and SAP PI Tutorials

SAP PI Interview Questions and SAP PI Tutorials

Outline: I’m trying to call a synchronous BPM from an asynchronous BPM in a PI 7.0 SP 14 system.
When doing so i get the following error: Object CL_SWF_XI_MSG_BROKER method SEND_SYNCHRON cannot be executed.

Now this is an oldie when searching the forums for this error message. I do however fail to see a solution to the problem.
Note that the following notes (referred to in similar posts)
– 710445
– 718734
– 830803
are implemented since theese refer to older versions of PI.

My scenario is very simple at present since i’ve startet from scratch again after getting the error. So what i do is:

1) send async message to async BPM
2) async BPM receives request
3) async bpm transform request til sync_request.
4) async BPM calls synchronous BPM
5) sync BPM receives request and opens a async/sync bridge
6) sync BPM maps request to response
7) sync BPM sends response and closes async/sync bridge
8) async BPM reveices sync_response
9) async BPM sends sync_response to some application

Call sync BPM from Async BPM – issue

Now step 8 i never succesfully executed. Instead the error earlier described is triggered.

For simplicity i use 1 and only 1 message type in all message interfaces. I have mapping between my synchronous interfaces outside of BPM.

The synchronus BPM is executed just fine. The only issue is getting the reponse back to the asynchronous BPM.

I am familiar with the following similar posts:
https://forums.sdn.sap.com/thread.jspa?threadID=197127
https://forums.sdn.sap.com/thread.jspa?threadID=592449
but find them to be of no use.
Hope someone can help.

Ans:
Can you tell why are you implementing usch an interface?
Looking at your steps I dont think you need Sync BPM…..there is nothing special that your Sync BPM is doing.
When you say you open an Async-Sync bridge in the BPM it should mean that you receive an Async request….then BPM makes a Sync call…..then the response is send to the calling system and the call is closed…..however looking at the steps that you have implemented there is no such logic (of Async-Sync) seems to be implemented.
Do have a re-look at your requirement and do modifications accordingly…..also when you send the message back to Async-BPM make sure that a correlation is defined & used properly.

SAP PI Interview Questions and SAP PI Tutorials

SAP PI Interview Questions and SAP PI Tutorials

Ans1:
If everything is working fine then check with your sender sys parameters and authoriztions….basically Sync/Async bridge helpfull…whn your receiving sys does’t have the capability to receive Sync/Async messages….(it converts the calls from Sync to Async and vice versa ) pls study your requirment once again and use proper steps…..hope your scenario will be work.
Ans2:
Ok, thought it was clear inj the outline that what i wrote in this post is a simplified scenario whoose sole purpose is to test the problem giving me problems in the “real” scenario.

So, yes, i do need this functionality:-)

And as for the async/synch bridge i mentioned – this is of cause an sync/async bridge instead. My bad for putting it in the wrong order when writing. As i wrote i have an asynchronous BPM and a synchronous BPM. No correlations should be needed in such a scenario.

Hope it clearifies.
————

This is all internal workflow communication: 1 BPM calls another. Thus I dont believe authorizations are relevant here.
————
First you do not need any bridges if it is asyn/sync kind of a scenario in the second BPM. You need a bridge when the bpm has to wait with a sync call coming in and response in an async call. Essentially your BPMs (I donno why you need 2.. but let us go with 2)

{quote:title=Daniel Hans Engsig-Karup wrote:}

1) send async message to async BPM
2) async BPM receives request
3) async bpm transform request til sync_request.
4) async BPM calls synchronous BPM
5) sync BPM receives request

(Remove this if you are calling a sync system here) and opens a async/sync bridge

6) sync BPM maps request to response
7) sync BPM sends response

Remove this and closes async/sync bridge

8) async BPM reveices sync_response
9) async BPM sends sync_response to some application
————-

Really, as previously statet this is a simplified scenario to test my real world scenario. Im not using a async/sync bridge but a sync/async bridge in the synchronous BPM also as previously statet:-) So this means in my “real” scenario lots of more actions take place than described here.

Please dont worry bout the lag of logic in what I described here, but focus on the error i get when trying to perform the synchronous call from the asynchropnous BPM to the synchronous BPM.

For information im corrently having my basis-team try and implement note 1246527. If it solved the issue i will of cause report so when i know:-)
—-
Implementing SAP note 1246527 (BPE-RUN: Synchronous send fails if receiver is process) solved the problem.

SAP PI Interview Questions and SAP PI Tutorials

SAP PI Interview Questions and SAP PI Tutorials

Share this:
Share this page via Email Share this page via Stumble Upon Share this page via Digg this Share this page via Facebook Share this page via Twitter
PDF24    Send article as PDF   
This entry was posted in Uncategorized. Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *