When you create a Python transformation, you specify how it generates output rows by defining the behavior as active or passive. You define the behavior on the Advanced tab. By default, the Python transformation is active.
A Python transformation handles output rows based on the behavior as follows:
•An active transformation can change the number of rows that pass through it.
To define the number of rows in the output, call the generateRow() method in the code to generate each output row. You might choose to generate multiple output rows from a single input row or generate a single output row from multiple input rows. For example, if the transformation contains two incoming fields that represent a start date and an end date, you can call the generateRow() method to generate an output row for each date between the start date and the end date.
•A passive transformation cannot change the number of rows that pass through the transformation. The transformation calls the generateRow() method to generate an output row after processing each input row.