Within large company it's impossible to group all Approver in a public group or queue. Salesforce provides the option in an approval process to manually select the approver. When submitting a record for approval the staff or administrator can select every user in the company.
- Mostly managers, directors don't have a full license so they act in Remedyforce as service desk clients.
- Depending on the geographical locations of the company the approver for a service request is always different.
- Creating different approval processes for the same service request but different location is not maintainable in the future.
With a service desk client profile you will only have access (Read, Create, Edit) on your own records. When giving approval (by email or by self service portal) to other records, you will receive an error notifications.
Your workflow approval message was not processed.
You are not authorized to update the referenced object.
Please do not reply to this message.
Contact your system administrator if you feel you received this message in error.
This is due to the fact that you don't have access right to that record so you can't approve or reject this approval.
There are many workarrounds possible but they will make your environment more complex, not maintainable,...
- Approver Profile for approver with view all rights on incidents (They will see to much information)
- Organizing your approvers by queue/public group (Everyone will receive email communication)
- Sharing rules based on public groups (Complexity,...)
When submitting for approval you have a salesforce button 'Sharing' where you can manually share that record. With this functionality you can additionally share a record with a single user (The approver). This user will have read/write access to a record that he normally doesn't own. This solution takes at least 5 additional clicks for a staff agent to share a record which is time consuming and not efficient.
In the Remedyforce code when an approval flow is based on "manually selecting the approver" the records should be automatically shared for the selected users. Manual sharing rules can be created by apex code but it would be great if this would be a part of the out of the box product!