Using Transaction Control Transformations in Mappings
Using Transaction Control Transformations in Mappings
Transaction Control transformations are transaction generators. They define and redefine transaction boundaries in a mapping. They drop any incoming transaction boundary from an upstream active source or transaction generator, and they generate new transaction boundaries downstream.
You can also use Custom transformations configured to generate transactions to define transaction boundaries.
Transaction Control transformations can be effective or ineffective for the downstream transformations and targets in the mapping. The Transaction Control transformation becomes ineffective for downstream transformations or targets if you put a transformation that drops incoming transaction boundaries after it. This includes any of the following active sources or transformations:
Aggregator transformation with the All Input level transformation scope
Joiner transformation with the All Input level transformation scope
Rank transformation with the All Input level transformation scope
Sorter transformation with the All Input level transformation scope
Custom transformation with the All Input level transformation scope
Custom transformation configured to generate transactions
Transaction Control transformation
A multiple input group transformation, such as a Custom transformation, connected to multiple upstream transaction control points
Mappings with Transaction Control transformations that are ineffective for targets may be valid or invalid. When you save or validate the mapping, the Designer displays a message indicating which Transaction Control transformations are ineffective for targets.
Although a Transaction Control transformation may be ineffective for a target, it can be effective for downstream transformations. Downstream transformations with the Transaction level transformation scope can use the transaction boundaries defined by an upstream Transaction Control transformation.
The following figure shows a valid mapping with a Transaction Control transformation that is effective for a Sorter transformation, but ineffective for the target.
In this example, TCT1 transformation is ineffective for the target, but effective for the Sorter transformation. The Sorter transformation Transformation Scope property is Transaction. It uses the transaction boundaries defined by TCT1. The Aggregator Transformation Scope property is All Input. It drops transaction boundaries defined by TCT1. The TCT2 transformation is an effective Transaction Control transformation for the target.