Project parameters

With the help of parameters, you can run the same project for different source files or time periods, parametrize expressions, and perform "what-if" analysis. Project parameters can be used in transformation properties, in expressions, and in database queries. Parameters are also used to arrange iterations (described in next chapter).

Using parameters in transformation properties

In transformations, parameters can be used to define values of some properties. Typically, such transformation properties as file names, folder paths, numeric constants or dates can be defined with a project parameter. If a transformation property can be defined using a parameter, it has a black arrow next to it (see screenshot below).

See example: Character count

Using parameters in expressions

In expressions, parameters serve as constants. Parameter names in expressions should be wrapped in curly brackets. For convenience, the Expression Editor has a clickable list of parameters.


See example: Character count

Using parameters in SQL queries

Project parameters can be inserted into a SQL query. Before executing a query, a parameter name in curly braces is replaced with its value (put double quotes around curly braces when a text value is expected).


See example: Formula 1

Parameter Editor

Before a parameter can be used it must be declared (created) first. Creating, editing, renaming and deleting parameters is done with the help of Parameter Editor. To open Parameter Editor, press "Edit parameters" in menu Project, or press F6.


There are two types of parameters: input parameters, and calculated parameters. Input parameters are entered by a user. For convenience, input fields for parameters that are file name or date can have a helper button that invokes the file browser dialog, or a calendar.

A calculated parameter is a parameter that is calculated using an expression that can contain arithmetical operators, functions and references to other parameters. References to field names make no sense in such expressions and therefore are not allowed.

Hint: A calculated parameter can refer to other calculated parameters.

Project parameters are global and immutable, i.e. they are available to all tranformations in a project and do not change during project execution.

See example: Character count

Parameters and Auto-run mode

When Auto-run mode is on, changing a parameter value automatically triggers re-calculation of all transformations that use the parameter to define a transformation property, in an expression, or in a database query. First, this ensures consistency of calculations and makes sure that all transformation results are calculated using the same parameter values. Second, it is convenient for "what-if" scenarios — by changing parameters you can automatically re-run calculations and evaluate various outcomes.

Assigning project parameters from the command line

To specify an input parameter value from the command line use /param option when calling a project (one /param per parameter). Note that a parameter must be declared (created) in the project prior to its assignment from the command line. Parameter names and values with spaces should be wrapped into double quotes. A parameter value assigned through the command line overrides default parameter value (value that is saved in project). E.g. parameter {Year} can have value 2015 saved in project, but have value 2016 when assigned from the command line in run time.

Project parameters that are not assigned either through the command line or "Iterate" transformation have their default values. Calculated parameters can't be assigned externally.


Read next: Iterations