We can avail only 1 hierarchy field (Manager or custom hierarchy field) for defining the approver in an approval step. If I have to setup 3-level approval process for opportunities or expense reports then I have to
Define my approval matrix on a separate custom object with the Associated User, Approver_2 & Approver_3 fields
Create 2 custom lookup fields to user on Opportunity: i) Approver_2__c & ii) Approver_3__c (Given Manager is the first approver)
Write trigger on before insert, before update events to set the Level 2 approver & Level 3 approver on the opportunity
I believe if Salesforce allows custom hierarchy fields to be availed in defining an approver in an approval process just like we can define manager as an approver it would have saved lots of maintenance and resources.
Any alternate thoughts ?