cancel
Showing results for 
Search instead for 
Did you mean: 

Calling 3 RFC/BAPIs sequencially in PI - SOAP to RFC Scenario

Former Member
0 Kudos

Hi All,

Well my scenario is that, I need to create a Notification Number inside SAP ECC using a 3rd party tool. To be more precise, I need to use the BAPI "BAPI_ALM_NOTIF_CREATE " in a SOAP to RFC scenario (using PI). But Only using "BAPI_ALM_NOTIF_CREATE " does not create a notification number directly into SAP database. It only gives temporary value which needs to be used as input in "BAPI_ALM_NOTIF_SAVE" and finally use "BAPI_TRANSACTION_COMMIT" to create the number in SAP database.

I cant use custom Z programs or Custom BAPI/RFCs. It has to be standard one. So my question is how do we link these 3 BAPIs one after the other sequencually in SAP PI to make it work. Any ideas.

Thanks,

Shravan

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

After posting one more solution evolved to me..

though i have not worked with this ..but what you can try is..

SOAP - RFC - RFC

SOAP - Message type - Asynchronous

RFC - Message type - Synchronous

RFC - Message type - Asynchronous

Use Request Response Bean Module and pass the respose received from the first RFC to the second RFC receiver adapter..

This can be the easiest approach i believe but you have to try it..

Cheers

Rajesh

Former Member
0 Kudos

Hi,

One solution with out BPM can be to have two scenarios of PI.

SOAP - RFC - File

File - RFC

1. SOAP - RFC - File - Retrieve the Response of BAPI and store the data in File

(you can use Request Response Bean for this to achieve and ensure that only one file exists in the folder always..)

2. File - RFC ( Pick the file generated from the previously step and pass it to ECC

(There is an option in Advance Mode of RFC Receiver for calling Commit statement for BAPI..)

In this solution you need to ensure that the file picks up before the generation of new file else there is a possibilty that one of the SOAP request can become void..

Else go for ccBPM with two send steps one synchronous and another asynchronous..

HTH

Rajesh

markangelo_dihiansan
Active Contributor
0 Kudos

Hello,

Since your scenario is SOAP to RFC, your target RFC should be BAPI_ALM_NOTIF_CREATE. Then in the response mapping (since it is synchronous), do two RFC lookups in sequence:

1. BAPI_ALM_NOTIF_SAVE

2. BAPI_TRANSACTION_COMMIT

If this is not feasible for you, you should use BPM as suggested by Udo.

Regards,

Mark

udo_martens
Active Contributor
0 Kudos

Hi  Shravan,

you can build a Business Process what is calling the BAPIs one by one. I think they are synchronous, so just will receive the response before call the next one.

If they are asynchronous, then request an acknowledgment to asure the right sequence.

Regards,

Udo