Attendance Policy
hr_attendance_policy version 19.0.1.0.0 depends on hr_attendance_delta. It evaluates configured continuous-break rules on native Extra Hours rows and displays conflicting policies. It warns; it does not block attendance creation or create an approval workflow.
Required setup
- Install Attendance Delta.
- Ensure native Odoo creates Extra Hours rows for the employee and day.
- Open the module’s Attendance Policies menu and create an active policy.
- Add one or more rules with a worked-hours range and Minimum Delta.
-1 means no lower or upper bound, depending on the field. A rule applies when its worked-hours range matches and no single Delta Hours value for the day is at least the required Minimum Delta.
Default policy bands
| Worked hours | Required continuous break |
|---|---|
| 5.5 to less than 7 | 15 minutes |
| 7 to less than 9 | 30 minutes |
| 9 or more | 1 hour |
These values are configuration, not a legal interpretation. Confirm the organisation’s policy and applicable law before changing them.
How the result is calculated
For each employee/date Extra Hours row, the module sums closed attendance worked_hours, collects same-day Delta Hours, and evaluates every active rule. A rule is satisfied by one gap meeting the threshold. Multiple smaller gaps are not added together. If multiple policies conflict, all are shown.
After a relevant attendance create, edit, or deletion, the affected employee/date Extra Hours rows are recomputed.
Review a conflict
Open Attendances > Extra Hours, select the employee/day, and inspect Worked Hours and Conflicting Policies. Then correct the attendance timestamps or the policy configuration as appropriate. A conflict is informational; managers must apply any follow-up process outside this module.
Verify
With an active 30-minute rule for a seven-hour day, create closed attendance records totalling seven hours with only a 20-minute Delta. The Extra Hours row should show the policy. Change the gap to 30 minutes and confirm that the conflict clears.