cancel
Showing results for 
Search instead for 
Did you mean: 

Optional target message - no errors raised

Former Member
0 Kudos

HI all,

I have been trying to find some information on how to deal with optional target messages in a message mapping/interface mapping.

I have a situation where one file can potentially create between 0 to 4 files and I don't want errors in production when no output files are created.

I know that there were some blogs about this but I have been looking for hours and I can't find any.

If anyone could give me some advice or could point me to the right blogs or forum threads I would really appreciate.

The PI version I am working on is 7.0... so a it's bit old.

Thanks for your help,

Aldo

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Aldo,

1st most important think to consider is the receiver structure main/parent node should have minOccur as "0".

In Interface Determination, its a condition based interface determination, hence mention the condition against each interface. if the condition satisfies mapping will be called otherwise it will generate the mapping.

Former Member
0 Kudos

Hi all,

Thanks for your replies so far.

I think that what I need is something similar to what Chandra said. I will have a Message Mapping with a source message occurrence of 1 and a target message occurrence of 0 to 1.

And the Interface Mapping should be the same. The target message should have a 0 to 1 occurrence.

So depending of what the source file contains I will either create the output or not.

However, I am not too sure about the part in configuration. The condition in the interface determination is not an option as I have a condition that is far too complicated. And it's the same for the Receiver determination...

Will it cause an error at run-time if an interface mapping doesn't produce any output?

Thanks for any additional help you can provide.

Aldo

rajasekhar_reddy14
Active Contributor
0 Kudos

If you dont produce output in interface determination some times it cause error hence write a condition Receiver determination , for some data you will not create Target message, so replicate the same condition Receiver determination.

if condition not satisfied in this case interface will not execute and no exception in Moni or adapter level.

Dont forget to select option ignore in receiver determination .

Regards,

Raj

Answers (3)

Answers (3)

Former Member
0 Kudos

OK Guys. Thank you all for the help.

I am taking Raj answer as conclusive for this thread and I am marking it as answered.

Cheers,

Aldo

Harish
Active Contributor
0 Kudos

Hi,

You can also go for some dummy interface. When no interface is satisfying the condition then route it to dummy interface. But this technique is usefull when you can not stop the message in Receiver determinition.

Regards,

Harish

rajasekhar_reddy14
Active Contributor
0 Kudos

Hi,

Write a condition in Receiver determination like when condition not satisfies select ignore option it will not throw any exception when condition not satifies.

Regards,

Raj