cancel
Showing results for 
Search instead for 
Did you mean: 

XI design question

Former Member
0 Kudos

Hi all,

I'm a beginner in XI and I would like to seek some help for a design question I have on my current engagement.

Scenario:

Source System: J2EE Custom Built System

Middleware: XI (2004s)

Target System: SAP R/3 IS-H

1. Source system wants to retrieve a set of data from target system. Source system does this by initiating a synchronous SOAP request to XI.

2. XI receives the request. To get the required information, XI needs to invoke 2 BAPIs in the target system - BAPI_GET_PATIENT_DEMOGRAPHIC, BAPI_GET_PATIENT_ADMISSION_TYPE. Each BAPI will return a different set of data. XI will map the required fields from each of the 2 reply messages to the pre-defined message format required by the source system.

3. After mapping, XI sends the message to the source system, thus completing the interface.

My question is how can I perform step 2 - Invoking of more than one BAPI in a single interface and merging the results of the BAPI calls into a single message?

Any help is greatly appreciated.

Thank you in advance.

Ron

Accepted Solutions (0)

Answers (3)

Answers (3)

STALANKI
Active Contributor
0 Kudos

I would support UMS.If possible it is better to write a wrapper RFC that merges the output of 2 BAPI's into a single message or write a ABAP proxy that places the result in a single message rather than using a ccBPM where performance is hampered.

Former Member
0 Kudos

Hello chang,

You have to use BPM to perform 2 stp.

Why because you have to catch two responses from two different interfaces then u have to map them accordingly to sender.

You can do it easily using BPM.

1.receive step(open sync async bridge)

2.fork with two send (sync)steps based on condition response is received from two steps

3.transformstep

4.sendstep(close sync async bridge)

regards,

datta.

Former Member
0 Kudos

Hi Datta,

Thank you for your response.

Do you have an example for the BPM solution you've proposed?

I'm particularly interested in step (2) and step (3) of your solution, that involves invoking multiple RFCs, getting their responses, and mapping each response to a single message.

Thanks in advance.

Ron

Former Member
0 Kudos

Hello,

Just insert a fork step with two branches and make necessary braches to 2.

Insert send steps in both the branches.

As necessary branches is 2. Process will not proceed until u receive two responses from two RFCs.

If u can send ur mail Id i ll send the image of the process

Regards,

datta.

Former Member
0 Kudos

Hi Datta,

Thanks for your response again.

I'm contactable at ronlai78@gmail.com.

Please send me your setup together with the configuration details.

Greatly appreciate it.

Thanks.

Ron

Former Member
0 Kudos

Hi,

try this simple wrokaround..

Write a RFC in r/3 system and call both the bapi's inside the RFC. From XI, trigger this RFC.

Or else you have to use BPM.

Regards,

Uma