Files
odoo_source/addons/hr
Denis Ledoux 0501bbd62e [IMP] base: uniform "groups" in back-end view
This revision is to make uniform the behavior of the `groups` attribute
on the Python model fields
and on the node in the view architecture.
In both cases, remove the node from the view completely.

Before this revision,

in a back-end view:
 - In the Python model, if a field has the `groups` attribute set
   and the user is not part of
   the groups, the field is removed, completely, from the view.
 - In the view architecture, if a node has the `groups` attribute set
   and the user is not part of
   the groups, the node is made invisible (not completely removed, just
   made invisible).

in a front-end view:
 - if a node has a "groups" or "t-groups" set and the user
   is not part of the groups, the node is removed from the view.

So it's 2/3 cases removing nodes restricted to a group.
and 1/3 case making invisible nodes restricted to a group.
It's simpler to have a uniform behavior for the 3 cases,
simpler to understandard for developers.

In addition, this will help for the goal to cache back-end views.
It makes possible to convert views using the `groups_id` field
by moving the content of these views directly
in the view to which they add content which is suppose to be completely
removed when the user has not the according group.
By getting rid of the `groups_id` many2many field on `ir.ui.view`,
it makes possible to cache the view architecture without
requiring to use the groups in the cache key.
Currently, if we want to cache the view architecture,
it would be required to use the intersection of the user
groups with the `groups_id` groups of the view,
making it costly to compute the cache key,
therefore altering the performance point to cache the view
architectures.

closes odoo/odoo#95729

Related: odoo/enterprise#29592
Signed-off-by: Denis Ledoux (dle) <dle@odoo.com>
2022-08-19 19:10:39 +02:00
..
2022-08-12 20:16:50 +02:00
…

Odoo Human Resources

With Odoo Human Resources, manage the most important asset in your company: People

Get all your HR operations managed easily: knowledge sharing, recruitments, appraisals, timesheets, contracts, attendances, payroll, etc.

Each need is provided by a specific app that you activate on demand.

Manage Your Employees

Oversee all important information in your company address book. Some information are restricted to HR managers, others are public to easily look colleagues.

Record employee contracts and get alerts when they have to be renewed.

Streamline Your Recruitment Process

Index resumes, track applicants, search profiles with Odoo HR.

Post job offers and keep track of each application received. Follow applicants in your recruitment process with the smart kanban view.

Save time by automating some communications with email templates. Resumes are indexed automatically, allowing you to easily find for specific profiles.

Enterprise Social Network

Break down information silos. Share knowledge and best practices amongst all employees. Follow specific people or documents and join groups of interests to share expertise and documents.

Interact with your coworkers in real time with website live chat.

Track time and attendances

Keep track of the time spent by project, client or task. It's easy to record timesheets or check attendances for each employee. Get your analytic accounting posted automatically based on time spent on your projects.

Time Off Management

Keep track of the vacation days accrued by each employee. Employees enter their requests (paid time off, sick time off, etc), for managers to approve and validate. It's all done in just a few clicks. The agenda of each employee is updated accordingly.

Keep Track of Employee Expenses

Get rid of the paper work and follow employee's expenses directly in Odoo. Don't loose time or money by controlling the full flow: expense validation, reimbursement of employees, posting in the accounting and re-invoicing to customers.

Follow Periodic Appraisals

Set-up appraisals plans and/or surveys for your employees and watch their evolution. Define steps for interviews and Odoo will notify managers or subordinates automatically to prepare appraisals. Keep track of the progress of your staff periodically.

Boost Engagement With Gamification

Define clear objective and provide real time feedback

Inspire achievement with challenges, goals and rewards. Define clear objectives and provide real time feedback and tangible results. Showcase the top performers to the entire channel and publicly recognize a job well done.

Leaderboards

Promote leaders and competition amongst Sales Team with performance ratios.

Personal Objectives

Assign clear goals to users to align them with the company objectives.

Team Targets

Compare revenues with forecasts and budgets in real time.