X4 Help Center

Options for Parameterization

Here is an overview of how to create and use parameters in the X4 BPMS.


Scope for parameters:

  • System parameters: Parameters specified by the system (see System Parameters)

  • Global parameters: Parameters that you can create as a user and that can be used in all X4 BPMS projects (see Global Parameters)

  • Project parameters: Parameters that can be created in a file in a project, used within that project, and imported or exported with the project (see Project Parameters )


Use of parameters:

Parameters can be used in Technical Processes in process blocks, mappings, adapters and conditions. In Business Processes (BPM processes), they can also be used in Rules and Human Task. Global, system, or project parameters can be used.


The Ctrl+Space key combination allows you to view and select all available system, project, and global parameters in project files (process blocks, mappings, adapters, and conditions).

Observe the following prioritization when using parameters:

System Parameters → Project Parameters → Global Parameters

In the event of name conflicts, an error message or warning is displayed in the Problems view:

  • Error message in the event of name conflicts between system and project parameters

  • Warning for name conflicts between project parameters and global parameters


Where are parameters stored?

System Parameters

The X4 BPMS contains a number of predefined system parameters, such as %PID% (current process instance ID) or %NOW% (current date and time).

This setting cannot be changed during runtime.

Typical use case:

Set technical parameters, e.g. a mail server address, for this runtime environment/level.

Return the file name or process ID of a technical process

For additional use cases that are not covered by system parameters, you can create global or project parameters.

In contrast to system parameters, global or project parameters can be set at the process runtime.

Global Parameters

You can define global parameters in the Global Parameter Configuration. This configuration is saved in the process.

For examples of use cases of global parameters, see Use Global Parameters .

Typical use case:

Set parameters that can be used in various projects and that can be changed during runtime, e.g. the recipients of system-generated mails or the footer in system-generated mails.

Project Parameters

Project parameters can be used in multiple Technical Processes in a project.

These parameters are stored in the Project Parameter Configuration (*.param) in the project and can be exported or imported with the project.

Typical use case:

  • Technical Process:
    A project parameter can be defined as a limit value for measured values (measured value must be between two limits).

  • Business Process with Business Rule:
    A project parameter can be defined as a limit to check a value (decrease/reject depending on the value set).

  • Business Process with Human Task:
    A project parameter can be set in a mapping in a Technical Process called by the Business Process. For example, the duration in the human task can vary depending on the environment.


Where are parameters used?

In Technical Processes, parameters can be set for the following elements:

  • Adapters

  • Conditions

  • Mappings

  • Other process components

In Business Processes (BPM processes), parameters can be set for the following elements:

  • Rules

  • Human Task (via mapping in a Technical Process)


Note the following prioritization when using component parameters and dynamic parameters:

  • Component parameters overwrite the configuration of process components in the repository (for example, function adapters) during the process runtime.

  • Dynamic parameters overwrite set global project parameters system parameters, and the configuration of process components in the repository (e.g. function adapters) at the process runtime.

Action

Description

Adapter parameters

Parameters can be used in adapter configurations.

Typical use case:

In an XML Encryption (Password) adapter, a path to an element to be encrypted/decrypted can be set in the xpath parameter. This path can be defined permanently (//Data) or set via a parameter.

Conditions

You can define case distinctions in branches of Condition components with parameters (see Creating and Using Conditions ).

Typical use case:

A check is to be made as to whether the output of a process component contains a specific parameter value.

Mappings

Parameters (global, project, and system parameters) can be used in XSL mappings.

To do this, they must be inserted in the mapping (see Using Parameters in XSL Mappings ).

Component Parameters

You can adapt selected process components of an open process in the Properties view.

With component parameters, you can parameterize a selected process block for the individual process (see Component Parameters).

These parameters are stored in the respective process.

Typical use case:

Component parameters can be used to overwrite the parameters of an adapter in a process.

Within component parameters, you can use fixed values (fixed path, e.g. c:\temp) or parameters. System parameters or previously defined global or project parameters can be used here.

Dynamic Parameters

Dynamic parameters allow you to overwrite global, system, and project parameters in XSL mappings.

Within a process, you can control various process components with dynamic parameters depending on the processed data. Dynamic parameters are stored in XSL mappings in the form of processing instructions and interpreted by the subsequent process component (e.g. an adapter) (see Using Dynamic Parameters).

The configuration is only changed dynamically during the process runtime.

Typical use case:

You can use dynamic parameters to control process components and overwrite parameters that have already been set during the process runtime.