cancel
Showing results for 
Search instead for 
Did you mean: 

Reg. condition based receiver Determination

Former Member
0 Kudos

Hi,

I need to send the records to two systems based upon the value

For Ex. All the material group record letz say (1,2,3,4,5,6) Shuld go to Receiver1 and only the records which belongs to material grp shud go to Receiver2.

I am trying using Condition based Receiver Determination

For Receiver 1 :-

I didnot give any condition.Coz all the records have to go to Reciver1.

For Receiver 2 :-

I have written the condn in the Interface determination

i.e) Material Group = 2.

But All the records are going to these two receivers.I have tried everything.

Thanks in advance

Regards

Anandan

Accepted Solutions (0)

Answers (5)

Answers (5)

Former Member
0 Kudos

This is where the Extended reciever determination concept comes in to use.

You need to use the SAP interaface - ReceiverDetermination seen in the namespace http://sap.com/xi/XI/System in the SAP BASIS 7.00 component.

Typicall,one extra mapping - which decides your reciever.

http://help.sap.com/saphelp_erp2005vp/helpdata/en/43/a5f2066340332de10000000a11466f/frameset.htm

Former Member
0 Kudos

Anandan,

Similar situation has worked for me. Please check the condition you have mention in Interface Determination.

In the Interface determination you need to have 2 inbound interfaces. Specify the respective condition for each inbound interface.

Example: if the Response field has the value as "Success" or "Failure" the message has to go to first interface. The message has to go to second interface only if the response is "Failure". so you can provided following condition in the interface determination:

<b>Condition 1:For first inbound interface</b> (/p1:MessageType/RecordSet/Response = F) OR (/p1:MT_RESPONSE_FROM_PS_BI/RS/Response = S)

<b>Condition 2:For second inbound interface</b> (/p1:MessageType/RecordSet/Response = F)

The above condition has worked for me. Hope this would be helpful to you.

Regards,

Sridhar

Former Member
0 Kudos

Hi Sridhar,

I had tried already this too whatever u had mentioned ..

But this too sending all the records to the two target systmes irrespective of the condition.

I tried this condition in both receiver determination as well as interface determination.

Awaiting for your reply

Anandan

henrique_pinto
Active Contributor
0 Kudos

Anandan,

again, you can't separate the records in the XML file in other way than using a mapping.

Regards,

Henrique.

justin_santhanam
Active Contributor
0 Kudos

Anandan,

Refer the below thread. Page number :3 . I gave the solution to the same issue. If you have anydoubts in achieving the same, kindly reply back.

Best regards,

raj.

henrique_pinto
Active Contributor
0 Kudos

The condition in receiver determination can't split the XML message in several diferent messages containing only this or that record. Since the message attends the condition you have specified (because it contains a record for mat group 2) it will be sent to receiver 2.

If you do have that necessity, you will have to create different mappings for each receiver. In the case, the receiver determination should be exactly how you've done, but the interface determination should refer to another mapping. In this new mapping, only let the records for mat group 2 to be mapped to source message.

Regards,

Henrique.

former_member184619
Active Contributor
0 Kudos

Hi Krishna,

Check these blogs

/people/shabarish.vijayakumar/blog/2005/08/03/xpath-to-show-the-path-multiple-receivers

/people/shabarish.vijayakumar/blog/2006/06/07/customise-your-xpath-expressions-in-receiver-determination

and try giving the condition for Both.

Sachin

Former Member
0 Kudos

>>>For Receiver 2 :-

I have written the condn in the Interface determination

Make the condition at receiver determination level.

You need/ can use condition at interface determination only if there are more than one inbound interface for the same reciever.

Regards,

Jai Shankar