feecd15956d262253973891abd02f1c75678f975
The method is used to get progress per column in kanban view (green-yellow-red-red lines in Project, CRM etc). There are two main usages: 1. get statistics for ``kanban_state`` (red/green circles) 2. get statistics for ``activity_state`` (colored clock icon for overdue/today/planned) Before this commit all cases were handled by calling search_read and then counting records per group in a python script. This is very inefficient, especially for ``activity_state``. This new implementation relies on ``read_group`` when possible, i.e., when both grouping fields (kanban column and progressbar field) are stored (case 1). It then falls back on a naive implementation inside ``_read_progress_bar``. Cases like 2 above can be addressed by overriding ``_read_progress_bar``. We also added some minimal test to ensure that we don't break anything. 1. Performance test on 60 K project.task records (kanban_state): With a filter for 6 records: ``` | measurement | before | after | |--------------------+--------+-------| | number of queries | 8 | 5 | | query time, ms | 11 | 7 | | remaining time, ms | 21 | 9 | ``` All records: ``` | measurement | before | after | |--------------------+--------+-------| | number of queries | 67 | 5 | | query time, ms | 300 | 55 | | remaining time, ms | 1780 | 12 | ``` --- opw-2346901 task-1915411 X-original-commit: 153621bdbab94a2a94a5bbfcabb4111cbc5970d8 Co-authored-by: Raphael Collet <rco@odoo.com>
…
…
…
Odoo
Odoo is a suite of web based open source business apps.
The main Odoo Apps include an Open Source CRM, Website Builder, eCommerce, Warehouse Management, Project Management, Billing & Accounting, Point of Sale, Human Resources, Marketing, Manufacturing, ...
Odoo Apps can be used as stand-alone applications, but they also integrate seamlessly so you get a full-featured Open Source ERP when you install several Apps.
Getting started with Odoo
For a standard installation please follow the Setup instructions from the documentation.
To learn the software, we recommend the Odoo eLearning, or Scale-up, the business game. Developers can start with the developer tutorials
Languages
Python
49.6%
JavaScript
47.8%
SCSS
2%
CSS
0.3%
HTML
0.2%