Delegation of Authority Configuration Guide

Prev Next

Overview

A Delegation of Authority (DOA) matrix defines who in an organization is authorized to make decisions, approve actions, or handle tasks in various business areas, such as supply chain, operations, and finance. 

Traditionally, government contractors managed these matrices using excel documents, which outlined who had the authority to approve various processes based on different criteria. By integrating the DOA matrix into Salesforce, we automatically route requests to the appropriate reviewers and approvers based on their authority levels and predefined rules.

This article provides a detailed guide for an administrator to set up the DOA matrix in Salesforce.

Audience

  • Salesforce Administrators

  • IT Support

Prerequisites

Ensure that TechnoMile's Analytics package is installed and configured. The version of this package must be 2024.3 or higher.

Permission Sets

  • Assign the DOA Admin Permission Set to administrators responsible for managing the DOA matrix.

  • Assign the Pre-Award Full Access permission set to users to allow them to use DOA on specific objects.

Understanding DOA stages

The following workflow explains the stages involved in implementing a DOA matrix on Salesforce:
flowchart.png

DOA Admin Page

The DOA Admin page is a centralized platform for admins to setup and manage the DOA matrix within Salesforce. Admins can create and manage DOA categories, roles, and associated rules to determine what decisions or approvals users can make. They can easily assign, modify, or revoke DOA levels and create custom matrices for different departments or roles based on organizational needs.

Navigating to the DOA Admin Page

To view the DOA admin page:

  1. In your Salesforce organization, open the App Launcher  App launcher icon.png.

  2. Use the search field to find and open DOA Admin.
    DOA dashboard.png

Creating and Managing a DOA Category

A DOA Category is essentially a way to create and organize categories linked to specific objects. For instance, the Contract Approval category can be linked to the Contract object and the Account Approval category can be linked to the Account object.

Adding a DOA Category

To add a DOA category:

  1. In the DOA admin page, click Add DOA Category.
    The New DOA Category dialog box appears. 

  2. Search and select an Object and enter a DOA Category
    The below screen shows an example of a DOA category being added for contract termination rule.
    Add DOA category.png

  3. Click Save.
    The category is added on the first column.
    DOA dashboard - Copy (2).png

Editing a DOA Category

To edit a DOA Category:

  1. In the DOA admin page, click the edit icon  edit_icon.png next to the DOA category you want to edit.
    The Edit DOA Category dialog appears.

  2. Edit the DOA Category as required and click Save.

Deleting a DOA Category

NOTE

Deleting a DOA category also deletes the rule records associated with that category.

To delete a DOA Category:

  1. In the DOA admin page, click the delete icon  delete_icon.png next to the DOA category you want to delete.
    A confirmation window appears.
    delete DOA.png

  2. Click OK.

Creating and Managing a DOA Role

A DOA Role defines specific roles or departments within an organization and their associated personnel who have certain decision-making powers or approval authority.

Adding a DOA Role

To add a DOA role:

  1. In the DOA admin page, click Add Role.
    The Add Role dialog appears. 

  2. Enter a Role.
    The below screen shows an example of a DOA role being added for Finance Manager.
    Finance.png

  3. Click Save.
    The role is added on the first row.
    DOA dashboard - Copy.png

Adding Personnel to a Role and Viewing Existing Personnel

To add a user to the DOA role:

  1. In the DOA admin page, use the Search by Role search box to find a specific role.

  2. Click View Personnel.
    The Personnel Roles dialog appears, listing the users associated with that role along with their details, such as email ID and business unit.
    view personnel.png

  3. Click Add.
    The Add Personnel Roles dialog appears.
    add personnel.png

  4. Search and add users in the Personnel field.

  5. Click Save.

Defining and Managing DOA Rules

Rules define who can make decisions and under what conditions. They establish authority levels for various approvals, specify criteria for approval, and outline which roles are responsible for specific actions.

Adding Rules

To add a new rule to a specific DOA category and role:

  1. In the DOA admin page, click the Add Rule icon  add rule_plus icon.png corresponding to the cell where a specific DOA category intersects with a specific role.
    The Add DOA Rule dialog appears.

    NOTE

    The Add Ruleadd rule_plus icon.png) and View Ruleview rule-eye icon.png) options are only visible for cells related to DOA categories and their associated roles if the DOA category has the Object field populated.

  2. Specify the rule details:

    1. Search and select a Field API Name.

    2. Select an appropriate Operator.

    3. Enter the required Value.

    4. Click the add icon  add icon.png to enable the Condition field and add another field API.

  3. Click Save.

DOA Rule Example

The following screen shows an example of a rule defined for Contract Approval (DOA category) based on contract term and end date. Contracts with a term of up to 1 year or ending within the current fiscal year can be approved by the Contract Manager (DOA role). Similarly, you can define that contracts with a term of 1-5 years or ending in the next fiscal year require approval from the Director, while contracts exceeding 5 years need approval from the CFO.

doa rule example.png

Viewing and Editing Rules

  1. In the DOA admin page, click the View Rule icon  view rule-eye icon.png corresponding to the cell where a specific DOA category intersects with a specific role.
    The DOA Approval Configuration Rules dialog appears with a list of rules for the selected DOA category and role.
    view rules.png

  2. Click edit  pencil icon.png to modify the rule as required.
    edit role.png

  3. Click  plus.png to add a new rule condition or  minus.png to delete a rule condition.

Deleting Rules

NOTE

