Zum Inhalt springen
← Alle Add-ons

Planning Task

Projektaufgaben sind geplant, aber wann genau arbeitet wer daran? Planning Task wandelt Aufgabenstunden in konkrete Zeitblöcke auf dem Mitarbeiterkalender um – mit intelligenter Verteilung.

Ihr Nutzen

Realistische Terminplanung

Constraint Solver berücksichtigt Arbeitszeiten, Feiertage, Urlaub und Abhängigkeiten. Keine Überlastung.

Transparenz im Team

Zweistufige Bestätigung, Umplanungsvorschläge, Deadline-Risiko-Erkennung und Produktivitätsverfolgung.

Funktionen im Detail

Dtx Planning Task

Version 18.0.4.0.0 planning project_forecast hr_timesheet ortools (Python)

Turn project tasks into concrete time blocks on the planning timeline. A CP-SAT constraint solver distributes task hours across employee calendars while respecting capacity, shifts, leaves, and task dependencies — all with one click.

Features at a Glance

📅 CP-SAT Scheduling Engine

Google OR-Tools constraint solver allocates hours per day across resources. Respects work calendars, holidays, existing slots, and avoids overallocation.

📈 Progress & Productivity Tracking

Manual progress (0–100%) combined with timesheet hours yields a live productivity score and projected total hours. Status indicators: Ahead, On Track, Behind.

👥 Parallel & Independent Scheduling

Multiple resources on one task? Choose Parallel (same time blocks) or Independent (each resource on their own schedule).

🔎 Planning Status Dashboard

Each task shows its planning state: Not Planned, Partially Planned, Planned, or Over Budget — visible in list, kanban, and form views.

✅ Slot Confirmation Workflow

Two-step confirmation: the assigned employee and their manager must both approve. Color-coded slots show the confirmation state at a glance.

🔃 Reschedule Proposals

Employees propose new times via a wizard. The foreman or PM can approve or reject. Pending proposals are highlighted in red on the Gantt view.

🔗 Task Dependencies

When task B depends on task A, the earliest planning start date is automatically computed. Violations are flagged as warnings on the task form.

📦 Resource Requests (Pools)

Request “2 developers from the team” without naming them. The solver picks the least-loaded candidates at scheduling time.

⏰ Deadline Risk Detection

If planning slots extend beyond a task’s deadline, the task is flagged as “Deadline at Risk” with the exact variance in days.

🔒 Task Foreman Permissions

A task foreman (separate from the project manager) controls who can edit progress, scheduling mode, and manage slots. Auto-subscribed as follower.

🚫 Auto-Unschedule on Close

When a task is marked as Done or Cancelled, all linked planning slots are automatically removed and a chatter note documents the cleanup.

📊 Progress Drift Reminder

When timesheet hours significantly outpace the manually set progress, a to-do activity is created for the task foreman to review.

Productivity Model

The addon introduces a lightweight productivity model that connects allocated time, timesheet hours, and manual progress:

Field Formula Example (80h budget, 26h worked, 100% done)
Progress Manual input (0.0–1.0, shown as 0%–100%) 100%
Productivity allocated × progress / effective_hours 80 × 1.0 / 26 = 3.08
Productivity Status ≥1.20 Ahead · ≥1.05 Slightly Ahead · ≥0.90 On Track · ≥0.70 Slightly Behind · <0.70 Behind Ahead
Projected Total effective + allocated × (1 − progress) / productivity 26 + 0 = 26:00 h
Why manual progress? Odoo’s default progress is computed from timesheets vs. allocated hours. This addon replaces it with a manual field so the task foreman can express the actual completion state, which may differ from hours spent.

Planning Status Overview

StatusMeaningWhen
Not Planned No planning slots exist Task has allocated hours but no scheduling done yet
Partially Planned Some slots exist, but not enough worked + planned < projected total
Planned Fully scheduled worked + planned ≥ projected total
Over Budget More committed than projected worked + planned > projected + tolerance

Confirmation Workflow

1

Slot Created — Requested

The scheduler creates slots in “Requested” state. Shown in yellow on the Gantt chart.

2

Employee Confirms — User Confirmed

The assigned employee clicks “Confirm”. Slot turns light blue (partially confirmed).

3

Manager Confirms — Confirmed

The employee’s direct manager also confirms. Slot turns to its default color and becomes protected.

Protected slots: Once fully confirmed, only the original requester, the resource’s manager, or a project manager can modify or delete the slot. Any modification resets both confirmations.

Reschedule Workflow

1

Employee Proposes New Time

Via a wizard, the employee selects a new start time and optionally provides a reason. The slot is marked in red on the Gantt view.

2

Foreman Approves or Rejects

Approve: The slot is moved to the proposed time. Reject: The proposal is cleared and the original time remains.

Scheduling Wizard

The wizard is accessible via the “Schedule Task” button on the task form. It shows the task’s current budget, worked hours, productivity, and the calculated remaining hours to plan.

ParameterDescription
Hours to PlanPre-filled: projected total − worked − already planned
Hours per Day per ResourceHow many hours per day each resource should work on this task
Start DateMust be tomorrow or later. Respects dependency constraints.
End DateOptional. If unset, the solver uses a rolling horizon.
Time PreferenceMorning (before 12:00), Afternoon (12:00+), or Flexible
Max HorizonHow many months ahead the solver looks (default: 3)
CP-SAT Solver: The engine uses Google OR-Tools CP-SAT to find optimal slot placements in 15-minute increments. It avoids overlap with existing slots and respects each resource’s work calendar.

