Recurring Tasks & Process
Templated recurring task lists and process checklists with assignees and auto-generation
Repeatable processes — onboarding, month-end close, audits, maintenance, inspections — too often live in spreadsheets and people's memory, so steps get skipped and accountability is fuzzy. Odoo has no general-purpose recurring-checklist engine. This app lets HR, finance, operations and compliance teams define any process once as a weighted, assignee-aware template, then have it generate dated, trackable runs automatically on a daily/weekly/monthly/yearly schedule. Blocking dependencies enforce order, progress is computed from completed-step weights, and a SQL report proves completion rates — so nothing repeatable is ever forgotten again.
Key Features
Reusable process templates with categories
gb.process.template captures a named, categorised process (onboarding, financial close, audit, maintenance, quality) with an owner and a sequenced step_ids list. Each gb.process.template.step holds instructions, a default_assignee_id, a progress weight and a blocking flag, so a process is defined once and reused consistently.
Automatic recurrence via scheduled cron
Set recurrence_unit (day/week/month/year) and recurrence_interval, and the _cron_generate_due_runs scheduler spawns each run when next_run_date arrives. It honours lead_days to generate ahead and catches up missed runs (guarded to 60) so a server outage never leaves a gap.
Run lifecycle with weighted progress
gb.process.run moves draft to progress to done/cancel through action_start, action_done and action_cancel. _compute_progress derives the progress % from completed step weights (skipped lines excluded), and action_done refuses to close while any line is still pending.
Blocking dependencies and skip control
Each gb.process.run.line can be completed, skipped or reopened. action_complete calls _check_blocking_predecessors, which stops you finishing a step while an earlier is_blocking step is still to-do — enforcing the correct order on sequential, dependency-heavy processes.
Overdue detection and due-date tracking
run_date and due_date are derived from default_duration_days, and the searchable is_overdue flag plus days_to_due field surface late runs. _check_dates blocks a due date earlier than the run date, keeping the schedule coherent.
Bulk and one-click run generation
action_generate_run creates the next run from a single template, while the gb.process.generate.wizard bulk-generates runs for many templates at once, optionally overriding the owner and advancing each recurring template's next_run_date. action_pause and action_resume stop or restart recurrence without deleting anything.
Assignee tooling and chatter
action_assign_owner_to_unassigned fills empty steps with the run owner, unassigned_count flags gaps, and action_open_my_steps filters a user to just their lines. Both templates and runs inherit mail.thread, so every state change and generation is logged in chatter.
SQL-backed completion analytics
gb.process.run.report is a read-only SQL view over real stored columns (state, progress, total_steps, done_steps) for pivot and graph dashboards. Helpers get_completion_stats and get_completion_summary return done, overdue and average-progress figures grouped by template or state.
Use Cases
Screenshots
Process Runs
Run Analysis
Process Templates
Why Choose This Module
Odoo has no general-purpose recurring-checklist engine, so repeatable processes live in spreadsheets and memory — where steps get skipped. This app makes any process a reusable template that generates accountable, trackable runs automatically. It complements onboarding/offboarding tooling generically across every team.
Specifications
- Compatible: Odoo 18.0 / 19.0
- License: OPL-1
- Languages: English
- Author: Pokutsoft
- Dependencies: base, mail
- Support: support@pokutsoft.com
Update date: 2026-07-02