Participant Resolvers
Participant resolvers are swimlane properties that define how swimlanes assign an activity node or approval nodes.
- The Participant Resolver property describes where to find assignees, such as in a Data Connection or Active Directory Group.
- Participant Resolver Arguments define how to find assignees. For example, you can specify an assignee that is a single person, or a person from a team, or a person based upon their role in an organization.
Changing participant resolvers
- Go to the Workflow tab.
- Click the swim lane.
- In the Properties pane, edit the Participant Resolver properties.
Participant resolvers are validated by the Workflow whenever a form or task is launched. If a user cannot be assigned, an error will be displayed stating that no participant could be found.
When using raw query option with Solution Data Library or Reference Data connections, provide the Query or Filter with brackets around the connection column name.
Users are resolved with one of the following: UserID, Email, UserName, or FirstName + " " + LastName. Users cannot be resolved with DisplayName.
However, if your DisplayName is the combination of the FirstName and the LastName, you can use it to resolve users.
Provide the Decimal Field value in single quotes when the decimal field column is used in a filter such as in Participant Resolvers, the Set Column plug-in, or an External Data Connection.
Participant resolvers
For further information about each participant resolver, refer to the respective sections below.
Resolver | Description |
---|---|
ADGroup | Uses an Active Directory Security Group to find assignees. |
Data Connection | Uses a Data Connection to find assignees. |
Solution Fields | Uses Solution Fields present in the solution to find assignees. |
ADGroup
The ADGroup participant resolver uses an Active Directory Security Group to find assignees. If the Type property of the swim lane is set to Person from Role, a single person (depending upon the Random property of the swim lane) will be assigned. If Type is set to Team from Role, the entire list of members of the security group will be assigned.
ADGroup is useful when you want assignees to be automatically available based on IT management of the user’s Active Directory accounts. For example, when a new user is hired and IT adds their account to a Master Data Management security group. If ADGroup is used for the swim lane, the user is automatically available as a selection on the form without having to update and republish the solution.
Active Directory Security Groups are typically managed solely by IT departments, so you will likely need to engage your IT department for any group membership changes. If you prefer more direct control over group membership, you can use the SolutionFields or DataConnection participant resolvers.
Name | Description | Mandatory |
---|---|---|
Domain |
The name of the specific domain containing the security group within the corporate domain forest. If the group is located in the corp.mycompany.global Fully Qualified Domain Address (FQDN), the domain value for this parameter would be “corp" - the last part of the FQDN. Example Direct value: corp Value from form field: [/my:myFields/my:field2] Value from solution field: [field1] |
Yes |
Groupname |
The name of the Active Directory Security Group containing the members to be assigned. Example Direct value: managers GroupName property does not support value from Form Field or Solution Field. |
Yes |
Recursive |
Whether to load users recursively from the group if the group contains other groups. Active Directory Security Groups often contain other Active Directory Security Groups. If the list of assignees needs to contain not only the explicit members of the group, but also the members of all nested security groups, then this parameter should be set to true. The parameter is set to false by default to reduce performance cost. Recursive listing can tax system resources depending on how many groups are nested within groups. The default value is false. |
Yes |
Username |
In some cases, the Application Pool service account may not be able to read Active Directory and get the security group membership. For example, this might occur if you are targeting a domain that is not setup in the Evolve server. This parameter allows you to specify an account that can read the information and generate a list of assignees. The value should be in the [domain]\[username] format, such as corp\johndoe. To note, you can also specify the name of global configuration key from which the username can be selected. Example Direct value: corp\user1 Value from form field: [/my:myFields/my:field2] Value from solution field: [field1] |
No |
Password |
If the username parameter is used, the password of that must be specified in this parameter. To note, you can also specify the name of global configuration key from which the password can be selected. |
No |
Data connection
The Data Connection participant resolver uses a data connection to find assignees.
When creating Data Connections for a PR, always set to async by unchecking Automatically retrieve data when form is opened.
In the Data Connection, use only those fields which are used on the form. For example, for an LDAP Data Connection, if the 'Manager' field is not required, do not use it when creating the data connection.
Name | Description | Mandatory |
---|---|---|
ConnectionName |
The connection name which will contain the list of users to be assigned to swim lane. It includes a drop-down list of all connections defined at the global level or current app level. |
Yes |
Column |
The name of the column in the data connection which will contain the list of users to be assigned to a swim lane. The column can contain Username, DisplayName, Email, UserID or FirstName LastName of the user. |
Yes |
Filter |
The Query to run to initially populate the potential workflow participants from which the users can be selected. To use solution fields and form fields in a filter, add them within single quotes ('). It is not mandatory to use [] brackets in the Data Connection Column. For example, if you have a table: T1 Column1 intColumn2 intIn the PR filter: Column1 = '1' or you can use [Column1] = '1' If you use brackets (for the solution field name or the form field name), the resolver will look for the solution field and the form field with that name - and the value present in the form field/solution field will be used in the filter. |
No |
RawQuery |
A Yes/No value that indicates whether the Filter parameter is a raw query or not. Can be set to Yes or No. If set to Yes, the filter value along with the query will run as it is run in the database. If set to No, the query created by operators will be converted to a suitable format and then will be run in the database. Example If Raw Query is Yes: [Title} = 'abc' and [Created_Date] = '2009-12-23' or [Title] = ‘[Col_Title]’ and [Created_Date] = '[col_created_date]' If Raw Query is No: [Title] == 'abc' && [Created_Date] == '2009-12-23' or [Title] == ‘[Col_Title]’ && [Created_Date] == '[col_created_date]' Note:
Please note that here ‘[Col_Title]’ and '[col_created_date]' are solution fields. |
No |
For Participant Resolver and Pool Fallback arguments, the Raw Query for EnterWorks Data Connection should be of the format where:
-
Single quotes should be used rather then using double quotes.
-
There should not be any space between "[{" and "}]"
Example of Raw Query for EnterWorks Data Connection:
[{'defaultValue':'[/my:myFields/my:field_1]','searchTypeCode':10,'attributeId':'[studentName]'}]
Solution fields
The Solution fields participant resolver is another way to assign a Workflow swim lane participant.
If you want to use a Form field to assign users to a swim lane, do the following:
- Promote the Form field to a Solution field.
- Use that Solution field in the column parameter of this participant resolver.
If you use the Solution Fields participant resolver, you will be unable to edit or select users from the form even when the swim lane Display property is set to Allow Edit. It will be Read Only.
If you use both the Solution Fields participant resolver and Process Control on the form, the swim lane Display Property settings will be as follows:
Allow Edit - The user list is displayed in the Process Control in read-only format. Read Only - The user list is displayed in the Process Control in read-only format. False - The user list is not displayed in the Process Control.
Name | Description | Mandatory |
---|---|---|
Column |
Specifies the name of the Solution Field from which the user is retrieved to assign to the swim lane. The specified solution field can contain Username, DisplayName, Email, UserID or FirstName LastName of the user. For team assignments, provide user details separated by commas. For example: domain\user1,domain\user2,domain\user3 Example Direct value : [field1] where field1 is solution field name |
Yes |