We have customized absence workflow process.
Per the customization the absence application goes to the first approver (derived using AME, based on PQH roles), if first approver does not act on the notification it times out and goes to the first approver's supervisor(second approver). Now when the second approver approves this, the approval again goes back to the first approver instead of completing. We have only one level of approval in AME.
We are deriving and routing the workflow approval to the second approver using a custom function. So post second approver's approval the workflow goes back to check if the approval was final (using "hr_approval_ss.isfinalapprover") which gives NO, causing the approval process to go to first approver.
I have also tried setting the workflow attribute 'FORWARD_TO_USERANAME" to the approver originally obtained from AME post the second approver's approval suspecting the procedure ("hr_approval_ss.isfinalapprover") could be using the approving authority's username to decide if it has obtained final approval. But this has not proved to be of any help.
Can somebody please help me understand the logic based on which the aforementioned procedure ("hr_approval_ss.isfinalapprover") determines if the approval obtained is final or not?