I've a three level approval process. When I initially submit a record to level 1, level 1 approver checks the record and approves it to level 2, during the level 2 approval process, assigned approver inputs details in the fields of assigned visualforce record which are required for level 3 approver. However, during the level 2 process, the assigned approver was only able to edit the record once. If he tries to edit the record again (before approving it to level 3), it says insufficient privilage. This issue is really getting on my nerves. I would really appreciate if any one can help me. I've given the necessary view/edit permissions, record editablity for all concerned approvers but I'm only able to edit/save the record once. It's the same issue with all the approvers.
It sounds to me as though this is "working as designed". During an approval process, records are locked. You can't allow users to edit them multiple times unless a user first "recalls" the approved request and then resubmits it. See the KB Article Current Approver unable to edit locked record after updating record editability for an Approval Process for more on the topic.