The workflow start conditions determine which operations cause the workflow to start. For example, an approval workflow can be configured so that any request to create a user in a specific container starts the workflow, thereby requiring approval for the request. You can specify the start conditions for a workflow by editing its definition in the Workflow Designer.
To view or change the start conditions for a workflow
-
In the Active Roles Console tree, expand Configuration > Policies > Workflow, and select the workflow you want to configure.
This opens the Workflow Designer in the Details pane, representing the workflow definition as a process diagram.
-
In the Details pane, click Workflow options and start conditions to expand the area above the process diagram, and then click Configure.
-
Click the Conditions tab in the Change Workflow Options and Start Conditions dialog.
This displays a page where you can view or change:
The operation conditions specify:
-
An object type, such as User, Group or Computer; the workflow starts only if an operation requests changes to an object of that type.
-
An operation type, such as Create, Rename, Modify or Delete; the workflow starts only if an operation of that type is requested.
-
For the Modify operation type, a list of object properties; the workflow starts only if an operation requests changes to any of those properties of an object.
To view or change the operation conditions
-
In the Change Workflow Options and Start Conditions dialog, navigate to Conditions, and click Select operation in the Operation Conditions area.
This opens the page where you can view or change the object type and operation type settings.
-
To change the object type settings, select a type of object from the drop-down list.
To select an object type that is not included in the drop-down list, click the button next to the drop-down list.
-
To change the operation type setting, click the appropriate option.
-
If the Modify operation type (the Modify properties option) is selected, click Next to view or change the selection of properties.
-
Click Finish.
The initiator conditions specify:
-
The identity of an operation requestor (initiator), such as a user or group; the workflow starts only if an operation is requested by that identity.
-
A container, such as an Organizational Unit or Managed Unit; the workflow starts only if an operation requests changes to, or creation of, an object in that container.
To view or change the initiator conditions
-
In the Change Workflow Options and Start Conditions dialog, go to the Conditions tab, and observe the list in the Initiator Conditions area.
Each entry in the list represents a single initiator condition, with the first field identifying the operation requestor and the second field identifying the container. If the list is missing, no initiator conditions are defined.
-
To define an initiator condition:
-
Click Add in the Initiator Conditions area.
-
Populate the list of operation requestors.
-
Select the container.
-
To delete an initiator condition, select the corresponding entry from the Initiator Conditions list, and click Remove.
-
If multiple initiator conditions are defined, the workflow starts if any one of them is fulfilled.
-
If multiple operation requestors are defined within a single initiator condition, the condition is considered fulfilled if the operation is requested by any one of those identities.
A filter can be used to define any additional conditions on objects involved in an operation. The workflow starts only if the operation satisfies those conditions. If no filter is set, then no additional conditions are in effect.
When you configure a filter, you need to add at least one condition, but you are not limited in the number of conditions that you can add. You can add, delete, and group conditions using various operators. It is possible to nest condition groups within other condition groups to achieve the results that you want.
A condition group contains one or more conditions connected by the same logical operator. By grouping conditions, you specify that those conditions should be evaluated as a single unit. The effect is the same as if you put parentheses around an expression in a mathematical equation or logic statement.
By default, a single, implied condition group is created when you add a branch condition. You can create additional condition groups to group a set of conditions and nest grouped conditions within other condition groups.
In a condition group, conditions are connected using the AND, OR, NOT AND, or NOT OR logical operator:
-
AND group evaluates to TRUE if all conditions in the group are TRUE.
-
OR group evaluates to TRUE if any condition in the group is TRUE.
-
NOT AND group evaluates to TRUE if any condition in the group evaluates to FALSE.
-
NOT OR group evaluates to TRUE if all conditions in the group evaluate to FALSE.
By default, AND is the logical operator between the conditions in a condition group. It is possible to change the logical operator by converting the condition group to a different group type: Click the name of the group, point to Convert condition group to, and then click the option appropriate to the desired logical operator.
When you add a condition, the Workflow Designer first prompts you to specify what you want the condition to evaluate. The following options are available:
-
Property of workflow target object: This option is intended to evaluate the value of a certain property of the target object of the request that started the workflow. You can select the desired property when you configure a condition.
-
Property of workflow initiator: This option is intended to evaluate the value of a certain property of the user whose request started the workflow. You can select the desired property when you configure a condition.
-
Changed value of workflow target object property: This option is intended to evaluate the value that is requested to be assigned to a certain property of the workflow target object, which represents the requested change to the property of the target object of the request that started the workflow. You can select the desired property when you configure a condition.
-
Workflow parameter value: This option is intended to evaluate the value of a certain parameter of the workflow. You can select the desired parameter from the workflow definition when you configure a condition.
-
Property of object from workflow data context: This option is intended to evaluate the value of a certain property of the object that will be selected on the basis of the data found in the workflow environment at the time of evaluating the workflow start conditions. When you configure a condition, you can choose the desired property and specify which object you want the workflow engine to select upon evaluating the condition at workflow start time.
-
Value generated by rule expression: This option is intended to evaluate the string value of a certain rule expression. By using a rule expression, you can compose a string value based on properties of various objects found in the workflow environment at the time of evaluating the workflow start conditions. The workflow engine calculates the value of your rule expression upon evaluating the condition at workflow start time.
Once you have specified the entity or field that you want the condition to evaluate, you can choose a comparison operator and specify a comparison value. The comparison operator determines the operation of comparing the entity or field to evaluate with the comparison value you specified, and causes the condition to evaluate to TRUE or FALSE depending on the outcome of that operation.
You can choose from the following options to specify a comparison value:
-
Text string: Performs comparison with a literal string of characters. You can type the desired string when you configure a condition.
-
Property of workflow target object: Performs comparison with the value of a certain property of the target object of the request that started the workflow. You can select the desired property when you configure a condition.
-
Property of workflow initiator: Performs comparison with the value of a certain property of the user whose request started the workflow. You can select the desired property when you configure a condition.
-
Changed value of workflow target object property: Performs comparison with the value that is requested to be assigned to a certain property of the workflow target object, which represents the requested change to the property of the target object of the request that started the workflow. You can select the desired property when you configure a condition.
-
Workflow parameter value: Performs comparison with the value of a certain parameter of the workflow. You can select the desired parameter from the workflow definition when you configure a condition.
-
Property of object from workflow data context: Performs comparison with the value of a certain property of the object that will be selected on the basis of the data found in the workflow environment at the time of evaluating the workflow start conditions. When you configure a condition, you can choose the desired property and specify which object you want the workflow engine to select upon evaluating the condition at workflow start time.
-
Value generated by rule expression: Performs comparison with the string value of a certain rule expression. By using a rule expression you can compose a string value based on properties of various objects found in the workflow environment at the time of evaluating the workflow start conditions. The workflow engine calculates the value of your rule expression upon evaluating the condition at workflow start time.