Multi-Group Transformations
A transformation can have multiple input and output groups. A group is a set of ports that define a row of incoming or outgoing data.
A group is analogous to a table in a relational source or target definition. Most transformations have one input and one output group. However, some have multiple input groups, multiple output groups, or both. A group is the representation of a row of data entering or leaving a transformation.
All multi-group transformations are active transformations. You cannot connect multiple active transformations or an active and a passive transformation to the same downstream transformation or transformation input group.
Some multiple input group transformations require the Integration Service to block data at an input group while the Integration Service waits for a row from a different input group. A blocking transformation is a multiple input group transformation that blocks incoming data. The following transformations are blocking transformations:
- •Custom transformation with the Inputs May Block property enabled
- •Joiner transformation configured for unsorted input
When you save or validate a mapping, some mappings that contain active or blocking transformations might not be valid.
Rules and Guidelines for Multi-Group Transformations
When you connect transformations in a mapping, you must consider some rules and guidelines for connecting multi-group transformations.
Consider the following rules and guidelines for multi-group transformations:
- •You can connect one group to one transformation or target.
- •You can connect one or more output ports in a group to multiple transformations or targets.
- •You cannot connect fields from multiple output groups in a transformation to the same input group of another transformation.
- •You cannot connect fields from multiple output groups in different transformations to the same input group of another transformation unless each transformation between the source and the transformation are passive transformations.
- •You cannot connect fields from multiple output groups in a transformation to the same input group of another transformation, unless the other transformation is a blocking transformation.
- •You cannot connect an output field to multiple input fields in the same input group, unless the group is in a Normalizer transformation.