Again depends on business case as to why this happened, could be due to budget not being available etc.
I recommend, if you have to bring it back to incomplete status, you may run poresreq.sql to bring it back. You can find this in metalink note 390023.1 for your reference.
You can ask the next approve er to reject' it so that it will be back to bucket of first app-rover. Then make necessary changes the again send for approval.
Retry WF activity using WF Administrator/Sysadmin.
Rerun the workflow activity using following navigation.
Login with Sysadmin user > Workflow administrator responsibility > Administrator workflow > Status Monitor > Type Internal Name = POAPPRV > User Key = <Enter Problematic PO Number >