I am developing a database that will store (among other things) employee performance evaluations. I have implemented user-level security and all is well (so far).
The customer has told me that they want to restrict access to the evaluations in the following manner.
1) Employees cannot view their own evaluations on the system, or any other evaluations except as described below.
2) Managers can view evaluations for all Employees who report to them. In most cases, these will be evaluations that the Manager created, however if a new Manager comes in, they need to be able to see the evaluations done by the previous Manager.
3) Managers can view evaluations that can be viewed by those Managers who report to them. This is recursive, allowing the CEO to view all evaluations.
As an example:
The Sales Manager for Office A can create and view evaluations for all Sales Employees working out of Office A. The Accounting Manager for Office A can create and view evaluations for all Accounting Employees in Office A. The Accounting Manager cannot see the evaluations for the Sales Employees.
The Regional Sales Manager for Region 1 can create and view evaluations for all Sales Managers in Region 1, as well as view the evaluations for all Sales Employees in each Office in Region 1.
The VP of Sales can view create and view evaluations for the Regional Sales Managers, as well as see the evaluations for all Sales Managers and Sales Employees. The CEO can create and view evaluations for all VPs, as well as see the evaluations for all Employees.
At this point, I am not even sure where to begin with how to set this up, and I am open to any ideas that you may have.
The customer has told me that they want to restrict access to the evaluations in the following manner.
1) Employees cannot view their own evaluations on the system, or any other evaluations except as described below.
2) Managers can view evaluations for all Employees who report to them. In most cases, these will be evaluations that the Manager created, however if a new Manager comes in, they need to be able to see the evaluations done by the previous Manager.
3) Managers can view evaluations that can be viewed by those Managers who report to them. This is recursive, allowing the CEO to view all evaluations.
As an example:
The Sales Manager for Office A can create and view evaluations for all Sales Employees working out of Office A. The Accounting Manager for Office A can create and view evaluations for all Accounting Employees in Office A. The Accounting Manager cannot see the evaluations for the Sales Employees.
The Regional Sales Manager for Region 1 can create and view evaluations for all Sales Managers in Region 1, as well as view the evaluations for all Sales Employees in each Office in Region 1.
The VP of Sales can view create and view evaluations for the Regional Sales Managers, as well as see the evaluations for all Sales Managers and Sales Employees. The CEO can create and view evaluations for all VPs, as well as see the evaluations for all Employees.
At this point, I am not even sure where to begin with how to set this up, and I am open to any ideas that you may have.