Deltatech Project Pricelist
by Terrabit https://www.terrabit.ro , Dorin Hongu https://www.terrabit.ro| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Sales (sale_management)
• Invoicing (account) • Project (project) • Discuss (mail) |
| Lines of code | 89 |
| Technical Name |
deltatech_project_price_list |
| License | LGPL-3 |
| Website | https://www.terrabit.ro |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Sales (sale_management)
• Invoicing (account) • Project (project) • Discuss (mail) |
| Lines of code | 89 |
| Technical Name |
deltatech_project_price_list |
| License | LGPL-3 |
| Website | https://www.terrabit.ro |
Deltatech Project Pricelist
Project-level pricelist used when creating Sales Orders from a project
Project-level pricelist used when creating Sales Orders from a project or a task. Built for Odoo 19.
Purpose
Allow project managers to define a default pricelist on each project so that any Sales Order created from that project (or from one of its tasks) automatically uses the correct pricelist. This avoids manual selection mistakes and keeps pricing consistent.
Key Features
- ✓New field on projects:
Pricelist(project.project.pricelist_id). - ✓Project Sales Orders action injects
default_pricelist_idso new quotations are prefilled with the project’s pricelist. - ✓When opening a quotation form from a project or task,
sale.order.default_getproposes the project’s pricelist before save. - ✓Server-side safety: during
sale.order.create, if a Sales Order is created from a project/task and no pricelist is provided, the project’s pricelist is applied. - ✓Explicit pricelist chosen by the user or provided via context is never overridden.
UI/Views
- Project form (simplified): displays the
Pricelistfield in the settings section. - Project edit view inherited from
sale_project: shows thePriceliston the Settings page (visible when the project is billable and not a template).
Compatibility
- Odoo 19.
Dependencies
sale_project(Project ↔ Sales integration).
Installation
- Ensure your
addons_pathincludes this module’s directory. - Install the module:
./odoo/odoo-bin -c odoo18.conf -d o19_playground -i deltatech_project_price_list --stop-after-init
Usage
- Open a Project and set the
Pricelistfield. - Create a quotation from the project’s Sales Orders smart button, or from a task in that project.
- The quotation’s
Pricelistwill be prefilled with the project’s pricelist and pricing will follow it.
Tests
Automated tests cover:
- ✓Action context injection (
default_pricelist_id) from the project. - ✓
sale.order.createapplying the project pricelist (project/task flows). - ✓
default_getproposing the project pricelist when opening the SO form from project/task. - ✓Respect of an explicit pricelist provided by the user/context.
Run tests (on a disposable DB):
./odoo/odoo-bin -c odoo18.conf -d o19_test -i deltatech_project_price_list --test-tags=deltatech_project_price_list --stop-after-init
License
LGPL-3.
Bug Tracker
Bugs are tracked on Terrabit Issues. In case of trouble, please check there if your issue has already been reported.
Do not contact contributors directly about support or help with technical issues.
Credits
Authors
- Terrabit
- Dorin Hongu
Maintainers
This module is part of the dhongu/deltatech project on GitHub.
You are welcome to contribute.
Need help getting started?
We are an Odoo partner building apps for the Romanian market (SAGA & WinMentor export; Romanian accounting localization in progress). Direct support from the team that built the module.
Contact Terrabit →
Please log in to comment on this module