Saturday, April 20, 2024
8 changes · 17.0
Enhancements to existing features
This update improves the speed of checking unit of measure categories, especially for businesses with large catalogs. By optimizing how the system counts units in a category, processing time is reduced dramatically—from 900ms down to just 15ms for large datasets—resulting in faster system performance and better user experience.
Original PR description
This commit improves the performance of the reference check for large categories of Units of Measure (UoM). After this commit, the number of UoMs in the category is counted using the read_group method instead, resulting in faster performance. ### Benchmark: | Nbr of UoM | Before | After | | ---------: | -----: | ----: | | 0 | 0ms | 0ms | | 1 | 1ms | 1ms | | 30 | 6ms | 3ms | | 200 | 7ms | 2ms | | 18000 | 900ms | 15ms | opw-3775689 Forward-Port-Of: odoo/odoo#157752
Resolved issues and error corrections
Fixed an issue where consolidation reports were always printing in portrait mode, even when the content was too wide to fit properly. The system now automatically detects when a report is too large and switches to landscape mode for better readability and proper formatting of wide financial data.
Original PR description
Before that, the report was always printed in portrait mode. This was due to the fact the consolidation report does not use the options['columns'] key, unlike pretty much every other report. Because of that, the standard code couldn't detect it would be too large for the portrait mode. We fix that by introducing a context key to control that, and forcing it when necessary on the consolidation report. OPW 3850656 Forward-Port-Of: odoo/enterprise#60946 Forward-Port-Of: odoo/enterprise#60637
This fix prevents TaxCloud from recalculating taxes when confirming down payment invoices, which was causing incorrect tax amounts. Down payment taxes are now correctly preserved from when the invoice was created, ensuring the invoice total remains accurate throughout the process.
Original PR description
**Steps to reproduce:** - Install Accounting and Sales - Configure TaxCloud in Accounting settings - Create a SO: * Customer: [US customer] (e.g. Azure Interior) * Product: [any] * Unit Price: [any]…
**Steps to reproduce:** - Install Accounting and Sales - Configure TaxCloud in Accounting settings - Create a SO: * Customer: [US customer] (e.g. Azure Interior) * Product: [any] * Unit Price: [any] (e.g. $ 200.00) * Fiscal Position (Other Info tab): Automatic Tax Mapping (TaxCloud) - Confirm the SO => The taxes will be recomputed with TaxCloud (e.g. $ 20.50 with "Tax 10.250 %") - Create a down payment from SO (via "Create Invoice" button): * Create Invoice: Down payment (percentage) * Down Payment Amount: 50% => The total amount of the down payment is 50% of the total amount of the SO (i.e. $ 110.25) and the computed taxes are the same than the taxes on the SO. - Confirm the down payment **Issue:** Upon confirmation, the taxes are recomputed with TaxCloud and the total amount is not the same anymore. **Cause:** The "Down payment" product has a specific TaxCloud Category and as the taxes are recomputed upon confirmation, the tax amount changes (e.g. from $ 20.50 to $ 0.00). **Solution:** Do not recompute taxes with TaxCloud when confirming a down payment as the taxes should have already been computed correctly when the down payment has been created. opw-3814524 Forward-Port-Of: odoo/enterprise#60722
Fixed a layout issue with blog filters on mobile devices by replacing the broken filter dropdown with a more user-friendly dropdown or side panel (offcanvas) that appears next to the search bar. This improvement makes the mobile experience more consistent with other parts of the website and provides better spacing for easier navigation.
Original PR description
The blogs filters in mobile is breaking the layout. This commit applies a dropdown or an offcanvas instead which is displayed next to searchbar. In this 17.0 fix, the dropdown becomes an offcanvas if we have a sufficient amount of blogs which allows better navigation on mobile and makes it consistent with other website modules. Additionally it adapts the spacing to make it even between the navigation component. The `t-set="_classes"` is not removed in case of potential xpath in production. Same goes for the `container` class on the div at line 9, being overridden by it's t-attf-class counterpart. task-3315921 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#145547
This fix resolves an issue where the live chat system could select an operator who wasn't available for assignment, causing errors. The system now correctly ensures that only operators from the approved list are selected when assigning someone to handle a new chat conversation.
Original PR description
Before this PR, trying to get an available operator could result in an error. When a live chat is created, an operator is selected based on various criteria such as language, country, number of ongoing chats and availability for calls. This selection process involves the `_get_less_active_operator` method, which receives the status of all operators and a list of operators to choose from. Prior to this fix, an operator not included in the list of operators to choose from could still be selected, resulting in errors when trying to locate them in the operator list. This PR resolves the issue by ensuring that operators are only selected from the provided list. opw-3874872
Fixed an unnecessary database operation that was occurring when portal users were created, which could cause system errors during high-volume user signups. The system now skips this operation for portal users since they don't use the digest feature anyway, improving reliability and performance.
Original PR description
When a portal user is created (e.g. through the `auth_signup` module), an unnecessary write is done on the `write_date` of the default digest. This `write` is unnecessary since a portal user is never subscribed to the default digest. In case of a high signup frequency, it can cause concurrent transaction errors. We avoid writing if no internal user is being created. Forward-Port-Of: odoo/odoo#162230
Activity summaries in the Accounting app's Miscellaneous Operations view were stretching across the entire screen when text was long. This fix constrains the activity summaries to stay within their card boundaries, improving the dashboard's visual layout and readability.
Original PR description
Issue ----- The activities summaries displayed by the misc. operations view in the accounting app take up the entire screen and span across the card if the activity summary is too long. Steps ----- - Open the Accounting App. - Create a new entry from 'Miscellaneous Operations'. - Add an activity with a long summary. - Go back the dashboard. The summary will try to span the entire width. Cause ----- The activities are displayed with a field tag in the kanban view. The field tag refers to the activities js component as a widget. Due the use of a widget attribute, the template generates a div with class: "o_field_widget". This class is defined to have a css "display" attribe with a default value of "inline-block". Using "inline-block" causes the activity row to take up the whole width. opw-3839992 Forward-Port-Of: odoo/odoo#160167
This fix resolves a crash that occurred when users tried to install the PEPPOL accounting module. The issue was that enabling PEPPOL didn't properly update a related module's form view, causing the installation to fail. Now the system automatically updates the necessary form when installing PEPPOL, allowing users to successfully enable this feature without errors.
Original PR description
The aim of this commit is to allow user to install `account_peppol` without facing a traceback. Context: The commit cffd0e9dd91376dd7fe4613f4fd94e659daaeef0 introduced a check based on a field introduced in the view by another module it depends on. The problem is that ticking the peppol checkbox install the `account_peppol` module but doesn't trigger an update of the `account_edi_ubl_cii` module. Before the commit: Impossible to installing `account_peppol`. After the commit: Installing `account_peppol` will update the view `account_edi_ubl_cii.account_move_send_form` if the field added by commit cffd0e9dd91376dd7fe4613f4fd94e659daaeef0 can't be found. opw-3874304 Forward-Port-Of: odoo/odoo#162598