Hierarchical Approval
For a six-eye or a tree type of authorization levels where there are two or more approvers, you can choose to define a hierarchical or non-hierarchical workflow for the approvers. The hierarchy is decided based on the approvers’ role, which is mapped in the database.
When the hierarchical approval functionality is enabled for a six-eye or a tree authorization level, the second approver can approve the request only after the first approver has approved the request. The request will line up in the Pending region of the Activity Summary widget (refer following screen shot) for the second approver only after the request is approved by the first approver. The hierarchical approval mechanism provides a sequential approval workflow where the request navigates through the specified levels.
Configuration Steps:
If you want the request to be approved in a hierarchical basis, configure {"HIERARCHICAL_APPROVERS":"Y"} in Additional Params field while creating a request through request modeler (refer following screen shot). If the parameter for hierarchical approval is not configured in Additional Params, the approvers who are entitled to approve the request can do so parallelly without following any levels of hierarchy such as a sequential approval workflow.
The roles of the approvers should be set in OD_USER_ROLES_MAP_MB table with the User and Role mapping.
Here, the column OD_USER_NO is a unique identification of users and the column OD_ROLE_LEVEL specifies their respective Roles that each user is assigned to.
The roles should be defined in the master table OD_ROLES_MB.
Here, the column OD_LEVEL specifies the list of roles that are defined in the system for a particular group (OD_GCIF) of users.
Once the above configurations are done, add the 'role based' or 'without role’ workflow JSON as per your business requirement in the column AUTH_FLOW of the CT_REQ_MDLR_AUTHFLOW table to specify the required workflow.
Hierarchical Workflow Example:
For a role based approval workflow in six-eye, add the following JSON in CT_REQ_MDLR_AUTHFLOW table.
{ "authflow" : [ { "tier" : [ { "type" : "number", "min" : 100, "max" : 1000, "workflow" : { "type" : "sixeye", "flow":[ { "role":"A", "completed":false }, { "role":"B", "completed":false }] } } } }
Non-Hierarchical Workflow Example:
For a non-role based workflow in six-eye, add the following JSON in CT_REQ_MDLR_AUTHFLOW table.
{ "authflow" : [ { "tier" : [ { "type" : "number", "min" : 100, "max" : 1000, "workflow" : { "type" : "sixeye", "flow": { "completed":false } } } } }