Effective in version 10.0, you can configure dynamic mappings to change sources, targets, and transformation logic at run time based on parameters and rules that you define. You can determine which ports a transformation receives, which ports to use in the transformation logic, and which links to establish between transformation groups. Dynamic mappings enable you to manage frequent metadata changes to the data sources or to reuse the mapping logic for different data sources with different schemas.
Dynamic mappings include the following features that you can configure:
Dynamic sources allow changes to the metadata in flat file and relational sources at run time. When the metadata in a flat file or relational source changes, Read and Lookup transformations can get data object columns directly from the dynamic sources at run time.
Transformations can include dynamic ports, which receive one or more columns that can change based on the rules that you define. You can define rules to include or exclude columns in a dynamic port.
The following transformations can include dynamic ports:
You can define a port selector in the Joiner transformation, in the Lookup transformation, and in the Expression transformation. A port selector is an ordered list of ports that you can reference in the transformation logic. Configure a port selector to filter the ports that flow into the transformation and to reference the ports in a join condition, a lookup condition, or a dynamic expression.
You can define a dynamic expression in an Expression transformation. A dynamic expression returns results to a dynamic output port. You can reference a port selector or a dynamic port in a dynamic expression. When you reference a dynamic port or a port selector, the dynamic expression runs one time for each port in the dynamic port or the port selector. The Expression transformation generates a separate output port for each expression instance.
Dynamic targets allow you to define the columns for flat file and relational targets at run time. Write transformations can generate columns for the targets at run time based on an associated data object or the mapping flow. Write transformations that represent relational targets can also create or replace tables at run time.
Transformations can have links between groups that determine which ports to connect at run time based on a policy or a parameter.
Sources and targets, rules for ports, and transformation properties can change at run time based on parameters.
For more information about dynamic mappings, see the "Dynamic Mappings" chapter in the