cancel
Showing results for 
Search instead for 
Did you mean: 

Enhanced Receceiver Determination and BPM

Former Member
0 Kudos

Hi Expert,

Based on some conditions in the input file I need to route it to BPM or file receiver? Please let me know if I can use enhanced receiver determination?

Thanks

Suma

Accepted Solutions (0)

Answers (4)

Answers (4)

baskar_gopalakrishnan2
Active Contributor
0 Kudos

Basically you can choose your receiver based on content. SO you dont need Extended Receiver Determination. You might want to use XPATH and decide logic for the routing the message to appropriate receiver,

Use just standard receiver determination only.

rajasekhar_reddy14
Active Contributor
0 Kudos

you dont required Enhanced receiver determination for this, normal receiver determination ther only you can write codnition easily.

Former Member
0 Kudos

Duplicate post!!

Edited by: Supriya Sawant on Apr 18, 2011 2:18 PM

Former Member
0 Kudos

Hi,

If the Receivers are fixed, then you will not need Enhanced Receiver Determination ; instead you will need to define Conditional Receiver Determination. In this, based on the conditions, the file will be routed to the corresponding receiver. Also, BPM willnot be required to handle this requirement.

-Supriya.

Former Member
0 Kudos

How to check if there is any value in input field in xpath?

Thanks

Suma

Former Member
0 Kudos

Hi,

U can check this link, maybe help to you..

[http://wiki.sdn.sap.com/wiki/display/XI/XpathConditioninReceiverDetermination]

[http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/3416] [original link is broken] [original link is broken] [original link is broken];

Former Member
0 Kudos

My scenario is actually soap to rfc synchronous...

I want to check if in soap request the fields are having blank value.

case1 : If the input fields are having blank value then I need not call the RFC and I have to sent the response as Fields are missing.

case2 : If the fields are not having blank value then I need to check whether XI is able to connect to R/3. If XI is not able to connect to R/3 then I need to send the soap response as "R/3 server is down". This one am doing with BPM using exceptions.

case 3: when fields are not blank and XI is able to connect to R/3 then call rfc and send soap response to third party

How can I validate step1?

Thanks

Suma S

Former Member
0 Kudos

How many inputs fields to be validated ?

In reciever determination, you may use Condition Editor to specify the condition under "Configured Receivers" .

You can use AND/OR expressions using "Insert expression" & "Insert Group" option under condition editor.

Left operand - select the field on which the validation is to be performed.

Operation - select one of the available options.

Right operant - put values against which the input fileds is to be checked (Blank/ any hardcoded value)

Thanks

-Jyoti

martin_dejl2
Participant
0 Kudos

Hi,

try to implement switch in your BPM. There you can define conditions for every branch.

Nevertheless I think you should consider if it's possible to change the logic. For case1, the response "fields are empty" should be send by RFC. Simple IF iv_field1 IS NO INITIAL ... or IF iv_field1 IS NOT SUPPLIED or similar logic should do the same and you don't need BPM. If in case1 R/3 system is not available the error is actually "R/3 server is down" - case2.

In case2 implementing of FaultMessage in Inbound and Outbound interface should solve the problem. The Adapter will fail on "Timeout", "Receiver not reached" or similar exception and this error you can transform in IM into any exception(fault) message you like for your SOAP client.

For more info about forwarding exceptions in synch scenario read for example this blog

/people/sap.user72/blog/2006/01/16/xi-propagation-of-meaningful-error-information-to-soap-client