Showing results for 
Search instead for 
Did you mean: 

SAP PI - Determine the receiver based on Source FileName

0 Kudos

Hi all,

Ive an issue regarding receiver determination based on a Source FileName.

Ive a file to file scenario without any ESR objects. 

The FileNames look like this:

CRM_<all Other Values>_TimeStamp

Based on the source FileName I need to send Files containing the value 12345 to Receiver 1 and all Files containing other values except 12345 to Receiver 2

I try this in the Iflow:

(ContextObject.FileName CP "*12345*") --> Reiceiver 1  --> This is working

(ContextObject.FileName != "*12345*") --> Reiceiver 2  --> This is NOT working

Ive red that (Not) Equal to with a Wilcard (*) is not working.

So what is the solution here? How can I achieve this and solve this issue?

Your help is appreciated,

Kind regards


View Entire Topic
0 Kudos

Hi John,

@pi_consultant1 wrote:

Hi Caner,

I selected the Receiver 2 as a default Receiver and when I test it with 2 receiver it works 🙂

But I didnt think it would matter but there is also another Receiver where all file should go to. 

So when I add this receiver (receiver 3) than the files dont go to default receiver (Receiver 2) anymore. 

Any idea why is that? And how to solve it?

Thank you!

"Default Receiver" selection works as "otherwise". If the iFlow cannot find any receiver, the "Default Receiver" becomes the receiver. In your case "Receiver 2" cannot receive files if it defined as the "Default Receiver" and "Receiver 3" is the receiver where all file should go to.

In this case, it's necessary to define the correct Xpath statement for "Receiver 2".

Good luck.


0 Kudos

Yes, I tested that and it didnt work.

Also I tested it with different Xpath statements and it is still not working. The latest Xpath Statement I used and its not working is this:

[not(contains(ContextObject.FileName, '12345'))]

And I use it as this in the editor:


Any suggestions?