cancel
Showing results for 
Search instead for 
Did you mean: 

complex flow in PI

Former Member
0 Kudos

hello,

i want send a very important question to very expert in PI BPM.

I created a interface using Async-Sync bridge.

On details:

i have a JDBC (Async) -> PI -> JDBC (Sync) -> PI -> RFC (Async)

Everything ok but...

I would like use RFC in Sync mode instead of Async , and...send the RFC response to another JDBC channell.

what do you think??? it's possible?? how??

Thanks in advance

Alessandro

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Hi Alessandro,

Kindly go through the below weblog in which a similar kind of scenario was executed using a complex BPM. You will definitely get a practical idea.

/people/abhy.thomas/blog/2007/01/18/xi-content-certification-in-a-b2b-scenario--case-study

Thanks,

N.Jayanth Kumar

Former Member
0 Kudos

Alessandro,

It is possible. In BPM where ever you use the send step for RFC make it as sync. But it seems your BPM is complex and you should take care of error handling efficiently (because it can break in so many steps).

Regards,

---Satish

former_member200962
Active Contributor
0 Kudos
what do you think??? it's possible?? how??

yes it is very much possible....just use a Sync RFC thats all.....make sync call to the RFC get the data into the BPM....map it to the JDBC receiver structure and send......

The only thing that you need is a sync RFC instead of the present Async one......just ask your SAP peers to provide you with a RFC which has a Req-Resp structure (and may be an error structure also to populate any error)......and you are done with the design:)

A sync RFC is like a sync SOAP wsdl with a req and resp message which you can use in your Sync MI/ SI....just FYI....

Regards,

Abhishek.

Former Member
0 Kudos

mmmhhh......

look.

in my Operation Mapping i have 2 Message mapping

Request : mapping between Async outbound message and Sync inbound

Response : mapping between Sync outbound and Async Inb. (the RFC)

Fault: nothing to map

so now if i change RFC in Sync mode... where i can map the follow step??

it's not very clear...

Former Member
0 Kudos

Alessandro,

You will have two operational mappings. Currently the one which you are having is from jdbc to jdbc. Create an abstract interfce for the reponse in BPM and the response of the jdbc mapping you will send as request to RFC in your second operational mapping. So the response of your RFC you need to map to your file output.

Regards,

---Satish

former_member200962
Active Contributor
0 Kudos

Design your BPM like this:

Receive(JDBC1Req) -


>Transfformation(JDBC1Req_to_JDBC2Req) -


>SyncSend(JDBC2Req, JDBC2Resp) -> Transformation(JDBC2Resp_to_RFCReq)->SyncSend(RFCReq, RFCResp)>Transformation(RFCResp_to_JDBC3Req)--> AsyncSend(JDBCReq).

Request : mapping between Async outbound message and Sync inbound
Response : mapping between Sync outbound and Async Inb. (the RFC)

If i am not wrong you cannot define a mapping between a Async and Sync MI.....your source and target MIs have to be either Async or SYNC.....

Just create your BPM as per the steps which I gave....also has a mention of what mapping you will need and between what Interfaces......

As a good practice when you are making a Sync Call, include your Sync Call inside a Block Step (which has Exception Branch defined) so that you can raise an exception/ alert if something goes wrong in the SYNC call........

Regards,

Abhishek.