cancel
Showing results for 
Search instead for 
Did you mean: 

ELSE Condition in Interface Determination

former_member745782
Active Participant
0 Kudos

I'm working with PI7.1

I have 2 operation mapping.

I need set a condition like this:

If xpath field exist then go to Operation 1

else (if not exist) then go to Operation 2.

No problem for first point but.... How to set condition ELSE??

or NOT EXIST?

any suggestion?

thanks in advance

PS: i don't want use BPM

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi,

You can see this blogs and come up with an expression:

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

/people/suraj.sr/blog/2006/01/05/multiple-inbound-interfaces-within-a-service

Regards,

---Satish

former_member745782
Active Participant
0 Kudos

@Luis : the logic [] is inside the single condition. So is not my case

@Venkataramesh : yes, it's my case but in this forum is not possible understand how set this value. I try everywhere inside Int. Det. but i don't find how set it.

@Satish : in both link they don't talk about my problem

??

Former Member
0 Kudos

Hi,

In the interface determination use this conditions

if Source_variable = 0 (Means source node exists) corresponding mapping

if Source_variable <> (there you can find not equals syumbol) 0 (Means source node not exists) corresponding mapping

Regards

Ramesh

former_member745782
Active Participant
0 Kudos

i'm not talking about a node.

I'm talking about a field.

so if i use this condition:

if Source_variable (there you can find not equals syumbol) 0 (Means source node not exists) corresponding mapping

condition will be always satisfacted.

Maybe i'm not explained correctly.

My situation is follow:

DataType

- Row

- field1

- field2

- field3 ******

Field3 sometimes exist...sometimes no. If exist i need execute one mapping (mappingA). Else a different one (mappingB).

I hope now you understand me.

stefan_grube
Active Contributor
0 Kudos

> DataType

> - Row

> - field1

> - field2

> - field3 ******

>

> Field3 sometimes exist...sometimes no. If exist i need execute one mapping (mappingA). Else a different one (mappingB).

> I hope now you understand me.

/p1:DataType[ count (Row/field3) = 0]  EX

or

/p1:DataType[ count (//field3) = 0] EX

This is valid, when no field3 is available in the whole structure, which is the opposite to:

/p1:DataType/Row/field3  EX

Edited by: Stefan Grube on Mar 24, 2010 9:42 AM

Former Member
0 Kudos

Hi,

Check the Udo reply in my previous link.

count(//myElement) eq 0

This is applicable for field also. Check by using field.

Regards

Ramesh

former_member745782
Active Participant
0 Kudos

thanks Stephan!

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi,

Check this link

Regards

Ramesh

Former Member
0 Kudos

On receiver determination. clik on button [] to add another line as "Or" condition and put your logic.