on 09-14-2009 10:24 PM
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
Solved by myself
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
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
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.
User | Count |
---|---|
85 | |
10 | |
10 | |
10 | |
7 | |
6 | |
6 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.