1 Reply Latest reply on Nov 27, 2019 9:11 AM by Nicolas Roome

    How to handle varying approvers and varying number of approvers

    Anthony Guthrie
      Share This:



      We need to implement some approvals in Footprints, and I am trying to figure out the best way to accomplish this. I feel like I may over-complicate the problem, so your input would be much appreciated.


      Goal: Require up to 3 levels of approvals from Supervisor 1 (immediate supervisor), Supervisor 2 (Supervisor of Supervisor), and Manager (who is not necessarily the direct supervisor of Supervisor 2).



           1. If the Manager is the customer on the ticket, no approval is required.

           2. If the Manager also happens to be either Supervisor 1 or Supervisor 2 of the customer, then the process short-circuits and no further approvals are required.

           3. The three levels of approval are not necessarily sequential relative to the company hierarchy. So there may be one or two people in between Supervisor 2 and the Manager who can be skipped.


      Other Info:

           1. I can determine if a user is a Manager based on the Job title.


      Address Book fields that could be useful:

           1. User ID

           2. Email Address

           3. Job Title

           4. Manager ID

           5. Manager Email Address


      I can't think of a straightforward way to accomplish this using rules in Footprints. My idea is to create three approver fields on the form, then depending on which ones have a value, Footprints can decide which workflow to follow. The logic to figure out what names go into those fields would be handled by an external action that would update those fields on the database.

        • 1. Re: How to handle varying approvers and varying number of approvers
          Nicolas Roome

          The challenges here lies in how to track all these supervisors and managers. And licencing.


          For instance, the primary way FootPrints was designed to track your Supervisor 1 and Supervisor 2, is by using the 'Supervisor' feature of agent users:


          The problem here, is two fold:


          1) You have to set up and maintain the supervisors manually. You can't import this, and you can't pull it from AD. You can vote on this feature request for that: Map all user attributes from a User Import


          2) This feature is only available for system 'agent' users, not 'customer' users. Meaning these people now consume a licence.


          You could theoretically pull this from AD using your address book, but there would have to be some custom development to parse information in the proper format that would be usable by FootPrints business logic.


          For Supervisor 3 (manager), the assumption here is that there isn't just one manager, but rather a set of managers with different areas of responsibility. You'd have to define those criterion, and then it can be designed in one of several ways. In most cases, again, that person will have to be a agent user, since the options for non-agent approvals are quite limited, IMO.