8e6b59c761f5f823c2d9af5f07070b3d5cf6bba3
_compute_forecast_information of stock.move
Improve the performance/scalability of the forecasted compute. Duplicate the code of the `_get_report_lines` (`_get_forecast_availability_outgoing`) and specialize it to only compute necessary information for the `_compute_forecast_information`. It is mandatory to readd 'Component/Product Availability' (MO/picking) which aggregate the result of `_compute_forecast_information`. Note that with this refactor, it is still too slow to add in the view normally. We should fetch it with a lazy way. With a DB populate with 3 company and 6 warehouses (2 for each company), 50 locations, 30K stock moves, 9K quants and 1700 products. Before fix: To read 40 confirmed stock move (with forecast information): 35 SQL request, 0.031 ± 0.0004 sec of SQL, 0.204 ± 0.008 sec of Python => 0.235 sec To compute 7300 forecast information (52 draft MO - 99 confirmed MO): 382 SQL request, 1.334 ± 0.052 sec of SQL, 6.807 ± 0.223 sec of Python => 8.141 sec After refactor: To read 40 confirmed stock move (with forecast information): 35 SQL request, 0.029 ± 0.0004 sec of SQL, 0.074 ± 0.003 sec of Python => 0.103 sec To compute 7300 forecast information (52 draft MO - 99 confirmed MO): 369 SQL request, 0.550 ± 0.009 sec of SQL, 0.969 ± 0.012 sec of Python => 1.519 sec task-2579011 Part-of: odoo/odoo#77092
…
…
…
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%