Deleting a rule also deletes all the associated rule conditions.

  1. In the DOA admin page, click the View Rule icon  view rule-eye icon.png corresponding to the cell where a specific DOA category intersects with a specific role.
    The DOA Approval Configuration Rules dialog appears with a list of rules for the selected DOA category and role.
    view rules.png

  2. Click delete  delete_icon.png.A confirmation window appears.
    Delete rule.png

  3. Click OK.

Creating and Activating Flows

A flow is created for each object configured on the DOA Admin page where DOA rules need to be applied. These flows ensure that the DOA criteria set up on the DOA Admin page are implemented effectively.

Configuring a Record-Triggered Flow

This section outlines the steps to configure a Record-Triggered Flow in Salesforce to call the DOA Invocable class (TM_DOA_InvocableClass). The flow will trigger actions when a record is created, updated, or deleted and will return relevant output values.

To create a Record-Triggered Flow:

  1. In your Salesforce organization, click the gear icon Gear icon.png and select Setup.

  2. Use the Quick Find box to search and open Flows

  3. Click New Flow

  4. Select Start from Scratch > Record-Triggered Flow and click Create
    The Flow Builder page appears.
    Flow home page.png

  5. Under Select Object, select an object that will trigger the flow.

  6. Under Configure Trigger, set the Trigger the flow when condition as required. 

  7. Under Optimize the Flow for, select Actions and Related Records.

To add actions to the Flow:

  1. In the flow builder, click add Add icon_flows.png and select Action.
    DOA_add button_final.gif

  2. Use the Search Action box to locate and open TM_DOA_InvocableClass action.
    DOA invocapble class page.png

  3. In the TM_DOA_InvocableClass action page, enter the Label, API Name, and a Description for the action.

  4. Under Set Input Values for the Selected Action:

    1. Change the Not Included button to Included to enable the ids field.

    2. In the ids field, select Record.Id as an input to the selected action.

  5. Click the down arrow next to Show Advanced Options to expand the section, then enable the Manually Assign Variables checkbox.

  6. Under Store Output Values, perform the following steps on each of the fields (that is, doaApprovalConfigList, personalRoleList, roleList, and sObjectName):

    1. Click doaApprovalConfigList and select New Resources.
      The New Resource dialog appears.

    2. Select a Resource Type to view the related fields.

    3. Enter the API Name and Description.

    4. Select a Data Type and enable the Allow Multiple Values (collection) checkbox.

    5. Select an Object and enable the Available for input and Available for output checkboxes.

    6. Click Done.
      DOAconflist.gifSpecify the New Resource fields as shown below:


      Store Output Values Field

      New Resource
      Field/Checkbox

      Resource Type

      API Name

      Data Type

      Allow Multiple Values

      Object

      Available for

      Input

      Output

      doaApprovalConfigList 

      Variable

      c_DoaApprovalConfigList

      Record

      checkbox.png

      DOA
      Approval 
      Configuration

      checkbox.png

      checkbox.png

      personalRoleList

      Variable

      c_PersonnelRoleList

      Record

      checkbox.png

      Personnel
      Role

      checkbox.png

      checkbox.png

      roleList

      Variable

      c_RoleList

      Record

      checkbox.png

      Role

      checkbox.png

      checkbox.png

      sObjectName

      Variable

      sObjectNam

      Record

      checkbox.png

      Text

      checkbox.png

      checkbox.png

  7. Click Save.
    The Save the Flow dialog appears.

  8. Enter a Flow Label, Flow API Name, Description, and click Save.

  9. Click Activate.

Assigning Personnel to the Field

Flows created for the DOA criteria can be used to manage approval processes across various objects in the system, depending on your organization's requirements. 

Example

The following steps provide an example of how you can assign personnel and their role to the subcontracts internal POC object. When a subcontract is created or updated and meets the DOA criteria, the flow is triggered and creates Internal POC for subcontract. 

  1. Create a DOA rule for subcontract approval (DOA category) for Approvers (DOA role) based on the Socioeconomic class field value. That is, whenever a subcontract record is created or updated with its Socioeconomic class value equal to HUBZone the DOA rule is satisfied and triggers a flow.
    DOA Admin page.png
    DOA.pngThe below screen shows two approvers Ashley and Stuart added to the DOA rule. personnel.png

  2. The flow starts when a subcontract record is created or updated. It automates the assignment of personnel who meet the DOA criteria to the subcontract’s Internal POC object.
    1.png

    1. TM_DOA_InvocableClass: This apex class processes or validates records against the DOA rules and provides the output record Id's (c_DoaApprovalConfigList, c_PersonnelRoleList, c_RoleList, and c_sObjectNames) as shown in the below image.
      2.png

    2. Iterate over Personnel Role IDs: After the apex action, the flow enters a loop where it iterates over a collection of Personnel Role IDs (c_PersonnelRoleList) obtained from the previous step . For each ID in the list, it will perform the following actions in sequence: 

      1. Create POC: In this step, the flow assigns data to create a POC object for each Personnel Role ID. This involves assigning field values such as name and role.
        loop2.png

      2. Add to POC List: After creating the POC, the newly created POC is added to a list that stores all the created POCs.
        loop3.png

    3. Create Internal POCs: Once the loop completes (after all Personnel Role IDs are processed), the flow creates records for the Internal POCs.
      loop4.png

  3. Once the flow is executed, Internal POC for subcontracts is created with personnel names and their roles. The following screen shows an example of two approvers Ashley and Stuart added to the Internal POC.
    4.png