TIP: You can type at any time to perform a new search.
Advanced Accrual Allocation
hr_holidays_accrual_advanced · OCA/hr
Security findings
Migration considerations
hr.leave.allocation.accrual_method— Field 'accrual_method' on 'hr.leave.allocation' uses the deprecated `track_visibility` kwarg: renamed to `tracking` in Odoo 13.0. migration-track-visibilityhr.leave.allocation.interval_number— Field 'interval_number' on 'hr.leave.allocation' uses the deprecated `track_visibility` kwarg: renamed to `tracking` in Odoo 13.0. migration-track-visibilityhr.leave.allocation.interval_unit— Field 'interval_unit' on 'hr.leave.allocation' uses the deprecated `track_visibility` kwarg: renamed to `tracking` in Odoo 13.0. migration-track-visibilityhr.leave.allocation.limit_accrued_days— Field 'limit_accrued_days' on 'hr.leave.allocation' uses the deprecated `track_visibility` kwarg: renamed to `tracking` in Odoo 13.0. migration-track-visibilityhr.leave.allocation.limit_accumulated_days— Field 'limit_accumulated_days' on 'hr.leave.allocation' uses the deprecated `track_visibility` kwarg: renamed to `tracking` in Odoo 13.0. migration-track-visibilityhr.leave.allocation.limit_carryover_days— Field 'limit_carryover_days' on 'hr.leave.allocation' uses the deprecated `track_visibility` kwarg: renamed to `tracking` in Odoo 13.0. migration-track-visibilityhr.leave.allocation.max_accrued_days— Field 'max_accrued_days' on 'hr.leave.allocation' uses the deprecated `track_visibility` kwarg: renamed to `tracking` in Odoo 13.0. migration-track-visibilityhr.leave.allocation.max_accumulated_days— Field 'max_accumulated_days' on 'hr.leave.allocation' uses the deprecated `track_visibility` kwarg: renamed to `tracking` in Odoo 13.0. migration-track-visibilityhr.leave.allocation.max_carryover_days— Field 'max_carryover_days' on 'hr.leave.allocation' uses the deprecated `track_visibility` kwarg: renamed to `tracking` in Odoo 13.0. migration-track-visibilityhr.leave.allocation.number_per_interval— Field 'number_per_interval' on 'hr.leave.allocation' uses the deprecated `track_visibility` kwarg: renamed to `tracking` in Odoo 13.0. migration-track-visibilityhr.leave.allocation.unit_per_interval— Field 'unit_per_interval' on 'hr.leave.allocation' uses the deprecated `track_visibility` kwarg: renamed to `tracking` in Odoo 13.0. migration-track-visibilityhr_leave_allocation_view_form— For a target of Odoo 17.0+: view 'hr_leave_allocation_view_form' uses `attrs=`/`states=`, which are no longer supported. Convert modifiers to direct Python boolean expressions in `invisible`/`readonly`/`required`; preserve the original AND/OR logic. migration-view-attrs-states · sourcehr_leave_allocation_view_form_manager— For a target of Odoo 17.0+: view 'hr_leave_allocation_view_form_manager' uses `attrs=`/`states=`, which are no longer supported. Convert modifiers to direct Python boolean expressions in `invisible`/`readonly`/`required`; preserve the original AND/OR logic. migration-view-attrs-states · sourcehr_leave_allocation_accrual_calculator_accruement_view_tree— View 'hr_leave_allocation_accrual_calculator_accruement_view_tree' is defined with a `<tree>` root tag: renamed to `<list>` in Odoo 18.0. migration-view-tree-tag · sourcehr_leave_allocation_accruement_view_tree— View 'hr_leave_allocation_accruement_view_tree' is defined with a `<tree>` root tag: renamed to `<list>` in Odoo 18.0. migration-view-tree-tag · source
Migration review checklist, not a compatibility verdict. No target version is selected: apply version-specific advice only when migrating to that version or later.
- Repository
- OCA/hr · module folder · Try on Runboat
- Module version
- 1.0.2
- Category
- Human Resources
- Folder size
- 0.15 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/hr
- Last tracking update
- 2026-08-07 07:31:59
- Authors
- Odoo Community Association (OCA), CorporateHub
- Maintainers
- Odoo Community Association (OCA), CorporateHub
- Committers
- Alexey Pelykh, Weblate, OCA Transbot, OCA-git-bot, oca-travis, Jaime Arroyo
Code Analysis
Views touched (7)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
hr_leave_allocation_accrual_calculator |
hr_leave_allocation_accrual_calculator | hr.leave.allocation.accrual.calculator | form | New |
hr_leave_allocation_accrual_calculator_accruement_view_form |
hr.leave.allocation.accrual.calculator.accruement.view.form | hr.leave.allocation.accrual.calculator.accruement | form | New |
hr_leave_allocation_accrual_calculator_accruement_view_tree |
hr.leave.allocation.accrual.calculator.accruement.view.tree | hr.leave.allocation.accrual.calculator.accruement | tree | New |
hr_leave_allocation_accruement_view_form |
hr.leave.allocation.accruement.view.form | hr.leave.allocation.accruement | form | New |
hr_leave_allocation_accruement_view_tree |
hr.leave.allocation.accruement.view.tree | hr.leave.allocation.accruement | tree | New |
hr_leave_allocation_view_form |
hr.leave.allocation.view.form.inherit.accrual | hr.leave.allocation | form | Inherits hr_holidays.hr_leave_allocation_view_form |
hr_leave_allocation_view_form_manager |
hr.leave.allocation.view.form.manager.inherit.accrual | hr.leave.allocation | form | Inherits hr_holidays.hr_leave_allocation_view_form_manager |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (6)
New fields (2)
-
time_typeSelectionrelated='holiday_status_id.time_type'store=True -
unpaidBooleanrelated='holiday_status_id.unpaid'store=True
No public methods.
New fields (13)
-
accrual_limitIntegercompute='_compute_accrual_limit'readonly=True -
accrual_methodSelectiondefault='prorate'readonly=Trueselection=[('prorate', 'Prorate'), ('period_start', 'At the beginning of the period'), ('period_end', 'At the end of the period')]states={'draft': [('readonly', False)], 'confirm': [('readonly', False)]}string='Accrual Method'track_visibility='onchange' -
accruement_idsOne2many → hr.leave.allocation.accruementcomodel_name='hr.leave.allocation.accruement'inverse_name='leave_allocation_id'readonly=Truestring='Accruements' -
interval_numberIntegerdefault=<expr>help='Duration of a single accrual period, measured in Accrual Period Units'string='Accrual Period Duration'track_visibility='onchange' -
interval_unitSelectiondefault=<expr>help='Units in which Accrual Period Duration is defined'string='Accrual Period Unit'track_visibility='onchange' -
limit_accrued_daysBooleanhelp='Limit total maximum number of days accrued in one accrual period.'readonly=Truestates={'draft': [('readonly', False)], 'confirm': [('readonly', False)]}string='Limit Number of Days Accrued'track_visibility='onchange' -
limit_accumulated_daysBooleanhelp='Limit total maximum number of days that can be accumulated.'readonly=Truestates={'draft': [('readonly', False)], 'confirm': [('readonly', False)]}string='Limit Total Balance'track_visibility='onchange' -
limit_carryover_daysBooleanhelp='Limit total maximum number of days to carryover to next accrual period.'readonly=Truestates={'draft': [('readonly', False)], 'confirm': [('readonly', False)]}string='Limit Number of Days to Carryover'track_visibility='onchange' -
max_accrued_daysFloathelp='Total maximum number of days accrued in one accrual period.'readonly=Truestates={'draft': [('readonly', False)], 'confirm': [('readonly', False)]}string='Max Number of Days Accrued'track_visibility='onchange' -
max_accumulated_daysFloathelp='Total maximum number of days that can be accumulated.'readonly=Truestates={'draft': [('readonly', False)], 'confirm': [('readonly', False)]}string='Total Balance Limit'track_visibility='onchange' -
max_carryover_daysFloathelp='Total maximum number of days to carryover to next accrual period.'readonly=Truestates={'draft': [('readonly', False)], 'confirm': [('readonly', False)]}string='Max Number of Days to Carryover'track_visibility='onchange' -
number_per_intervalFloatdefault=<expr>help='Allocation accrued per Accrual Period, measured in Allocation Units'string='Allocation per Accrual Period'track_visibility='onchange' -
unit_per_intervalSelectiondefault=<expr>help='Units in which Allocation per Accrual Period is defined'string='Allocation Unit'track_visibility='onchange'
-
action_recalculate_accrual_allocations(self)@api.multi -
action_recalculate_accrual_allocations_all(self)@api.model -
create(self, values)@api.model -
write(self, values)@api.multi
New fields (4)
-
accruedFloatreadonly=Truestring='Accrued' -
accruement_idsOne2many → hr.leave.allocation.accrual.calculator.accruementcomodel_name='hr.leave.allocation.accrual.calculator.accruement'inverse_name='calculator_id'readonly=Truestring='Accruements' -
balanceFloatreadonly=Truestring='Balance' -
dateDaterequired=Truestring='Date'
No public methods.
New fields (4)
-
accrued_onDatereadonly=Truerequired=Truestring='Accruement Date' -
calculator_idMany2one → hr.leave.allocation.accrual.calculatorcomodel_name='hr.leave.allocation.accrual.calculator'string='Calculator' -
days_accruedFloatreadonly=Truerequired=Truestring='Number of Days' -
reasonCharreadonly=Truerequired=Truestring='Reason'
No public methods.
New fields (4)
-
accrued_onDatereadonly=Truerequired=Truestring='Accruement Date' -
days_accruedFloatreadonly=Truerequired=Truestring='Number of Days' -
leave_allocation_idMany2one → hr.leave.allocationcomodel_name='hr.leave.allocation'string='Leave Allocation' -
reasonCharreadonly=Truerequired=Truestring='Reason'
No public methods.
New fields (2)
-
holiday_status_idMany2onerelated='holiday_id.holiday_status_id'store=True -
unpaidBooleanrelated='holiday_id.holiday_status_id.unpaid'store=True
No public methods.