Task Dependencies

When task B “depends on” task A (via Odoo’s built-in dependency field), the addon computes:

  • Earliest Planning Start Date — derived from the predecessor’s planning end date or deadline, plus one day. The scheduler enforces this as a constraint.
  • Dependency Start Violation — flagged when existing slots start before the earliest allowed date.

Resource Types

TypeTabDescription
Named Resources Resources tab Pin specific employees, machines, or rooms to a task. Material resources force parallel scheduling mode.
Resource Requests (Pool) Resource Requests tab Request N resources of a type. The solver picks the least-loaded candidates from the pool at solve time.

Use Cases

#ScenarioWhat to Observe
1 Ahead: 80h budget, 26h worked, 100% done Productivity 3.08, Ahead, Projected 26h
2 On Track: 20h budget, 10h worked, 50% done Productivity 1.00, On Track, Projected 20h
3 Behind: 16h budget, 12h worked, 30% done Productivity 0.27, Behind, Projected 74h
4 Not started: 10h budget, no hours Productivity N/A, Projected falls back to allocated (10h)
5 Fully Planned: 8h budget, 4 slots Planned, Smart button shows 8:00 / 8:00
6 Partially Planned: 12h budget, 4h slots Partially Planned
7 Over Budget: 4h budget, 5h slots Over Budget, warning banner
8 Deadline at Risk: deadline Wed, slots until Fri Warning: Planning End > Deadline (+1 day)
9 Confirmation States: 3 slots (confirmed, partial, requested) Color coding: green / light blue / yellow on Gantt
10 Pending Reschedule: confirmed slot with proposal Red reschedule banner on task, red slot on Gantt
11 Dependencies: Task B waits for Task A Earliest start date computed, dependency warning if violated
12 Parallel Mode: 2 employees, same time block Both resources scheduled simultaneously
13 Material Resource: room + employee Parallel mode enforced, room appears as resource
14 Resource Pool Request: “2 developers” Resource Requests tab shows pool-based demand
15 Progress Drift: 75% hours spent but only 20% progress Productivity 0.27 (Behind), activity reminder created
16 Custom Foreman: different from project manager Foreman field shown, controls who can edit planning fields

Technical Details

ModelKey FieldsDescription
project.task progress, productivity, projected_total_hours Manual progress (Float 0–1), computed productivity and projection
project.task planning_slot_hours, planning_status, is_fully_planned Aggregated slot info and planning state
project.task task_foreman_id, scheduling_mode, max_concurrent_workers Permission control and scheduling behavior
project.task deadline_at_risk, deadline_variance_days Deadline risk detection from planning end vs. task deadline
project.task earliest_planning_start_date, dependency_start_violation Dependency-derived scheduling constraints
planning.slot task_id, dtx_state Link to task, confirmation workflow state
planning.slot dtx_proposed_start/end_datetime, dtx_reschedule_reason Reschedule proposal fields
dtx.task.resource.line task_id, resource_id Named resource assignments on tasks
dtx.task.resource.request task_id, resource_type, quantity Pool-based resource requests
dtx.planning.scheduler CP-SAT solver engine (15-min grid, calendar-aware)

Configuration

System ParameterDefaultDescription
dtx_planning_task.overbudget_tolerance_pct 10.0 Percentage tolerance before a task is flagged as “Over Budget”
dtx_planning_task.progress_reminder_threshold 20 Percentage-point drift between nominal and actual progress that triggers a review reminder

FAQ

What happens when I close a task?
All linked planning slots are automatically removed. A chatter note documents how many slots and hours were released.
What if there is not enough capacity?
The solver plans as much as possible and shows a “Partial Scheduling” warning with details. Use “Schedule Task” again later or add more resources.
Does the solver respect holidays and leaves?
Yes. It uses each resource’s work calendar including public holidays and approved leaves.
Can I edit a confirmed slot?
Only the original requester, the resource’s manager, or a project manager can modify confirmed slots. Any change resets both confirmations.
How is Progress different from Odoo’s default?
Odoo 18’s default progress is auto-computed from timesheets vs. allocated hours. This addon replaces it with a manual field (0–100%) so the foreman can set the actual completion state. The productivity metrics then compare actual hours against what the progress implies.

Dtx Planning Task · Version 18.0.4.0.0
© 2026 Detalex GmbH

Förderfähige Maßnahme

Die Einführung und Anpassung von ERP-Systemen wie Odoo ist in Deutschland förderfähig. Unternehmen können von staatlichen Förderprogrammen profitieren – z. B. über das Programm „go-digital“ des BMWi, „Digital Jetzt“ oder länderspezifische Digitalisierungsförderungen. Wir unterstützen Sie gerne bei der Antragstellung und beraten Sie zu den Möglichkeiten für Ihr Unternehmen.

Interesse geweckt?

Lassen Sie sich unverbindlich beraten – wir zeigen Ihnen, wie dieses Modul in Ihre Prozesse passt.

Beratungsgespräch vereinbaren