Daily updates from Odoo
Thursday, July 18, 2024
10 changes · master
Resolved issues and error corrections
This update adds automated test coverage for a previously fixed POS IoT printer issue. It helps reduce the risk of the same problem returning in future releases, with no direct change to user-facing behavior.
Original PR description
This commit is just adding a test for the fix made here (https://github.com/odoo/odoo/pull/165798) opw-3792576
Code cleanup and technical improvements
Spreadsheet pivot measures now use explicit identifiers to stay aligned with the latest spreadsheet engine changes. This is an internal cleanup that helps keep spreadsheet reports, filters, templates, and collaboration features reliable without changing day-to-day user workflows.
Miscellaneous changes
**Steps to reproduce**: - Create an MO for Stool - In the shop floor, open the "assembly" step of the created WO **Currently**: scanning barcode for back/skip does not do anything. **After this commit**: scanning the barcode executes the expected command. task-4047193 Forward-Port-Of: odoo/enterprise#66617 Forward-Port-Of: odoo/enterprise#66579
Original PR description
**Steps to reproduce**: - Create an MO for Stool - In the shop floor, open the "assembly" step of the created WO **Currently**: scanning barcode for back/skip does not do anything. **After this commit**: scanning the barcode executes the expected command. task-4047193 Forward-Port-Of: odoo/enterprise#66617 Forward-Port-Of: odoo/enterprise#66579
Issue: -------------------- When you open a sign template you can see there are double scroll bars on the iframe Cause: ---------------------- The sign item toolbar placed on the left side is given 100% height and 1px border which is causing the iframe body to overflow Solution: ----------------------------- The 100% height given to the toolbar is changed with -webkit-fill-available task-4014519 Forward-Port-Of: odoo/enterprise#66736 Forward-Port-Of: odoo/enterprise#65609
Original PR description
Issue: -------------------- When you open a sign template you can see there are double scroll bars on the iframe Cause: ---------------------- The sign item toolbar placed on the left side is given 100% height and 1px border which is causing the iframe body to overflow Solution: ----------------------------- The 100% height given to the toolbar is changed with -webkit-fill-available task-4014519 Forward-Port-Of: odoo/enterprise#66736 Forward-Port-Of: odoo/enterprise#65609
With odoo/odoo#138937, making these declarations in enterprise isn't required anymore and everything can be centralized in community The expense/revenue deferred account declarations will be created in community in odoo/odoo#173370 meaning this should now be removed from enterprise task-383985 Forward-Port-Of: odoo/enterprise#66763
Original PR description
With odoo/odoo#138937, making these declarations in enterprise isn't required anymore and everything can be centralized in community The expense/revenue deferred account declarations will be created in community in odoo/odoo#173370 meaning this should now be removed from enterprise task-383985 Forward-Port-Of: odoo/enterprise#66763
- Go to Dashboards > Configuration > Dashboards - Open the Human Resources section - Open the payroll dashboard - Open the Period filter configuration panel - the field matching period offset of pivot 3 and 4 are inverted. In the Data sheet, the column named "current" (pivot 3) is filtering on previous, and the one called "previous" (pivot 4) is not filtering on anything. Note that this fix is only active on new databases or if the dashboard is deleted then the module "spreadsheet_das
Original PR description
- Go to Dashboards > Configuration > Dashboards - Open the Human Resources section - Open the payroll dashboard - Open the Period filter configuration panel - the field matching period offset of pivot 3 and 4 are inverted. In the Data sheet, the column named "current" (pivot 3) is filtering on previous, and the one called "previous" (pivot 4) is not filtering on anything. Note that this fix is only active on new databases or if the dashboard is deleted then the module "spreadsheet_dashboard_hr_payroll" is updated. Task: 4056412 Forward-Port-Of: odoo/enterprise#66760
The model 347 report is adding a partner exclusion domain in the search call. It is done by firstly retrieving those partner IDs to then add that list of IDs into a `not in` domain leaf. The issue is that the list of IDs can be gigantic, leading to performance issues. Before odoo/enterprise#61452, it was a blocking issue as if the list was too long (100,000 IDs raise the issue), it would simply make the code crash when loading the report. That PR then simply bypassed the issue by passing t
Original PR description
The model 347 report is adding a partner exclusion domain in the search call. It is done by firstly retrieving those partner IDs to then add that list of IDs into a `not in` domain leaf. The issue is…
The model 347 report is adding a partner exclusion domain in the search call. It is done by firstly retrieving those partner IDs to then add that list of IDs into a `not in` domain leaf. The issue is that the list of IDs can be gigantic, leading to performance issues. Before odoo/enterprise#61452, it was a blocking issue as if the list was too long (100,000 IDs raise the issue), it would simply make the code crash when loading the report. That PR then simply bypassed the issue by passing the domain as `forced_domain` so it would not go through the `literal_eval()` call (which is the one crashing when the list is too long). But even after that fix, we still provide the list of IDs into the domain and so ultimately in the SQL request, which can still be an issue if there are too many. This commit improves that by passing the SQL subquery (the one fetching the partners to exclude) directly into the domain, so the SQL query won't contain any list of IDs but just a sub-select. It does have better performance within PostgreSQL for big lists. Note that the `SQL()` query is surrounded by parentheses on purpose, as it doesn't work otherwise. This might be improved at the ORM level in the future with odoo/odoo#163560. Task [link](https://www.odoo.com/web#model=project.task&id=3895983) task-3895983 Forward-Port-Of: odoo/enterprise#66794 Forward-Port-Of: odoo/enterprise#62866
Currently, the external `l10n_nl_reports` test checking the validity of the generated XML file is failing due to some missing user. By adding the `enter_test_mode` method, we make sure that the user will be maintained all throughout the testing process like this is done for the non-external test. Forward-Port-Of: odoo/enterprise#66500
Original PR description
Currently, the external `l10n_nl_reports` test checking the validity of the generated XML file is failing due to some missing user. By adding the `enter_test_mode` method, we make sure that the user will be maintained all throughout the testing process like this is done for the non-external test. Forward-Port-Of: odoo/enterprise#66500
The current code is taking the residual amount instead of the statement line amount. When doing a reco model 'percentage_st_line' on 1000: Line 1 - 74% Line 2 - 24% Line 3 - 2% We get: 1000 * 0.74 = 740 (1000 - 740) * 0.24 = 62.4 (1000 - 740 - 62.4) * 0.02 = 3.95 Instead of: 1000 * 0.74 = 740 1000 * 0.24 = 240 1000 * 0.02 = 20 task_id: 3940370 Forward-Port-Of: odoo/enterprise#66735 Forward-Port-Of: odoo/enterprise#62884
Original PR description
The current code is taking the residual amount instead of the statement line amount. When doing a reco model 'percentage_st_line' on 1000: Line 1 - 74% Line 2 - 24% Line 3 - 2% We get: 1000 * 0.74 = 740 (1000 - 740) * 0.24 = 62.4 (1000 - 740 - 62.4) * 0.02 = 3.95 Instead of: 1000 * 0.74 = 740 1000 * 0.24 = 240 1000 * 0.02 = 20 task_id: 3940370 Forward-Port-Of: odoo/enterprise#66735 Forward-Port-Of: odoo/enterprise#62884
When the document is filled in with the OCR values, we need to use the document's company context, otherwise it can lead to inconsistent values being selected. For example, the payment terms of a supplier are company dependent, so we need the right company context to select the one from the company of the invoice. Related task: [#3902741](https://www.odoo.com/odoo/project.task/3902741?cids=1) Forward-Port-Of: odoo/enterprise#66779 Forward-Port-Of: odoo/enterprise#66168
Original PR description
When the document is filled in with the OCR values, we need to use the document's company context, otherwise it can lead to inconsistent values being selected. For example, the payment terms of a supplier are company dependent, so we need the right company context to select the one from the company of the invoice. Related task: [#3902741](https://www.odoo.com/odoo/project.task/3902741?cids=1) Forward-Port-Of: odoo/enterprise#66779 Forward-Port-Of: odoo/enterprise#66168