In BMC Helix Business Workflows, automated or manual tasks might need approvals from the concerned manager, business group, or other approvers. An approval is an end-to-end process that starts when a task is sent for approval and ends with an approval outcome.
Case agents can send tasks to approvers who can approve or reject the tasks or configure tasks to be automatically approved. For tasks to go through the approval process, a case business analyst defines the business logic for approvals, creates approval mappings and flows, and defines the users who can approve and reject tasks.
A case business analyst defines the following items in an approval mapping:
- Status that triggers an approval
- Status to which the tasks move to after an approver's action
- Task templates to which the approval is applied
Learn more about the lifecycle in Task lifecycle.
Examples of how approvals work for tasks
- An employee raises a request for advanced salary with HR. The HR department checks whether the user is eligible for an advanced salary based on the user's tenure in the company. HR also checks whether the user is eligible to get the requested amount. A task is created for an approval from the Accounts department. Only when the task is approved, the advanced salary is credited to the user's salary account. The task is closed and the request is also closed.
- A request is raised with the Facilities team that the Fire extinguisher on the 7th floor is not working. The Facilities department checks the expiry date and other details of the equipment. A manual task of validating the log sheets is created. A task is created for an approval from the Facilities Manager. When the task is approved, the equipment is replaced.
Task approval types
A case business analyst configures two types of approvals for tasks: self-approvals and approval flows. The approval types for tasks are similar to the approval types that are available for cases.
Self-approvals are automatically processed by the system. They contain expressions that determine for which tasks the self-approval needs to be run.
A case business analyst can configure a self-approval in the following ways:
- With process—To evaluate additional expressions or to perform additional tasks. When a task matches the self-approval expression, the self-approval process is run. When the expression that is defined in the process is met, the task is approved. Otherwise, the task is rejected.
For example, all tasks from the Facilities department need approval. In the approval flow, the case business analyst defines the expression as 'Operational Category Tier 1’ = “Facilities”. When the self-approval process is run, this expression is met, and the tasks are approved.
- Without a process—To automatically approve tasks that match the defined expression.
By using an approval flow, a case business analyst groups similar types of approvals and defines a specific person or group of users who can approve a task. The case business analyst also defines how the approval is run under the Default Task Approval Flow group.
The following types of flows are available:
- Level Up Approval Flow—Use this manager approval flow to specify the levels of approvals that a task requires.
- General Approval Flow—Use this flow to define multiple approvers for a task. It also determines whether all, one, or N% of the approvers must approve the task.
Task approval process and approval status
The following image shows how the task approval process works:
The following steps describe the process in detail:
- When the status of a task changes, the system checks if an approval is applied to the task.
- If an approval is mapped, the system checks if a self-approval is defined for the task.
- If a self-approval expression is found, the self-approval is run for the case. Based on the approval outcome, the task status changes. If an approval isn't applied to the task, the task exits the approval process.
- If a self-approval isn't found, the system checks for an expression in approval flows. If an approval flow is defined for the task, the approval is run for the task based on the approval flow configuration. Based on the approval outcome, the task status is changed.
- If no self-approval or approval flow is defined for the task, the case exits the approval process and the case status is changed based on an approval mapping.
Learn more about approval mapping in Mapping task status to approvals.
Approvals for automated tasks
Case business analysts can define approvals for automated tasks to be triggered before a task starts or after it is completed.
The following table shows how approval works for automated tasks:
|Approval is configured to be triggered before the task starts||Approval is configured to be triggered after the task completes|
|Task status change triggers the approval process.||Task completion triggers the approval process.|
|If the approver approves the task, the task process starts.||If the approver approves the task, the status changes to Completed.|
|If the approver rejects the task, the task process doesn't start.||If the approver rejects the task, the status changes to Failed.|