function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion

How to route approvals for the top of the manager hierarchy?

Every user record in our SFDC org has a User.Manager listed, except our CEO. SFDC won't allow a circular relationship, and every other user already reports to someone else, so SFDC won't let us list any other user as the CEO's manager (even, say, the CEO's assistant, or the VP of HR).

When using User.Manager to route approvals, this becomes a serious issue. We've implemented Expense Reports in SFDC, and use the Manager hierarchy for automatic routing. Finance is only triggered to pay approved expense reports. Therefore, we'd like the CEO's expense reports to route to our VP of Finance for approval.

We tried putting an inactive user in the CEO's User.Manager field, but it didn't work. When the CEO tries submitting an expense report for approval, SFDC complains that "This approval request requires the next approver to be determined by the Manager field. This value is empty. Please contact your administrator for more information." (Of course, the value isn't "empty," it's pointing to an inactive user.)

Any ideas for how to route approvals for the top of the manager hierarchy, i.e. our CEO?
Just a guess, but did you try setting
"The approver's delegate may also approve this request" on the process and setting the delegate to the CEO in the inactive user?
Also, what if you created a step where the assigned approver was  a queue. In the Specify Step Criteria step, you added some criteria so that if it evaluated to the CEO, then it would Go To Next Step, and in that step have a Queue where the CEO is assigned to it and he would then get to approve it.
Thanks advigxpm for the quick suggestions!

The first is a good idea, but doesn't work. Even when setting a delegate for the User listed as the CEO's manager, the approval process still throws the same error, claiming the manager is "empty."

The second is a kludgy, but clever, workaround. I'll have to re-create the approval process in order to add a step. But in principle, this sounds like it should work - the first step will separate CEO from non-CEO requests, and route CEO requests to a queue.

I'll try the second suggestion, and report back to this thread.
Happy to report that the suggestion to set up separate approval processes worked.

So, originally, we had 1 approval process for expense reports, with generic entry criteria. Approvals were routed automatically to User.Manager. The process broke when the CEO tried to submit an expense report for approval, since he had no listed manager.

I created a 2nd approval process, essentially a clone of the existing process, except with entry criteria of User.Manager = null. This process has no automated approver, but instead, assigns requests to a "CEO Approvers" queue as an approval step.

I then modified the original approval process, giving it entry criteria of User.Manager
This is still fairly kludgy - I had to manually replicate all of the approval and rejection steps across the two approval processes. If changes are needed later, I'll need to remember to change both processes in sync. This trickery will be required anytime we implement other generic processes for all employees.

I've posted an Idea for this at Specifically, I've proposed a "Allow Circular Management Relationship" checkbox on the User object, so such a box could be checked for your CEO user.

Hi, I have a similar problem.


I want an approval process where I dont know how many people are there in hierarchy chain. Though we assume it to be maximum 7.

For that I have created 7 step approval step, at entry of each step I am checking the criteria if theuser's manager is not null. If it is not null then enter the step else go to next step. At the last step I have the criteria that user's manager is null.

Say I submitted a record for approval and I have 2 managers in hierarchy chain. So as per me my approval process should go to step1 then skip step2,3,4,5,6 and then go to step7. This looks simple but unfortunately its not working and throwing error that manager's field is empty.


Can anyone help. Thanks


Hi lax,

   Were you able to address the issue you were facing supporting hierarchy chain in the approval process.


We have similar requirement to support and appreciate if you can share your findings.




Hi, i am unable to approve the process. wheb i try to submit fo approve it is displaying error like This approval request requires the next approver to be determined by the Manager field. This value is empty. Please contact your administrator for more information.
Wolf Duttlinger 6Wolf Duttlinger 6
Just for the sake of of completnes - the above link to the idea does not seem to be working - I found this link: