Absence & Bradford Factor Management
Frequent-short-absence Bradford Factor scoring, threshold-triggered review, absence-pattern report
Absence & Bradford Factor Management
Frequent-short-absence Bradford Factor scoring, threshold-triggered review, absence-pattern report
Absence & Bradford Factor Management logs every employee absence and computes the classic Bradford Factor (S squared times D), the HR metric that penalises frequent short absences far more heavily than one long continuous absence of the same total length. Scores are stored as auditable snapshots, thresholds are fully configurable per company, and crossing the review trigger automatically schedules a manager activity, all on plain Community hr with no Time Off dependency required.
Key Features
Standalone absence log
hr.absence.record tracks employee, start/end date, absence type (sickness, unauthorized, other) and an automatically computed day count, working on plain Community hr with no Time Off app required.
Optional Time Off soft-integration
When hr_holidays happens to be installed, sync_from_hr_leaves and a daily cron import validated hr.leave records into the absence log, idempotently, without ever hard-depending on hr_holidays. Each company maps its Time Off types explicitly to a Bradford absence type (or excludes them, e.g. planned annual leave) and chooses which absence types count in the score; leaves of an unmapped type are not imported and are listed on the configuration.
Bradford Factor engine
A pure-python, unit-tested engine merges overlapping or near-adjacent absences into spells, sums the total days, and computes the Bradford Factor S^2 x D so scattered short absences score far worse than one continuous absence of equal length.
Configurable scoring thresholds
bradford.factor.config lets each company set the green/yellow/red score bands, which level triggers a formal review, the rolling-period length, the spell-merge gap (bridging weekends) and the frequent-short-absence pattern tuning.
Threshold-triggered review workflow
Crossing the configured trigger level automatically schedules a review activity for the employee's manager and posts a chatter update; a to-review/reviewed status tracks the outcome (action_mark_reviewed / action_reopen_review).
Frequent-short-absence pattern detection
detect_pattern flags employees whose absence history is dominated by many short spells, the classic Bradford red flag, separately from the raw numeric score.
Bulk compute wizard
bradford.score.compute.wizard scores an entire department, or every active employee, over a chosen period in one click and opens the results pre-filtered to those that crossed the review threshold.
Scheduled recompute and absence-pattern reporting
A cron job (cron_recompute_all) recomputes the rolling-window score for every active employee, and pivot/graph views over the absence log and score history break results down by employee, department, type and level.
Use Cases
Screenshots
01 Bradford Scores List
02 Absence Records List
03 Score Form
04 Reviews Pending List
Why Choose This Module
Rather than a manual spreadsheet formula prone to inconsistent application, this module makes the Bradford Factor a governed, auditable HR process: every score is a stored snapshot with a timestamp and reviewer trail, the underlying spell-merging and scoring maths lives in an independently tested engine, and the workflow closes the loop by turning a red score straight into a manager activity.
Specifications
- Compatible: Odoo 18.0 / 19.0 / 20.0
- License: OPL-1
- Languages: 35+
- Author: Pokutsoft
- Dependencies: hr
- Support: support@pokutsoft.com
- Update date: 2026-10-02
Related modules
Employee Loan & Salary Advance
Loan/advance request, approval, installment repayment plan, payroll-deduction link, remaining balance
Employee Recognition: Kudos & Awards
Peer-to-peer kudos with badges/points, leaderboard and periodic recognition awards
Employee Travel Request & Authorization
Pre-trip travel request with estimated budget, manager + threshold approval chain and actual-expense match