Join the #BuildWithBuildAgent Challenge! Get recognized, earn exclusive swag, and inspire the ServiceNow Community with what you can build using Build Agent.  Join the Challenge.

Changing Approver on Existing Approval

kshaw
Giga Guru

Trying to find out the correct procedure to change the user/approver on an existing Approval Request. In the below,example, Erica is the current approver. But she is not correct, a diffferent user needs to be choosen.

 

apprvval_list.png

 

Also (as some searches said change the approval record), the approval record is read only and controlling policy can not be found.

 

approval_request.png

Going back to the approval list, clicking on the Edit button allows a new user to be added to the approver list. 

edit_approver.png

Editing the State of the new approver from Not Yet Requested to Requested is next.

 

edit2.png

edit3.png

 

SO... the big question I have is what to do next with the original requestor. Choosing Approved or Rejected will either move the approval ahead by the wrong approver or will cause the approvel to be rejected which affects the workflow.

Of the remaining 3 choices I am not sure which to choose. I think over time I have choosen each and some just advance to workflow and the new approver (Ken Shaw in example) does not need to approve. If I leave the old approver as Requested, even if Ken approves, the approval is still waiting for Erica to approve before the workflow advances.

 

I am trying to figure out the correct steps to take to change approvers

edit 4.png

Thanks in advance for help.

Ken

14 REPLIES 14

This is helpful, thank you kindly 
let me know if you need anything from me.

 

Dylan26
Tera Contributor

For anyone reading through this needing a simple way to swap out one approver for another without impacting or re-running the workflow, I found a straightforward (albeit manual) way to do it on-the-fly (though it could be scripted).

 

Before starting:

  1. This assumes the target record is still in a 'Requested' approval state
  2. Our workflow is in Flow Designer, though it should not matter
  3. Unsure if this works for group approvals (test it, let me know!)

ACL Modification - Enables edits to the 'user' field on sysapproval_approver records.

  1. Navigate to https://<instance>.service-now.com/nav_to.do?uri=sys_security_acl.do?sys_id=349357410b02020066fce240e0ea60fb or locate the sysapproval_approver.approver WRITE ACL.
  2. Elevate permissions as needed.
  3. Either a) enable Admin overrides, or b) add an additional required role (e.g. admin)
  4. Update the record

Editing the Approver

  1. Navigate to a sysapproval_approver record (list view is also fine)
  2. Edit the Approver field, update the record
  3. Once done, the workflow will recognize when the (now modified) approval record has approved or rejected.

Hope this helps someone!

Note: if by chance this is a terrible way to do this, please educate me! I love to learn! This works for us though and thus far no one has raised an issue.

 

Edit: Apparently this is not technically a supported feature and you may run into workflow issues as a result of performing this action. Be careful and test thoroughly. However, it does seem to work perfectly fine for single-approver use-cases.

The only comment I would make is if your users want an email indicating they have an approval waiting you may need to slightly change your process. For us we set the new approver then the state to Not Yet Requested and save. Then we set the state to Requested and it resends the email

Another way would be to have a business rule re-trigger the event.

 

We find a lot of users still like the email for approvals so for us it's key to send that back out.

 

This would need to be different for group approvals

 Have you tried with groups yet?

Dylan26
Tera Contributor

I haven't personally tried that, no, so I can't speak to the efficacy of the above solution. However, please do report back if you attempt it and let us know the results!