Skip to Content
0

Receiver determination conditons apply

Apr 18, 2017 at 03:19 PM

37

avatar image
Former Member

Hi Experts,

I am having IDOC to many receivers interfaces. receivers are detemined in RD of PI 7.1

I have the following 2 fields from the E1ABC1 segments( Language and Country) for which RECEIVER1 has to be determined which works fine as both the fields are from same segment.

we have around around 5 coutries and 5 language..I am using AND for country and Language OR to differentiate combinatiions and it works perfectly fine.


COUNTRY = US AND LANGUAGE = EA OR

COUNTRY = ZN AND LANGUAGE = JH OR

COUNTRY = AS AND LANGUAGE = DS OR

COUNTRY = KY AND LANGUAGE = KE OR

COUNTRY = UK AND LANGUAGE = EU

Now to one of this combination, I have to put another condition from idoc controld record as in,

MSGTYP = SALE AND COUNTRY = IN and LANGUAGE = HD OR

COUNTRY = US AND LANGUAGE = EA OR

COUNTRY = ZN AND LANGUAGE = JH OR

COUNTRY = AS AND LANGUAGE = DS OR

COUNTRY = KY AND LANGUAGE = KE OR

COUNTRY = UK AND LANGUAGE = EU

( here MSGTYP) is from Control record of an idoc, when i added this, its working very weird PI is taking random combinations from different segments and passing the conditions.

it take US and from line1 and KE from line 3 and says receiver found which is invalid.

this is happening just with the addition of 3rd entry in the condition.

Can someone please advise here.

thanks

10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

1 Answer

Mark Dihiansan Apr 19, 2017 at 03:12 AM
0

Hi,

Simplify your xpaths by using the EX operator. The blog below is relevant for your requirement.

https://blogs.sap.com/2006/06/07/customise-your-xpath-expressions-in-receiver-determination/

Something like this :)

[(MSGTYP = "SALE" and COUNTRY = "IN" and LANGUAGE = "HD") or (COUNTRY = "US" and LANGUAGE = "EA") and so on...)]

Regards,

Mark

Share
10 |10000 characters needed characters left characters exceeded