cancel
Showing results for 
Search instead for 
Did you mean: 

Re:receiver determination Condition unable to pass valid condition

Former Member
0 Kudos

Hi All,

I am getting pronblem in specifying condition:

Condition is to have a

Field in a segment 10 or 20

AND

Field in a segment A

AND

Field in a segment B

If the adove condition is true then IDOC is passed orelse NO

I wrote a Xpath condition in receiver determinaiton as below:

(/p1:DEBMAS05/IDOC/E1KNA1M[(E1KNVVM/VTWEG = "10" or E1KNVVM/VTWEG = "20" and ELKNVVM/VKORG = "A" and ELKVNNM/SPART = "B")] EX )

Name space is p1: name space name

Even IDOC has these values IDOC is not passed.

SXMB_MONI Trace is as below:

<Trace level="2" type="T">Check conditions for rule line no. 1</Trace>

<Trace level="2" type="T">......extracting (old) for Extractor: XP /p1:ZEU_DEBMAS05/IDOC/E1KNA1M[(E1KNVVM/VTWEG = "10" or E1KNVVM/VTWEG = "20"and ELKNVVM/VKORG = "A" and ELKVNNM/SPART = "B")]</Trace>

<Trace level="2" type="T">......extracting values found: 0</Trace>

Any Inputs?

Thanks

Rajeev

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

Solved by myself

Former Member
0 Kudos

Hi Rajeev,

I forgot to mention in my last post, instead of or, and try giving OR AND in your condition (use capital letters) and see.

Regards,

---Satish

Former Member
0 Kudos

Rajeev,

Can you try with Extended receiver determination?

This isnt much complex. You need to use Basis objects and create a new MM and in Receiver determination, provide this mapping instead of your condition.

This ways we can come over the context settings while determining receiver and also check occurrences of node and we can route accordingly.

Just search "extended receiver determination" you will get blogs as how to do it.

It also provides excellent way of testing our recvr determination step in MM.

Venkat.

Former Member
0 Kudos

Hi Rajeev,

It seems there is some problem in your xpath. Try this xpath and see:

(/p1:DEBMAS05/IDOC/E1KNA1M((E1KNVVM/VTWEG = "10" or E1KNVVM/VTWEG = "20") and ELKNVVM/VKORG = "A" and ELKVNNM/SPART = "B") EX )

Regards,

---Satish

Former Member
0 Kudos

Hi,

I used the (( instead of [(

and also used or condition in () but still the same..

I am using just or condition in the xpath but still it is not passing the IDOC.

If I use normal = then its working ..

(/DEBMAS05/IDOC/E1KNA1M/E1KNVVM/VKORG = A AND /DEBMAS05/IDOC/E1KNA1M/E1KNVVM/SPART = 01 AND /DEBMAS05/IDOC/E1KNA1M/KTOKD = B)

Is it possible to use OR operation along with this??

((Filed=10 or 20) and A and B and 01)

Thanks

Rajeev

Former Member
0 Kudos

Hi Rajeev,

Can you source xml so that somebody can help you out with xpath itself.

Regards,

---Satish

Former Member
0 Kudos

DEBMAS

--IDOC

---BEGIN

---EDI_DC40

---E1KNAM

-


E1KNVVM

-


FIELD1

-


FIELD2

-


FIELD3

I need to pass IDOC if

FIELD1 is 10 or 20

FIELD2= A

FIELD3=B

I am unable to create EX express.. If I use + and add direct value its working.. but I am unable to work on OR condition. any inputs are appreciated.

Thanks

Rajeev

Former Member
0 Kudos

Hi,

Try this

(/DEBMAS05/IDOC/E1KNA1M/E1KNVVM/Files1 = 10 AND /DEBMAS05/IDOC/E1KNA1M/E1KNVVM/field2 = A AND /DEBMAS05/IDOC/E1KNA1M/E1KNVVM/field3 = B) OR (/DEBMAS05/IDOC/E1KNA1M/E1KNVVM/Files1 = 20 AND /DEBMAS05/IDOC/E1KNA1M/E1KNVVM/field2 = A AND /DEBMAS05/IDOC/E1KNA1M/E1KNVVM/field3 = B).

The Idea is Keep AND condition together. In your case you have to make 2 condition baranches with AND and then on top you need to keep the OR.

<Exp . with AND > OR <Exp. With AND>

Shweta.

Former Member
0 Kudos

resolved by myself by using all conditons as:

Field=A and Field=19 OR Field=A and Field=89

Thanks

Rajeev