Repository
OCA/hr · module folder · Try on Runboat
Module version
1.0.2
Category
Human Resources
Folder size
0.04 MB
License
AGPL-3
Application
No
Auto-installable
Yes
Website
https://github.com/OCA/hr
Last tracking update
2026-08-07 08:43:00
Authors
Odoo Community Association (OCA), cibex
Maintainers
Odoo Community Association (OCA), cibex
Committers
Víctor Martínez, Weblate, OCA-git-bot, oca-ci, AlexGarS73
Odoo dependencies
Python dependencies
None
System dependencies
None
Required by
None
Description
This module ensures a consistent working times history when using the
**hr_contract** and **hr_employee_calendar_planning** modules together.

There are 3 different data models which can relate to working time
(resource.calendar) records:

- Employees (hr.employee)
- Contracts (hr.contract)
- Resources (resource.resource) -\> related to hr.employee through
  resource.mixin

The **hr_employee_calendar_planning** module adds the calendar_ids field
to employees, which allows a more flexible working times configuration:
Instead of selecting a single resource.calendar, multiple calendars can
be combined into one auto-generated calendar.

However, contracts are not considered when creating auto-generated
calendars. This can lead to unexpected behaviour, because the active
contract calendar and the employee calendar can diverge (calendar
mismatch). Additionally, when configuring a new contract, or changing
the existing contract calendar, the employee calendar will be
overwritten by the contract calendar.

To resolve this issue, this module migrates current and previous
contract calendars into the calendar_ids and thus the auto-generated
calendar. Additionally, changes to the employee calendar by contracts
are prevented. The resource_calendar_id field is hidden in contract
views, since all working times should be managed in the calendar_ids
field for each employee. However, it is still possible to keep a
meaningful contract history, e.g. for salary information.

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
hr_contract_employee_calendar_history_form hr.contract.employee.calendar.planning.history.form hr.contract.history form Inherits hr_contract.hr_contract_history_view_form
hr_contract_employee_calendar_planning_form hr.contract.employee.calendar.planning.form hr.contract form Inherits hr_contract.hr_contract_view_form
HTTP endpoints (0)

No HTTP endpoints found for this module.

Models touched (1)

New fields (0)

No new fields.

Public methods (2)
  • create(self, vals_list)
    @api.model_create_multi
  • write(self, vals)

Loading…

Loading…

Loading…

Status
Open migration PR — not merged yet for this version
CI status
green — ready to merge
Open since
177 days ago
Last activity
1 day ago
Repository
OCA/hr
Pull request
[19.0][MIG] hr_contract_employee_calendar_planning (#1548)