Approval Creation Use Cases (Custom)

Version 12
    Share This:

    Overview

    This document grew out of a need to create good internal documentation on approval processes for service requests. Before reading, please research BMC approval processes: Approval process types - BMC Remedy Action Request System 8.1 - BMC Documentation.

     

    SRM Design Use Cases

     

    Note: The following use case summaries take into consideration that you have already created the Work Order Template, AOT,PDT, assigned questions, and have mapped fields. The cases also assume users have been assigned the appropriate SRD Approver role needed to approve service requests. The cases finally assume that you know know how to approve requests in MyIT (Screenshots from 3.0).

     

    Methods

    1. Individual
    2. Group
    3. Manager and Individual
    4. Group from answer on SRD (Screenshots Soon)

    Use Case: Individual

     

    Forms Used: Service Request Definition

    • Open your service request in the Service Request Definition form.
    • Go to Service Request tab.
    • Set Approval Type to Person

    image.png

    • Select person from people search
    • Every request submitted using this SRD will require the person to approve it.image.png

    Use Case: Group

    Forms Used: Service Request Definition

    • Open your service request in the Service Request Definition form.
    • Go to Service Request tab.
    • Set Approval Type to Group

      Select support group from Support Group Relationshipsimage.png

    • Every request submitted using this SRD will require any member of the selected group who has the SRD Approver role assigned to approve it.

    image.png

    Use Case: Manager and Individual

    Forms Used: SRD:SRDLevel; Service Request Definition; Approval Mappings; Approval Chain Console

    1. Open the SRD:SRDLevel form and create a new level if its not already there.
      1. Level = Manager and Individual
      2. Status = Enabled
      3. Company = <COMPANY>
        1. image.png
    2. Open your service request in the Service Request Definition form
    3. Set the Level to Manager and Individual
      1. image.png
    4. Go to Service Request tab.
    5. Set Approval Type to Custom
      1. image.png
    6. Save the SRD and deploy it
    7. Go to Approval Mappings and create a new mapping:
      1. Approval For = Individual
      2. First Name = <First Name of User>
      3. Last Name = <Last Name of User>
      4. Approver ID will autofill after hitting [Enter] on Last Name Field
      5. Status = Enabled
      6. Approval Indicator = Service Request
      7. Phase Name =  Global  > Service Request – Level
      8. SRD Level = MANAGER AND INDIVIDUAL
        1. image.png
    8. Save Mapping
    9. Go to Approval Chain Console and create a new chain if its not already there:
      1. Name = Manager and Individual
      2. Form = SRM:Request
      3. Company = <COMPANY>
      4. Status = Proposed (This is very important!)
        1. image.png
      5. Under Selection Criteria set the SRD Level to Manager and Individual and click select
        1. image.png
      6. Under Add Process select Service Request - Management Chain and click apply
        1. Maximum Levels – 1, 2, or 3
      7. Fully expand the Service Service Request - Management Chain
      8. Select Approved under Service Request - Management Chain and under Add process select Service Request – Level as the process name.
      9. Click apply
      10. Full Expand all items under Approval Chain
        1. image.png
    10. Under each approval status (Approved, Rejected, Cancelled, and Error) perform the following:
      1. Highlight chain item under approval status
      2. Click on the Add Set Fields Action menu and click apply
        1. image.png
      3. Click Add
      4. Set Field Names and Values depending on the chain item selected:
        1. Approved (Leave 1st one Blank)
          1. Status = Planning
          2. Rejected
            1. Status = Rejected
            2. Cancelled
              1. Status = Cancelled
              2. Status_Reason = By User
            3. Error
              1. Status = Cancelled
              2. Status_Reason = System Error
              3. image.png
        2. Save the chain
    11. Reopen the chain to view its generated selection criteria
      1. image.png
    12. Set the chain status to enabled and save the chain
      1. Once the chain is enabled, it should not be modified again
    13. Any ticket submitted using this SRD will first go to the manager for approval and then to the individual specified in the mapping. Rejected tickets will ask for a reason and not proceed.
      1. image.png

     

    Use Case: Group from answer on SRD

    Forms Used: Service Request Definition; Approval Mappings; Approval Chain Console

    1. Go to Service Request tab.
    2. Set Approval Type to Custom
    3. Click the Questions & Mappings button and view the questions tab
    4. Under the Approval Needed question (or other question determining approval), create a condition which has a hidden question with a default response. This is where you can get creative! In this example, we are mapping a single user in the default response, but you could use the Actions tab to declare the response to this question based off of relationships between form data or answers to other questions. That is covered in this document: The Pulse: SRM Approval Chains and Implementing SRM Approvals based on a Users Response to a Question .
    5. Use the SR Field Mapping tab to create a relationship between a field on the Service Request and the “Approval Needed” question. In this example, we have mapped ‘SR Type Field 30’ to the “Approval Needed” question’s Answer.
    6. Use the SR Field Mapping tab to create a relationship between the zID_Approver field and the “Approver” question.
    7. Close Questions & Mapping
    8. Save the SRD and deploy it
    9. Go to the Approval Mappings form and create a new mapping:
      1. Approval For = Group
      2. Support Company = <COMPANY>
      3. Support Organization = <Organization>
      4. Support Group Name = <Support Group>
      5. Status = Enabled
      6. Approval Indicator = Service Request
      7. Phase Name =  Global  > Service Request – Level
      8. Service Request Definition <Title of the SRD>
    10. Save Mapping
    11. Go to the Approval Chain Console form  and create a new chain if its not already there:
      1. Name = Group from answer on SRD
      2. Form = SRM:Request
      3. Company = <COMPANY>
      4. Status = Proposed (This is very important!)

     

    1. Under Service Request Definition, select your specific service request

     

    1. Using the Fields dropdown build the the qualification ‘SR Type Field 30’ = "Yes" and click Select
    2. select Service Request - Ad Hoc as the process name.
    3. Click apply
    4. Fully Expand all items under Approval Chain
    5. Under each approval status (Approved, Rejected, Cancelled, and Error) perform the following:
      1. Highlight chain item under approval status
      2. Click on the Add Set Fields Action menu and click apply
      3. Click Add
      4. Set Field Names and Values depending on the chain item selected:
        1. Approved
          1. Status = Planning
          2. Rejected
            1. Status = Rejected
          3. Cancelled
              1. Status = Cancelled
              2. Status_Reason = By User
              3. Error
          4. Status = Cancelled
            1. Status_Reason = System Error
    6. Save the chain
    7. Reopen the chain to view its generated selection criteria
    8. Set the chain status to enabled and save the chain
      1. Once the chain is enabled, it should not be modified again

    Any ticket submitted using this SRD will first go to the group for approval. Rejected tickets will ask for a reason and not proceed.

     

     

    Appendix A

     

    It is possible to add on-the-fly approvals in the approval chain itself. In the following example, this chain triggers an approval in the following order:

     

    1. Checks to see if the SRD level is "NEW_SQL" and is an "UnBudgeted" request.
    2. Request Approval from 1st level manager using out-of-box process
    3. If approved, Sets z1D_Approver field to SupportGroupID | Request Approvers.
    4. Uses out-of-box Ad Hoc approval to ask for approval from SupportGroupID | Request Approvers
    5. If approved, creates ticket.

     

    Appendix B

     

    It is possible to move on-the-fly approvals in the approval chain to any order in the chain also. The following conditions must be true for this to work:

     

    1. z1d_Approver field must bet set from SRD.
    2. z1d_Approver field must bet set to $NULL$ for auto approval condition on the Approval Console
    3. For Level Approvals and Management chain approvals can follow your process. Once you need the stored approval from z1d_Approver, just add AD Hoc anywhere in the chain and it will get picked up by the approval engine.

     

    Why this is useful

    After declaring a specific approver (like director a support group or individual) at the SRD level, that approval can be carried along in the Approval Chain until needed. With this method, a high level approval can occur first, last, in the middle or anywhere else in the processes as long as its only added once.

     

    Video Example