cancel
Showing results for 
Search instead for 
Did you mean: 

Syndicating different fields in an interface based on conditions.

Former Member
0 Kudos

Hi All,

Currently we are sending certain fields in an interface to a remote system. One of those fields include the separation date of an employee. I now need to change the logic based on whether the record is an 'Employee' or a 'contractor'

we want to check the u201CPerson Relationship Typeu201D and send either u201CSeparation Dateu201D or u201CAssignment End Dateu201D to remote system as part of this interface.

If Person Relationship Type = Contractor then

Field to be syndicated from MDM must contain the value of = Assignment End Date( A field in MDM )

Else

Field to be syndicated from MDM must contain the value of = Separation Date ( A field in MDM )

End If

How can I make the changes to the existing syndication map to include this logic?

Thanks,

Ankush

Edited by: Ankush Trivedi on May 5, 2011 7:51 AM

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hey,

This filter can not be put in MDM Syndicator,why not send all the fields from MDM and let PI filter it out as per your If-Else conditions.

In MDM, create a single map and send "Person Relationship Type", "Assignment End Date" and "Separation Date".Based upon "Contractor" or "Employee", "Assignment End Date" or "Separation Date" could be filled or empty.

Once the data comes in PI, you can simply put the condition in Message Mapping.

Thats the simplest way and we are following in some of our interfaces.

Thanks

Aamir

Answers (3)

Answers (3)

Former Member
0 Kudos

Thx All..This was solved by applying the logic in PI.

Former Member
0 Kudos

Hi Ankush,

We cannot use the same syndication map for both the cases.

Please create 2 outbound ports corresponding to the same remotesystem - port1 (for Employee) and Port2 (for contractor).

Then create 2 maps - map1 (mapping the Assignment End Date) and map2 (mapping the Separation Date)

Assign Map1 to port1 and Map2 to port2 through console.

Now use a workflow which will be as follows:

start -> branch(checks for the value of the field Person Relationship Type).

Branch1 - > if the value of the Person Relationship Type = contractor then put syndicate step and assign the port2 to the step, then stop workflow.

Branch2 -> if the value of the Person Relationship Type = Employee then put syndicate step and assign port1 to the step, then stop workflow.

Hope it helped.

Regards,

Sravan

former_member208981
Contributor
0 Kudos

Hi Ankush,

Fields to be syndicated cannot be controlled in MDM in one map. You can create 2 maps for it, but they will again go to different ports. PI can pick them and sent to destination system directly.

One work around is, map all the fields in MDM and sent them to PI. Implement the logic in PI, so that based on u201CPerson Relationship Typeu201D, PI sentd only the required field to the Destination system. This is very much possible.

Thanks,

Priti