You can create your own approval procedures if the default approval procedures for finding the responsible approvers do not meet your requirements. The condition used to determine the approvers is formulated as a database query. Several queries may be combined into one condition.
To set up an approval procedure
-
In the Manager, select the IT Shop > Basic configuration data > Approval procedures category.
-
Click in the result list.
-
Edit the approval procedure main data.
- Save the changes.
To edit an approval procedure
-
In the Manager, select the IT Shop > Basic configuration data > Approval procedures > Predefined category.
-
Select an approval procedure from the result list and run the Change main data task.
-
Edit the approval procedure main data.
- Save the changes.
To edit the condition
-
In the Manager, select the IT Shop > Basic configuration data > Approval procedures > Predefined category.
-
Select an approval procedure from the result list.
-
Select Change queries for approver selection.
Detailed information about this topic
Enter the following main data of an approval procedure.
Table 34: General main data of an approval procedure
Approval procedure |
Descriptor for the approval procedure (maximum two characters). |
Short description |
Short phrase to describe the approval procedure. |
DBQueue Processor task |
Approvals can either be made automatically through a DBQueue Processor calculation task or by specified approvers. Assign a custom DBQueue Processor task if the approval procedure should make an automatic approval decision.
You cannot assign a DBQueue Processor task if there is a query pending to determine approvers. |
Max. approvers |
Maximum number of approvers to be determined by the approval procedure. Specify how many identities must really make approval decisions in the approval steps used by this approval procedure. |
Sort order |
Value for sorting approval procedures in the drop-down.
-
Specify the value 10 to display this approval procedure at the top of the drop-down when you set up an approval step.
-
To hide the approval procedure in the drop-down, define a negative value. These approval procedures are displayed in the Manager under the Hidden in Workflow Editor filter.
TIP: It is also possible to change the order for default approval procedures. Move more frequently used approval procedures to the top; hide unused approval procedures. |
Description |
Detailed description of the approval procedure. |
The condition used to determine the approvers is formulated as a database query. Several queries may be combined into one condition. This adds all identities determined by single queries to the group of approvers.
To edit the condition
-
In the Manager, select the IT Shop > Basic configuration data > Approval procedures > Predefined category.
-
Select an approval procedure from the result list.
-
Select Change queries for approver selection.
To create single queries
- Click Add.
This inserts a new row in the table.
- Mark this row. Enter the query properties.
- Add more queries if required.
- Save the changes.
To edit a single query
- Select the query you want to edit in the table. Edit the query's properties.
- Save the changes.
To remove single queries
- Select the query you want to remove in the table.
- Click Delete.
- Save the changes.
Table 35: Query properties
Approver selection |
Query identifier that determines the approvers. |
Query |
Database query for determining the approvers.
The database query must be formulated as a select statement. The column selected by the database query must return a UID_Person. Every query must return a value for UID_PWORulerOrigin. The query returns one or more identities to whom the request is presented for approval. If the query fails to a result, the request is canceled.
A query contains exactly one select statement. To combine several select statements, create several queries.
If a DBQueue Processor task is assigned, you cannot enter a query to determine approvers. |
Query for recalculating |
Database query for finding request procedures that require recalculation of their approvers. |
You can, for example, determine predefined approvers with the query (example 1). The approver can also be found dynamically depending on the request to approve. To do this, access the request to be approved within the database query using the @UID_PersonWantsOrg variable (example 2).
Example 1
Requests should be approved by a specific approver.
Query:
select UID_Person, null as UID_PWORulerOrigin from Person where InternalName='User, JB' |
Example 2
Approval for requests should be granted or denied through the requester’s parent department. The approver is the cost center manager that is assigned to the requester‘s primary department. The requester is the identity that triggers a request (UID_PersonInserted when requesting for an employee, for example).
Query:
select pc.UID_PersonHead as UID_Person, null as UID_PWORulerOrigin from PersonWantsOrg pwo |
join Person p on pwo.UID_PersonInserted = p.UID_Person |
join Department d on p.UID_Department = d.UID_Department |
join ProfitCenter pc on d.UID_ProfitCenter = pc.UID_ProfitCenter |
where pwo.UID_PersonWantsOrg = @UID_PersonWantsOrg |
Taking delegation into account
To include delegation when determining approvers, use the query to also determine the identities to whom a responsibility has been delegated. If the managers of hierarchical roles are to make the approval decision, determine the attestors from the HelperHeadOrg table. This table groups together all managers, deputy managers, and all other hierarchical role managers as well as their deputies and the identities to whom a responsibility has been delegated.
If the members of business or application roles are to make the approval decision, determine the approvers from the PersonInBaseTree table. This table groups together all hierarchical role members and identities to whom a responsibility has been delegated.
To exclude deactivated identities, check the XOrigin column for a value greater than 0. For more information about values in the XOrigin column, see the One Identity Manager Identity Management Base Module Administration Guide.
To notify the delegator when the delegation recipient has made an approval decision about a request, determine the UID_PWORulerOrigin. This also shows in the Web Portal whether the approver originates from a delegation.
To determine the UID_PWORulerOrigin of the delegation
To include all active managers and their deputies
Modified query from example 2:
select hho.UID_PersonHead as UID_Person, dbo.QER_FGIPWORulerOrigin(hho.XObjectkey) as UID_PWORulerOrigin from PersonWantsOrg pwo |
join Person p on pwo.UID_PersonInserted = p.UID_Person |
join Department d on p.UID_Department = d.UID_Department |
join ProfitCenter pc on d.UID_ProfitCenter = pc.UID_ProfitCenter |
join HelperHeadOrg hho on hho.UID_Org = pc.UID_ProfitCenter |
and hho.XOrigin > 0 |
where pwo.UID_PersonWantsOrg = @UID_PersonWantsOrg |
You can copy default approval procedures in order to customize them.
To copy an approval procedure
-
In the Manager, select the IT Shop > Basic configuration data > Approval procedures category.
-
Select an approval procedure in the result list. Select the Change main data task.
-
Select the Create copy task.
- Confirm the security prompt with Yes.
-
Enter the short name for the copy.
The short name for an approval procedure consists of a maximum of two characters.
-
Click OK to start copying.
- OR -
Click Cancel to cancel copying.