cancel
Showing results for 
Search instead for 
Did you mean: 

Mapping in a Business Process

Former Member
0 Kudos

Hi,

I have a business process. This process is calling one webservice first. To call the second one the result from the first webservice and the input for the whole business process is needed. How can I create a mapping for this or solve this problem otherwise?

When I try to create a mapping I am only able to choose one import massage, but I have to map all required variables for the output.

Thank you!

Julia

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

You could do it like this:

Make a parallel switch first. On one branch you call your first webservice, on the other branch just pass on the information required later.

Make sure that you told the parallel step that both branches need to be completed before the process goes on.

Then put both messages together when the branches join again, just map the two messages into one. This is done, as Anand said, by just adding another message on the origin side in the message mapping "messages" pane.

Then call the second webservice with all the information gathered.

I hope that helps,

Jörg

Message was edited by: Jörg Thiesmann

manish_bhalla2
Contributor
0 Kudos

Hi Julia and Jörg,

You don't need the parallel switch. Since the incoming message (that starts the business process) is received into a container, it is then available throughout the entire process, until the container is overwritten.

So you can do the call to the webservice, and after that, just do a merge map with the two source messages and one target message.

e.g.

incoming start message -> Container1

webservice request -> Container2

webservice response -> Container3

mergemap result -> Container4

so at the mergemap step, source messages are in Container1 & Container3. The target message will be in Conatiner4.

Hope this makes sense.

Cheers

Manish

Former Member
0 Kudos

Hi Manish,

thank you for your answer. With container you don't mean a container operation, right?

Julia

Message was edited by: Julia Seifert

manish_bhalla2
Contributor
0 Kudos

Hi Julia,

No, not the container operation. I mean the container itself.

To use a message in the BPM process, you have to declare a container for it ( the lower right frame on the BPM screen).

Cheers

Manish

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi,

thank you for the answer. How can I pass the required date?

Bye

Julia

Former Member
0 Kudos

Hm, there may be several ways to do this.

Does your first webservice do anything with the data? Do you need a special format for the data? Otherwise you could just use the part you need for it, write the results into the message and drag the rest on to the next step (without using different branches).

If you need to split up the message, I would write a mapping which splits the message, then use the "Multiple Condition" operation to channel the resulting messages to the right branch. The keyword there is "Correlation", you need to define a correlation in the Multiple Condition such that the process knows which way the message has to take.

Former Member
0 Kudos

Hi Julia,

In the message mapping editor, switch to the 'Messages' tab page. Here you will be able to add multiple messages for your mapping using + (insert) button.

http://help.sap.com/saphelp_nw04/helpdata/en/42/f3ca2529491bc7e10000000a11466f/content.htm

Regrads

Anand