cancel
Showing results for 
Search instead for 
Did you mean: 

Condition receiver determination: Condition Editor

Former Member
0 Kudos

Hi,

I have to ruote the message to multiple receivers based on source filed value.

1) If FIELD-A = 1 or 2 or 3, we have to send it to RECEIVER-1

root/FIELD-A = 1 or root/FIELD-A = 2 or root/FIELD-A = 3 = RECEIVER-1

2) If FILED-A # 1 or 2 or 3 (anything other than 1,2 and 3), we have to send it to RECEIVER-2

3) No matter what the FIELD-A value (1,2,3,4, anything), we have to send it to RECEIVER-3

I have configured it in condition receiver determination:

Conditions 1 and 3 are workign fine, but how do I make condition-2 work?

I have tried to give root/FIELD-A # 1 or root/FIELD-A # 2 or root/FIELD-A # 3 = RECEIVER-2, It didn't work, even if the value is 2, message is being send to RECEIVER-2.

How define 2nd condition in condition editor?

Thanks in advance,

Riya Patil

Accepted Solutions (1)

Accepted Solutions (1)

Shabarish_Nair
Active Contributor
0 Kudos

riya,

you might have to do a little customization of your xpath statement.

/people/shabarish.vijayakumar/blog/2006/06/07/customise-your-xpath-expressions-in-receiver-determination - use the condition and enforce the EX operator. Remember the brackets are important. follow as mentioned in the blog

Former Member
0 Kudos

Hi Abhishek/Shabarish,

I have tried to customize the condition using X-path as below: /p1:BOL[Revision != "1" or Revision != "2" or Revision != "3"] (In XPath Expression in Expression Editor). Where BOL is the root node and Revision is the filed value that we are checking and would like to send an e-mail if the value is not 1 or 2 or 3.

But the above XPath expression is not wotking. I have sent a file with Revision = 4, it didn't send to e-mail receiver.

One thing I have noticed, in the expression editor, when we select XPath, I dont see the structure of the message type as shown in the blog. We are on PI7.0 and SP12, is this reason? Or Am I giving wrong XPath express?

Thanks in advacne,

Riya Patil

Former Member
0 Kudos

Hi,

Customizing the condition using X-path as /p1:BOLRevision != \'1\' or Revision != \'2\' or Revision != \'3\ does work.

It doesn't send an email when ever Revision is 1 or 2 or 3. But we would like to send to an email receiver when ever the value is other than 1 or 2 or 3. If the Revision value is 4 or 5 (anything other than 1,2 or 3), we would like to sens to an email receiver.

With the above expression, it doesn't send to an email receiver if the Revision=4. Any help would appreciate.

Thanks,

Riya

jose_augastine3
Active Participant
0 Kudos

Hi Riya,

Hope this helps !!!

/people/venkataramanan.parameswaran/blog/2006/03/17/illustration-of-enhanced-receiver-determination--sp16

Regards,

J Augastine

former_member200962
Active Contributor
0 Kudos
One thing I have noticed, in the expression editor, when we select XPath, I dont see the structure of the message type as 
shown in the blog. We are on PI7.0 and SP12, is this reason?

Have you included the Sender Message Interface properly under your Sender Business Service/ System? If already done, then recreate the Receiver Determination.

If possible attach a screenshot of the Condition Editor on some commonly accessible site. I dont think enhanced RD is needed.

Regards,

Abhishek.

Former Member
0 Kudos

Hi Riya,

Please give following condition and check.

 (/BOL[(Revision != '1'and Revision != '2' and Revision != '3')]) EX 

Also if you are not able to see Message type in XPATH, please check if that software component is present in corresponding technical system of source busniess system in SLD.

Once you see messagetype in XPATH, just select corresponding Revision Field in XPATH Editor and give above condition. Operator should be exists.

Let me know if you face any issue.

-Gouri

Answers (3)

Answers (3)

Former Member
0 Kudos

Hi Riya,

Try this.

 (Field != '1'and Field != '2' and Field != '3') EXIST 

-Gouri

Former Member
0 Kudos

Hi,

In Condition Editor of Receiver Determination, I dont see "!=?" opearation. There are only 4 opearations: =, #, ~~ and EX.

I tried to use #, it didn't work. How do I use "!=" operation??

Thanks,

Riya Patil

former_member200962
Active Contributor
0 Kudos
In Condition Editor of Receiver Determination, I dont see "!=?" opearation

!= is not an operator present in the Dropdown......it is a combination of two keys from your keyboard (the exclamatory sign ! and = sign) ..... the expression suggested is as per the examples described in this blog:

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

Regards,

Abhishek.

former_member200962
Active Contributor
0 Kudos
2) If FILED-A # 1 or 2 or 3 (anything other than 1,2 and 3), we have to send it to RECEIVER-2

I mean you want to say that the value is not 1/2/3. Try below condition format:

root[(FIELD != "1" or FIELD != "2" or FIELD != "3")]

Middle operand will be EX.

Regards,

Abhishek.

Former Member
0 Kudos

Any help would be appreciated.

- Riya Patil