Odoo is the world's easiest all-in-one management software. It includes hundreds of business apps:
CRM | e-Commerce | Accounting | Inventory | PoS | Project management | MRP | etc.
I want to set some record rules to restrict employees to view only their profile and their subordinates profiles. No one else out of a particular employee's subordinate hierarchy should be displayed to him. For example, this is my employee hierarchy.
When Alex logged in, he should be able to see all the employees. When Benjamin logged in, he should be able to see his profile and David's, Edward's, Frank's, Ivan's and Jack's profiles only. When David logged in, he should be able to see his profile only.
I have tried the following record rules on Employee object:
- [('user_id','=',user.id)] Allows to see logged in user's profile only.
- [('parent_id.user_id','=',user.id)] Allows to see immediate subordinates only. That means, when Alex logged in, he can see Benjamin and Charles only, not the in depth hierarchy.
- [('child_ids','child_of', [user.id])] It gives a view of logged in user, his first immediate subordinate, first next level subordinate. That means, when Alex logged in, he can see his profile, Benjamin's profile and David's profile only.
I still couldn't work out a way to satisfy my requirement. Any help would be appreciated.
Thank you very much!
Hello Mudi Vand,
Your problem is that you try to apply a child_of on res.users model (which have not parent hierarchy, as long as i know).
Have you tried to use ONLY this rule:
[('id', 'child_of', [employee.id for employee in user.employee_ids])]
With that, i think it will filter the Employees using the employee "profile" of the current user. The child_of will be applied to the hr.employee model (which have parent_id field, the default field to be used by child_of operator).
Does it work ?
About This Community
This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.Register
Odoo Training Center
Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.Test it now
|Asked: 1/6/15, 3:42 AM|
|Seen: 1998 times|
|Last updated: 2/9/16, 8:55 AM|