cancel
Showing results for 
Search instead for 
Did you mean: 

HTTP -> Xi -> RFC : Handle rfc return in bpm

laurent_touillaud
Contributor
0 Kudos

Hi,

I have configured receiver RFC and calling synchronous BAPI works perfectly.

Now the response message in RFC is containing results in return table and even if it's a error message the xi message is in ok status (sxmb_moni). My request is how can i force the error in sxmb_moni. I thought of adding a branch according to return type but then how to force error message when return type is A or E in return table?

Thanks,

Laurent.

Accepted Solutions (1)

Accepted Solutions (1)

turmoll
Active Contributor
0 Kudos

Hi,

Have you looked at the SAP note: [730870 - FAQ XI 3.0/ PI 7.0/ PI 7.1 RFC Adapter|https://service.sap.com/sap/support/notes/730870], especially

10: What's about BAPIs?

.

Regards,

Jakub

Answers (3)

Answers (3)

justin_santhanam
Active Contributor
0 Kudos

Laurent,

Have u tried this?

Place Block step. In the Properties give some Exception name. Inside the block keep Switch step. Check for condition return type is A or E , then in one of the branches (according to ur condition), place Control step - Choose Action as Throw Exception and Exception which u defined in the Block level.

raj.

laurent_touillaud
Contributor
0 Kudos

Hi Raj,

Yes i just tried this.

I then defined exception branch but how can i raise error for sxmb_moni in this branch with results of correct executed bapi call containing return table errors inside the message?

Regards,

Laurent

Edited by: laurent touillaud on Mar 19, 2008 3:14 PM

justin_santhanam
Active Contributor
0 Kudos

Laurent,

You must not use Exception Branch. If you use exception branch then u r catching this. As per my understandin ur scenario has to be errord out. So don't have Exception branch.

raj.

laurent_touillaud
Contributor
0 Kudos

Hi Raj,

I already tried this but it only raises work item error without significant error reason.

Regards,

Laurent.

Former Member
0 Kudos

Hi,

Probably you could create the Smart exception with the use of UDFs based on the response return type A or E.

/people/alessandro.guarneri/blog/2006/01/26/throwing-smart-exceptions-in-xi-graphical-mapping

smart sync processing exception is similar to your scenario

No need of BPm for this..you will get this exception in SXMB_MONi as you are looking for.

Thanks

Swarup

laurent_touillaud
Contributor
0 Kudos

Hi,

Thanks for your answers but unfortunately it did not work. I followed th blog you mentionned creating UDF function but the effect is it only creates a work item error in sxmb_moni_bpe. I think this is because the rfc is called inside a bpm.

Is there something else to do when you're inside a bpm to show error in sxmb_moni?

Thanks,

Laurent.

Former Member
0 Kudos

Hi Laurent,

in BPM after getting the response RFC msg, do a mapping in transformaion step - this mapping will map the RFC response to some dummy msg interface which you will not use later.............the purpose of this mapping is to throw exception based on return table's data...........so in this mapping, create a UDF..........take the relevant field as source............just check its valu in UDF.........if error situation, then you can throw a mapping exception to end your BPM process and in the trace add an entry for the RFC return msg in UDF and take the output of UDF to some dummy field of your msg interface.

Regards,

Rajeev Gupta