cancel
Showing results for 
Search instead for 
Did you mean: 

EOIO in Multimapping scenario

Former Member
0 Kudos

Hi Experts,

We have a scenario where we have the following requirements.

1. For different values of a node A, we need to create as many different output messages as the values of A. For instance if we have 5 different values for A in source, 5 files will be created in target.

2. Secondly, for another node B (same level as A), we need to create one single message (which has same data type but vary from 1 in optional fields).

So you can consider 1 as different item files for different countries going as separate XI message and 2. as the summary of the same going as a separate file.

Requirement is all 5 (or any number which comes at source) files should be delivered 1st and only after that the one mentioned in step 2. should go to receiver.

Although, I have configured "Maintain order at Run time in Interface Determination" but I am not sure whether the messages which are split by Adapter Engine would infact guarantee an EOIO scenario( especially because the Service Interface for 2. is same as 1), where first those 5 messages should go followed by the next single message.

It would be great if somebody can logically explain the way forward. If this doesn't work, then will using a different service interface for 2 guarantee EOIO?

Best Regards,

Pratik

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi Pratik,

We faced a similar "induce delay in processing issue" with one of our interface. But thankfully, the requirement changed in the future. Based on my experience I can suggest two approaches, although it is not on the lines of an EOIO scenario that you are looking at:

1) Approach 1: Use a message split, have two separate message mappings and put a delay in your message mapping 'B'.

Minus of this approach - The mapping will be in halt state in PI, consuming some of the resources.

Workaround - Because you have not mentioned the source format in your case, I am safe to assume it as file and if it is, you can configure a separate channel for your B scenario with a delay in its polling interval as well.

2) Approach 2: Create the file for Scenario B and "Run OS Command After Message Processing", run a script and put an access lock for say 30 mins.

Assumption: You output format is file.

Workaround - None, its a grey area even for me.

Do let me know your thoughts about it.

Best Luck,

V J

Former Member
0 Kudos

Hi V J,

Scenario is as follows:

MDM sends 1 source message its split into n targets as per step 1 and 1 more message as per step 2 in my earlier reply. So, the Service interface for source is same and the Service interfaces for all n +1 (1 and 2 combined) is also same just that for 2 there is one section of that Service Interface which is popualted and for 1 the other part.

Once done this is sent to SOAP adapter from where using the XI protocol configuration for SOAP Receiver Channel this is forwarded to Java Proxy Runtime in another Adapter Engine. And the requirement is to guarantee the order in which receiver receives the file.

Let me know your opinion in this regard.

Best Regards,

Pratik

Former Member
0 Kudos

Hi Pratik,

Then in that case my suggestion would be option 1 of my earlier reply.

That will help you to get the necessary delay in place.

One more question, what is the frequency at which MDM sends these files?

Regards,

V J

iaki_vila
Active Contributor
0 Kudos

Hi Pratik,

Requirement is all 5 (or any number which comes at source) files should be delivered 1st and only after that the one mentioned in step 2. should go to receiver.

Inside a multimapping seems difficult to establish an order, i think is not possible, but im not sure.

In my opinion, you should to use a ccBPM for this purpose, at first you generate the step 2 file and in the next step you generate the step 1 one.

Regards.

Former Member
0 Kudos

Hi Inaki,

Thanks for the reply. I am aware that inside multimapping its difficult to guarantee order but how about Interface Determination "Maintain Order at Runtime". So, if we create 2 different mappings for 1 and 2 and then maintain order at runtime in Interface Determination. I think ,this would help us in guaranteeing the order right?

Let me know your opinion?

Best Regards,

Pratik

Former Member
0 Kudos

Hi,

Maintaining order at runtime will only ensure the sequencing in PI but having said that it will not ensure that the messages are received in the same order in reciever system.

Thanks

Amit Srivastava