cancel
Showing results for 
Search instead for 
Did you mean: 

BPM Send Step

Former Member
0 Kudos

Hi,

I have a question almost answered that needs a confirmation from the experts of this site.

I have a BPM process designed in a Integration Process:

SAP R/3 sends an IDoc to PI

IDoc is processed and mapped by PI and a Webservice is called in Synchronous mode.

The Response of the WebService is mapped to call a RFC to send the WebService response back to to R/3.

So, In the Integration Process the last step is a sending step to call the RFC.

I know it can be used the SendContext property of the Send Step, but as I know only arbitrary strings can be filled in this field. That forces me to use multiple Send Steps for each different R/3 system.

I would prefer to pass the content of the SNDPRN field of the original IDoc to the Receiver Determination of the ID.

My question is: Is there any way from BPM to specify the destination of the RFC passing the content of a element of the container, instead of creating multiple Send Steps on for each destination?.


Thank you very much,

Regards

Accepted Solutions (1)

Accepted Solutions (1)

engswee
Active Contributor
0 Kudos

Hi David

I think you can/should handle this in the Receiver Determination of the configuration scenario that sends the response to the RFC, i.e. ccBPM -> PI -> RFC.

In the ccBPM, your final Send Step should send out an intermediate message that contains SNDPRN of the original IDoc message. Then you can handle the determination of which R/3 system to route it back to via XPath expression or Enhanced Receiver Determination.

There is no real need to have multiple send steps because from the ccBPM point of view, it does not need to recognize the final receiver, it just passes it back to PI.

Rgds

Eng Swee

Former Member
0 Kudos

Hi Eng,

Thank you very much for your answer,


your final Send Step should send out an intermediate message that contains SNDPRN of the original IDoc message.


I have one question regarding your replay,


I thought adding a new field to the message (RFC) containing the SNDPRN of the original Idoc in order to be able of determining the receiver at the Receiver Determination. But didn't like to add a field not strictly necessary from the point of view of the body of the message.


I don't fully understand "Intermediate message" in your reply, May I suppose you and me are saying the same? would you, please, explain to me what "Intermediate message" means?

I resolved it in another way. I used the last option possible in the Send Step to determine the receiver: "Response to Message".

Additionally, I specified the Idoc message that was originally received. Doing that way the Receiver Determination is not necessary, as PI knows which the receiver is, and the message routes to the Business System that sent the Idoc.


Thank you very much!!

Regards.

engswee
Active Contributor
0 Kudos

Hi David

Glad to know you found an alternative way to resolve your issue.

Regarding "intermediate message" I meant the message type of the abstract service interface that is used for the ccBPM. Since ccBPM uses abstract interfaces, it is not necessary that the message type used is the same as the final one used to deliver to the target system.

Ignore what I said if it doesn't make sense.

Rgds

Eng Swee

Former Member
0 Kudos

Hi Eng,

I Understand know.

Make a copy of the message (RFC), add a field to the message used in the abstract interface in BPM and later on, when mapping to the message in the Outbound (non abstract) interface ignore that field.

That is a very good solution.

Thank you very much!!

Regards

engswee
Active Contributor
0 Kudos

Exactly!

Answers (0)