When a transformation has generated ports, you need to configure the transformation to run successfully when the generated ports change. You can use a port selector to determine which ports to use in a dynamic expression, a lookup condition, or a joiner condition.
A port selector is an ordered list of ports that you can reference in an expression. When the generated ports change in a dynamic mapping, the port selector can contain different ports.
For example, the following expression references a generated port in a dynamic mapping:
Salary * 12
You configure the mapping to use dynamic sources, but the column that contains salary information in each source file has a different name. The column names are
Salary
,
Monthly_Salary
, or
Base_Salary
.
You perform the following tasks to accommodate the different column names:
Create a port selector named "Salary_PortSelector."
Create a selection rule to accept any port name with the suffix "Salary."
Change the expression to include the port selector name instead of the salary column name. The expression has the following syntax:
Salary_PortSelector * 12
The expression runs successfully with any of the salary port names.