Wednesday, January 22, 2025
16 changes · 18.0
Enhancements to existing features
This update adjusts the UrbanPiper Point of Sale product list so product ordering continues to work correctly after a related view change. It helps keep product lists organized and consistent for users managing items through the POS integration.
Original PR description
Following this commit: ==== - Inherit id reference has been updated due to changes of view mode in product list view to primary. task-4423837
Resolved issues and error corrections
This fix prevents tooltips from appearing immediately when users tap buttons on small screens, especially where they could cover dropdown menus. Tooltips now require a longer press on touch devices and close when the button is clicked, making mobile navigation less frustrating.
Original PR description
Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Miscellaneous changes
Refund order in spain require a refund reason. Steps to reproduce: ------------------- * Install l10n_es_pos_tbai module * Open PoS * Make an order and try to refund it > Observation: You get an error message saying that you need to add a refund reason opw-4282586 Forward-Port-Of: odoo/odoo#192538 Forward-Port-Of: odoo/odoo#191205
Original PR description
Refund order in spain require a refund reason. Steps to reproduce: ------------------- * Install l10n_es_pos_tbai module * Open PoS * Make an order and try to refund it > Observation: You get an error message saying that you need to add a refund reason opw-4282586 Forward-Port-Of: odoo/odoo#192538 Forward-Port-Of: odoo/odoo#191205
This fixes an issue where guests visiting the support page could not see the live chat operator's profile picture. The live chat avatar request now includes the needed access token, restoring the expected visual experience for website visitors.
Original PR description
Follow up of https://github.com/odoo/odoo/pull/187799 The livechat override needs to be adapted as well to provide the token. - Login with Mitchell Admin to a database with im_livechat installed - Open support page as guest - The operator picture is missing opw-4489740
This change makes an automated test for document error handling run consistently by preventing timing conflicts during the test. It helps reduce false failures in the development process without changing the product experience for users.
Original PR description
This commit solves the undeterministic behavior of the multiple tracebacks test by making sure no race condition can happen when triggering the errors.
The Documents app now correctly highlights the Info and Tags button when its related panel is open. This gives users clearer visual feedback and reduces confusion when managing document details and tags.
Original PR description
Steps to reproduce:
1. click the 'info & Tags' button from 'action' on the left side.
2. 'i' tag icon button on the right side. 3. The button is not getting 'active' dynamically.
Technical Reason:
"{'active': this.documentsState.isChatterVisible" in the documents_control_panel was not updating based on chatterState.visible in documents_kanban_renderer. This ensures the button's "active" class behaves as expected
After this Commit:
The Button will get 'active' according to the 'info&Tags' button.
Task-4427575The event listeners are never removed when the component is unmounted which means to global `env.bus` always keeps a reference to this component and everything that goes with it, including its (child)env. In version 18.0, the spreadsheet client action instantiates its own `BurgerMenu` component and also adds the spreadsheet `model` in the action child env (which can be expensive memory-wise) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forw
Original PR description
The event listeners are never removed when the component is unmounted which means to global `env.bus` always keeps a reference to this component and everything that goes with it, including its (child)env. In version 18.0, the spreadsheet client action instantiates its own `BurgerMenu` component and also adds the spreadsheet `model` in the action child env (which can be expensive memory-wise) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#194587 Forward-Port-Of: odoo/odoo#194485
Steps to reproduce: ----- - Create a MO - Duplicate it - Change the scheduled date - Confirm Issue: --- This [changes](https://github.com/odoo/odoo/commit/7c808beaf36853b4d9171ef0981d1ec9c4b73a44), is trying to timedelta between str and datetime leading to an error. Fix: --- To fix this the date_start is set as a datetime and removing the conversion later in the code. opw-4489618 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Original PR description
Steps to reproduce: ----- - Create a MO - Duplicate it - Change the scheduled date - Confirm Issue: --- This [changes](https://github.com/odoo/odoo/commit/7c808beaf36853b4d9171ef0981d1ec9c4b73a44), is trying to timedelta between str and datetime leading to an error. Fix: --- To fix this the date_start is set as a datetime and removing the conversion later in the code. opw-4489618 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#194376
Steps to reproduce: [l10n_dk] - create and confirm a sale order - create an expense for a new employee and use a product set with reinvoice at cost and a tax with multiple repartition lines - confirm and process the expense - post journal entries Issue: Missing required fields on accountable sale order line. Cause: We want to reinvoice the tax line that no product on it opw-4378714 Forward-Port-Of: odoo/odoo#193853 Forward-Port-Of: odoo/odoo#191163
Original PR description
Steps to reproduce: [l10n_dk] - create and confirm a sale order - create an expense for a new employee and use a product set with reinvoice at cost and a tax with multiple repartition lines - confirm and process the expense - post journal entries Issue: Missing required fields on accountable sale order line. Cause: We want to reinvoice the tax line that no product on it opw-4378714 Forward-Port-Of: odoo/odoo#193853 Forward-Port-Of: odoo/odoo#191163
Minimal Configuration: - Create an account (49999 Great Account) that has a default tax (15%) - Settings > Accounting: define "Separate discount accounts on invoices" > Customer invoices with an account (e.g. 443000 Cash Discount Loss) Steps to reproduce: - Create an invoice with an invoice line that has "Great Account", a discount (10%) and a price (100) and a tax (15%) - Confirm -> amount = 108.9 - Duplicate the invoice (in the ticket: Create a Credit Note) Issue: => The credit not
Original PR description
Minimal Configuration: - Create an account (49999 Great Account) that has a default tax (15%) - Settings > Accounting: define "Separate discount accounts on invoices" > Customer invoices with an…
Minimal Configuration: - Create an account (49999 Great Account) that has a default tax (15%) - Settings > Accounting: define "Separate discount accounts on invoices" > Customer invoices with an account (e.g. 443000 Cash Discount Loss) Steps to reproduce: - Create an invoice with an invoice line that has "Great Account", a discount (10%) and a price (100) and a tax (15%) - Confirm -> amount = 108.9 - Duplicate the invoice (in the ticket: Create a Credit Note) Issue: => The credit note is not of the same amount = 106.80. That is, MINUS discount * tax_amount <-> 108.90 MINUS 10% * 21= 106.80 Cause: When there is a "Separate discount accounts on invoices" that is set, discount line appear on the journal items of the document; moves between the default account for such transaction to the chosen move in the settings. When iterating through those discount lines, the condition was not strict enough to filter them out and would put a tax on them (as my dear colleague Andrea said: the bomb has been planted) Therefore, when creating a credit/duplicating, we copy the data wrongly (but in a correct a way for a standard flow) which gives incoherent results opw-4166601 Forward-Port-Of: odoo/odoo#187565
**Problem**: In rare edge cases, the selection can have no ranges, causing a crash when attempting to `getRangeAt(0)`. **Solution**: Ensure there are ranges in the selection before accessing them. **Steps to Reproduce**: 1. Split the window, with Odoo on one side and any other application on the other. 2. Navigate to a sales order in Odoo. 3. From the sales order, navigate to the partner. 4. Maximize the window. 5. Return to the sales order. 6. Split the window again. 7. Scroll do
Original PR description
**Problem**: In rare edge cases, the selection can have no ranges, causing a crash when attempting to `getRangeAt(0)`. **Solution**: Ensure there are ranges in the selection before accessing them. **Steps to Reproduce**: 1. Split the window, with Odoo on one side and any other application on the other. 2. Navigate to a sales order in Odoo. 3. From the sales order, navigate to the partner. 4. Maximize the window. 5. Return to the sales order. 6. Split the window again. 7. Scroll down. opw-4279813 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#194385
### Steps to reproduce: - Create a Vendor Bill in a foreign currency, leave "Payment Reference" blank - In the Accounting Dashboard click on the three dots of the "Bank" block and click on "Operations" - Create a new transaction - Under "Foreign currency" select the one from the bill - Under "Amount in currency" select the one from the bill - Under "Amount" select a different amount - Click "Match" on the right - Select the bill in the entries list - Under the line "Foreign Change Gain"
Original PR description
### Steps to reproduce: - Create a Vendor Bill in a foreign currency, leave "Payment Reference" blank - In the Accounting Dashboard click on the three dots of the "Bank" block and click on "Operations" - Create a new transaction - Under "Foreign currency" select the one from the bill - Under "Amount in currency" select the one from the bill - Under "Amount" select a different amount - Click "Match" on the right - Select the bill in the entries list - Under the line "Foreign Change Gain" is "Exchange Difference: False"  ### Cause: The payment reference is supposed to be displayed here but it is equal to `False` so "False" is displayed. ### Solution: Fallback on empty string if `new_aml.name` is `False`. opw-4485887 Forward-Port-Of: odoo/enterprise#77508 Forward-Port-Of: odoo/enterprise#77354
Forward-Port-Of: odoo/enterprise#77482 Forward-Port-Of: odoo/enterprise#76540
Original PR description
Forward-Port-Of: odoo/enterprise#77482 Forward-Port-Of: odoo/enterprise#76540
The confirmation page wasn't displayed and the order wasn't sent to the preparation display when confirming an order with a total of 0. Now the confirmation page is displayed and the order is send to the preparation display when the order is confirmed regardless of the total amount. Forward-Port-Of: odoo/enterprise#66519 Forward-Port-Of: odoo/enterprise#58348
Original PR description
The confirmation page wasn't displayed and the order wasn't sent to the preparation display when confirming an order with a total of 0. Now the confirmation page is displayed and the order is send to the preparation display when the order is confirmed regardless of the total amount. Forward-Port-Of: odoo/enterprise#66519 Forward-Port-Of: odoo/enterprise#58348
Following [this commit], the pot file was not updated. We're re-exporting it and meanwhile fixing a small typo. [this commit]: https://github.com/odoo/enterprise/commit/507f8a3df18320f7e899630dfb10da769cf20876
Original PR description
Following [this commit], the pot file was not updated. We're re-exporting it and meanwhile fixing a small typo. [this commit]: https://github.com/odoo/enterprise/commit/507f8a3df18320f7e899630dfb10da769cf20876
Forward-Port-Of: odoo/enterprise#77503
Original PR description
Forward-Port-Of: odoo/enterprise#77503