Specify static and variable parameter values
Static parameter values are specified directly when the process is designed and are always the same in all process instances. The parameters are populated in the same way as section record fields of the corresponding type (text, numeric, date, etc.).
Certain parameters allow you to select variables, such as system settings, current date and time or current user contact as their values.
For example, when populating the Who performs task parameter of the Perform task element, you can select a specific contact, e.g. “John Smith”, or the “Current user” variable, which will populate the parameter with the user who runs the current instance of the business process (Fig. 1).
To specify a static parameter value:
-
Select a process element where the static value should be.
-
Click the button next to the field of the parameter. Select one of the following options depending on the desired outcome:
- Select Lookup value if the value has to be populated with lookup data. For example, click the Contact field in the Perform task element and select the contact responsible for the task from the list (Fig. 2).
-
Select a variable, e.g., Current user or Current date if the value has to be populated with / for the user who runs the process or date when the element is executed. For example, select Current user contact option (Fig. 3) in the Who performs the task? field of the Perform task element if the task has to be created for the user who started the business process.
-
Select System setting, and then select the system setting whose value must be written to the parameter when the process is executed. The data type of the selected system setting value must match the data type of the parameter (text, numeric, date, etc.). (Fig. 4).
- Select Lookup value if the value has to be populated with lookup data. For example, click the Contact field in the Perform task element and select the contact responsible for the task from the list (Fig. 2).
-
Save the process diagram.
Pass parameters between process elements
Process element parameters determine the behavior of process elements. For example, the Preform task element contains such parameters as Subject, Owner, Duration, etc., which determine the properties of the “Task” activity that the element creates.
You can assign parameter values manually or map them to other process or element parameters. For example, while scheduling a kick-off call with new contacts, you can pass the Id of the contact record created earlier in the process flow to the Contact parameter of a subsequent Perform task element. As a result, the “Task” activity will be connected to that contact (Fig. 4).
To pass parameters:
-
Select the element, to which the parameter value will be passed. For example, to pass the contact to the Perform task element, select it on the diagram.
-
In the element setup area, click the button next to the field of the parameter, which must be populated with the value from another element, and select Process parameter from the menu (Fig. 5). For example, click the Contact field in the Perform task element.
-
In the window that appears, click Process elements.
-
Select an element which contains the necessary parameter (1). In the list of element parameters (2), select the parameter whose value must be obtained. In this case, Id of the contact will be saved in the Record Id parameter of the Open edit page element (Fig. 6).
-
Save the process diagram.
As a result, whenever the process is run, the value of the element parameter will be populated automatically from the corresponding parameter of a different element. For example, the Contact parameter of the Perform task element will be populated with the contact, which was created when the Open edit page element was executed.
Pass parameters between business processes
Creatio business processes can exchange information with each other using process parameters. Such exchange is possible between a sub-process and corresponding parent processes only.
Parameters of the subordinate process become parameters of the corresponding Sub-process element of the parent process. When you populate the Which process to run? field of the Sub-process element, its setup area displays the parameters of the selected process (Fig. 7). The values of these fields can then be populated with static values or mapped to other parameters from the parent process. Likewise, parameters of the parent process and its elements can be mapped to parameters of the Sub-process element.
For example, a process for job applicant review includes a sub-process, during which the applicant is reviewed by the company management. You can pass the contact’s Id to the sub-process using the Lookup process parameter (Fig. 8).
To transfer parameter values between a sub-process and its parent process:
-
Add corresponding parameter(s) to the sub-process.
-
Map the parameters of the parent process and/or its elements to the parameters of the Sub-process element.
To add a parameter to the business process:
-
Open the sub-process in the Process Designer.
-
In the process setup area, go to the Parameters tab.
-
Click Add parameter and select its type. For example, if you need to pass a specific record as parameter value, you would need a Lookup type parameter.
-
Populate the Title and Code fields so that you can easily identify this parameter in the future, e.g., when mapping its values.
-
For a lookup parameter you need to specify the object whose records can be used to populate this parameter. In the Lookup field, select the object whose records will be used to populate parameter values. For example, if your parameter is supposed to link a process to a contact record, select the “Contact” (Fig. 9).
-
Save the parameter and the process.
Once the lookup parameter is added to the business process, it has to be mapped in the parent process.
Mapping parameter values of parent process to parameters of a sub-process
To map the parent process parameter:
-
Add a Sub-process element to the process diagram (Fig. 10).
-
In the Which process to run field, select the subordinate process, which will be run as part of the current process. For example, in the “Onboarding” process, add sub-process element and select the “CEO review” process as the sub-process.
As a result, the parameters of the selected process will appear in the setup area of the Sub-process element. For example, the Contact parameter will appear once you select the “CEO review” process (Fig. 11).
-
In the Process parameters area, click the button next to the parameter to map (Fig. 12).
-
In the window that appears, select the element that contains the needed parameter. For example, if the parent process is triggered by an object signal and you need to map the parameter to the record that triggered it, select the corresponding signal element (Fig. 13).
-
A list of the element parameters will appear to the right. Select the parameter that contains the value. For example, if you are mapping a lookup parameter to an object signal, select the Unique identifier of record parameter (Fig. 14).
-
Save the process diagram.
As a result, whenever the sub-process is executed, its parameters will obtain values from the parent process. For example, the contact that triggered the start of the parent “Onboarding” process will be passed to the child “CEO review” process.
Add a Collection of records process parameter
When working with collections, use the Collection of records parameter as a medium between the developer code and low-code elements in a business process. You can add a process parameter for storing collections of records and set up the structure of the collection by adding nested parameters. This way you can work with collections using low-code tools, such as multi-instance sub-processes.
You can use the Collection of records process parameter when running business processes from a C# or JS code or when using the Script task process element, e.g., for implementing integration with third-party applications. You can also use it to pass record collections between business processes.
To add the Collection of records process parameter:
- Click → Process library section and open the needed business process in the Process Designer.
- Go to the Parameters tab in the element setup area.
- Click Add parameter → Other → Collection of records.
- In the window that opens, populate the process parameter standard fields:
- Name – specify the parameter name, e.g., “Conact Collection.”
- Code – specify the parameter code, e.g., “ProcessSchemaConactCollection.”
- Leave the Value field unpopulated.
- Click Save.
- Set up the nested parameters to define the collection structure. For example, to include the name and age for each record in a collection of contacts, add Full name and Age nested parameters:
- Click Add nested parameter → select the needed parameter type, e.g. select the “Text” type for the “Name” field to map with the Full name column of the contact page.
- Click Add nested parameter → select the needed parameter type for another field, e.g. select the “Integer” type for the “Age” field to map with the Age column of the contact page.
- Map each of the nested parameters created at the previous step (in our case, two parameters created at step 5) to the corresponding nested parameters of a collection obtained in the process flow. Read more: Use parameters.
As a result, you will create a parameter that can store a collection of records (e.g., contacts) and the corresponding data for each record in the collection (e.g., contact’s name and age). You can use the collection data further in the process and pass these parameter values to other business process elements.