Search code examples
mappinginformaticainformatica-powercenter

Informatica Mapping: Joiner must have exactly two inputs


I get the following message when I try to validate the mapping (see Warning attached):

...Joiner jnr_Normal_jnr_Master_ZC_OR_Delay_Reason must have exactly two inputs.

WARNING: Joiner transformation jnr_Normal_jnr_Master_ZC_OR_Delay_Reason Condition field OR_CASE_ID1 is unconnected.

I have a joiner (jnr_Master_ZC_OR_Delay_Reason) and expression (exp_Text) that I would like to join. I tried to do this with a normal joiner (jnr_Normal_jnr_Master_ZC_OR_Delay_Reason). However, the data from the jnr_Master_ZC_OR_Delay_Reason does not connect to this jnr_Normal_jnr_Master_ZC_OR_Delay_Reason. See Joiners-Two Inputs attached.

Should I be using a different transformation to join the joiner and expression?

I tried to use Sorting but I still get the same error message. Am I using the Sorting correctly? Please see the attached images.enter image description here enter image description here


Solution

  • If you want to join flows that originate from the same source (let's call that a self-join), you need to have the data sorted on both branches of the flow and check the Sorted Input property on the Joiner Transformation (jnr_Normal_jnr_Master_ZC_OR_Delay_Reason in this case).

    A self-join is only allowed if both flows are sorted. Depending on your flow, it may be enough to sort data only once, before the flow gets split.

    Now, if you enable the Sorted Input property but the data will not be sorted, you will get an error while session execution.