Project Total Costs
Total estimated and actual cost, revenues and margin of a project
The top of the project costing stack: it sums labour, subcontracting, material, equipment and production into one estimated and one actual total, compares them with the invoiced revenues, and reports the margin.
Features
- Estimated Cost Total per task = labour + subcontracting + raw material; per project it adds the general cost and the other charges.
- Actual Cost Total per task = labour + subcontracting + production done + raw material + equipment; per project it also adds the equipment cost.
- Cost Progress on Estimated Cost Total – actual over estimated, as a progress bar.
- Estimated Cost Total Today – the estimated total prorated on the planning of the task, refreshed daily by a scheduled action.
- Each task reports its share of the actual and of the estimated project cost.
- Budget tab on the project: Current Turnover, Actual Revenues, Revenues To Invoice, Total Costs, Costs To Complete Project and Project Margin, all read from the journal items posted on the analytic account of the project.
- Residual Costs Without Task – vendor bill lines on the project analytic account that no task claims.
- Total Invoiced and Total Purchase Cost per task, as optional columns in the task list.
Main fields
| Model | Field | Type | Description |
|---|---|---|---|
| project.task | estimated_cost_total / actual_cost_total | Monetary | Total cost of the task |
| project.task | estimated_cost_total_today | Float | Estimated total prorated on the planning |
| project.task | task_cost_on_actual_project_cost / task_cost_on_estimated_project_cost | Monetary | Share of the project cost |
| project.task | total_invoiced / cost_total_purchase | Monetary | Journal items and purchase lines of the task |
| project.project | estimated_cost_total / actual_cost_total | Monetary | Total cost of the project |
| project.project | cost_progress_on_estimated_cost_total | Monetary | Actual over estimated total |
| project.project | current_turnover / actual_revenues / revenues_to_invoice | — | Revenues on the project analytic account |
| project.project | total_costs / costs_to_complete_project / project_margin | Float | Costs and margin of the project |
| project.project | residual_costs_without_task | Monetary | Vendor bill lines with no task |
Demo data
- Two progress invoices for 210 000.00 and a vendor bill of 9 500.00 nobody charged to a task, which shows up as Residual Costs Without Task.
- A subcontracting bill of 4 250.00 booked on the MEP task analytic account, which feeds the actual contractor cost of that task.
- The whole picture on the site: 226 720.00 estimated against 80 702.00 actual (36 % of cost progress), 390 000.00 of project value and a project margin of 163 280.00.
- A project update snapshotting the figures on the dashboard.
Changelog
| Version | Notes |
|---|---|
| 19.0.1.0.0 | Migration to Odoo 19.0: unit tests, demo data, Italian translation and documentation. |
Developed by STeSI Consulting — Francesco Moccia <moccia.f@stesi.consulting>