cancel
Showing results for 
Search instead for 
Did you mean: 

Receiver determination AFTER message mapping?

Former Member
0 Kudos

Hi!

My scenario is that PI 7.4 receives a message containing multiple purchase orders. I want to split this into multiple messages with one purchase order each and depending on a field in the message send it to one of several receivers.

I thought it would be simple by using a multimapping/message split mapping and then receiver determination mapping but I realize now that the receiver determination is executed first and does so for the original message and not each individual message resulting from the message split.

Is there a way to solve this?

One idea is to create a dummy business component to act as receiver and sender and divide my problem into two different integrations where the first one does the message split and sends to a dummy receiver and the second uses a dummy sender to do the receiver determination but it feels like a hack and I'm looking for a cleaner solution.

Best regards,

Richard Linnander

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Just to update my own question.

To solve this we required that the message sent should only containt records for one receiver. Then it is no problem that receiver determination executes first.

Answers (4)

Answers (4)

RaghuVamseedhar
Active Contributor
0 Kudos

Richard,

Let's say.

There are 5 receiver systems. There is a field 'To_whom' which determine receiver. A message came with 3 Purchase orders. Let's say, 3 'To_whom' fields, will be Receiver1, Receiver3, Receiver4.

Solution:

1. In enhanced receiver determination, generate XML with 3 receivers. Now entire PO (with 3 Purchase Orders) goes to 3 receivers.

2. In message mapping using 'To_whom' field suppress Receiver3 and Receiver4 PO's and map Receiver1 PO. Do the same thing for other receivers.

FYI. You can use one parameterized message mapping for all receivers ('To_whom' is input field).  

Former Member
0 Kudos

This is a good idea that I considered, I was just hesitant to send all POs to the receivers but maybe that is not too much overhead involved. Good point about the parameter.

A point I didn't mention is that I have 2 different interfaces for the receivers so the MultiMapping/filtering needs to handle that too.

I will consider this solution and see if it is doable,

thank you Raghu!

Former Member
0 Kudos

Hi Richard,

May you let me know what are the adapters you are using at sender side and at receiver side.

Regards,

Raju.


venkatanarayana_vagu
Active Participant
0 Kudos

In this case I recommend you to go for BPM patterns or iflows. When you use the BPM patterns, better go for splitter.

Refer this link:

Former Member
0 Kudos

Unfortunately we are using and old PI licence without PO capabilities. How is the performance anyway?

Is it possible to do anything in an iflow that is not doable in a standard ICO?

Former Member
0 Kudos