Loop Job

This job performs multiple processing of another parameter-dependent load or job with differing variables.

The processing of parameter-dependent sources is defined as follows:

  • An execution that is defined by the execution type (load or job) and the name of the load or job. The execution is processed with one or more variables as parameters. For example, the variables can be used in a relational extract with a parameterized SQL or a cube load with a parameterized cube name.
  • A loop source that contains the values for the variables. The number of columns is the same as the number of variables that are applied to the execution. The number of rows defines the number of iterations for the execution.

Note that the names of the columns in the loop source have to match the names of the variables used in the execution.

This job can also be used to set variables dynamically for a load or a job. Therefore, the loop source has to contain only one row and a column with the corresponding name for each variable that should be set. In order to set variables statically, a Constant Table extract can be used as loop source.

Fail on status

If the job executes several loads or sub-jobs, the selected option defines the behavior in case of a warning or an error message in one of the loads or sub-jobs. The options are described below.

none All subsequent loads or sub-jobs are executed even if errors or warnings occur. The job terminates with "Completed with warnings" or "Completed with errors" or "Completed successfully".
error In case of an error message, the job terminates without executing subsequent loads or sub-jobs and the job terminates with status "Failed". In case of warnings subsequent loads or sub-jobs are executed and the job terminates with "Completed with warnings".
warning In case of a warning or an error message, the job terminates without executing subsequent loads or sub-jobs and the job terminates with status "Failed".
inherit If the job is executed directly (without parent job) it uses failOnStatus "error". Otherwise if the job is used as a sub-job it inherits the failOnStatus of its parent job (see corresponding descriptions of these failOnStatus options above).

Example

Variables: level1
Loop source: level1 receiving Jan | Feb | Mar
Execution: Load OneMonth

In the loop job, the load OneMonth will be executed 3 times:

  1. with Variable level1="Jan"
  2. with Variable level1="Feb"
  3. with Variable level1="Mar"

Updated June 5, 2023