Daily updates from Odoo
Thursday, February 22, 2024
15 changes · master
Enhancements to existing features
Users creating map views in Studio now receive a clearer message when setup cannot be completed. This helps them understand the issue faster and reduces confusion or support needs during configuration.
This update restructures how IoT devices communicate through web connections, moving print-specific behavior into the printer driver. This makes it easier to support additional connected devices in the future without redesigning the communication flow.
Original PR description
The purpose of this PR is to simplify the implementation of websockets for other devices Before the only message supported by ws was "print" and the websocket_client called _action_default() method Now the message name is 'iot_action' and websocket_client call the action() instead of _action_default, send_to_controller() is now called from the printer driver task-3756857 [odoo/odoo#154543](https://github.com/odoo/odoo/pull/154543)
Code cleanup and technical improvements
Spreadsheet pivot-related actions were updated to use the new command names, keeping Enterprise aligned with the related core Odoo change. This is an internal cleanup that helps maintain compatibility and reduces confusion for future spreadsheet updates.
Original PR description
This commit is the counterpart of https://github.com/odoo/odoo/pull/154701. It updates the code to the new name of the pivot command. Task: 3748421
Miscellaneous changes
This PR changes the order of appointment types on the appointment page based on the appointment's published status. This makes it easier for internal users to access published appointments first. Task-3725160 Forward-Port-Of: odoo/enterprise#56782 Forward-Port-Of: odoo/enterprise#56377
Original PR description
This PR changes the order of appointment types on the appointment page based on the appointment's published status. This makes it easier for internal users to access published appointments first. Task-3725160 Forward-Port-Of: odoo/enterprise#56782 Forward-Port-Of: odoo/enterprise#56377
Suppose the following reconciliation situation: Company's currency = EUR We want to reconcile 105 USD = 98 EUR with 105 CAD = 73 EUR Before this PR: When encountering two foreign currencies Odoo will try to reconcile in EUR (company's currency). After the first step of reconciliation there is a residual of 25 EUR = 27 USD left on the first line. We therefore try to create a write-off of 25 EUR and reconcile it with the residual, those 25 EUR are converted in USD at the Odoo rate =>
Original PR description
Suppose the following reconciliation situation: Company's currency = EUR We want to reconcile 105 USD = 98 EUR with 105 CAD = 73 EUR Before this PR: When encountering two foreign currencies Odoo will try to reconcile in EUR (company's currency). After the first step of reconciliation there is a residual of 25 EUR = 27 USD left on the first line. We therefore try to create a write-off of 25 EUR and reconcile it with the residual, those 25 EUR are converted in USD at the Odoo rate => 24 USD. 27 USD != 24 USD, the reconciliation can't be full while it should have. Now we detect cases where there is only one residual left in multicurrency and create the write-off in that currency. opw-3497793 Forward-Port-Of: odoo/enterprise#57176 Forward-Port-Of: odoo/enterprise#54069
See community commit Task: 3730232 Forward-Port-Of: odoo/enterprise#57086 Forward-Port-Of: odoo/enterprise#56253
Original PR description
See community commit Task: 3730232 Forward-Port-Of: odoo/enterprise#57086 Forward-Port-Of: odoo/enterprise#56253
Steps to reproduce: - Create a payslip with mpf gross less than $7100 Current behaviour: - ERMC is missing because it not included when mpf gross is less than $7100 Expected behaviour: - ERMC should be included by the gov law Explanation: - By gov law, employer mpf contribution doesn't need to check with the mpf threshold amount $7100. Therefore remove the checking for ERMC. task-3643660 X-original-commit: 45321a2 Forward-Port-Of: odoo/enterprise#57013 Forward-Port-Of:
Original PR description
Steps to reproduce: - Create a payslip with mpf gross less than $7100 Current behaviour: - ERMC is missing because it not included when mpf gross is less than $7100 Expected behaviour: - ERMC should be included by the gov law Explanation: - By gov law, employer mpf contribution doesn't need to check with the mpf threshold amount $7100. Therefore remove the checking for ERMC. task-3643660 X-original-commit: 45321a2 Forward-Port-Of: odoo/enterprise#57013 Forward-Port-Of: odoo/enterprise#56897
Forward-Port-Of: odoo/enterprise#57102
Original PR description
Forward-Port-Of: odoo/enterprise#57102
Issue: Embedded views within articles incorrectly include loader and error messages as part of the content upon saving, leading to irrelevant data being stored. Steps to Reproduce: 1. Install Knowledge and create a new Article. 2. Add a calendar at the top of the Article. 3. Add many lines and then a new calendar so that this one is not visible when we scroll to the top of the article. 4. Refresh the page. 5. Each time the mouse leaves the page is uselessly saved and the first calendar
Original PR description
Issue: Embedded views within articles incorrectly include loader and error messages as part of the content upon saving, leading to irrelevant data being stored. Steps to Reproduce: 1. Install…
Issue: Embedded views within articles incorrectly include loader and error messages as part of the content upon saving, leading to irrelevant data being stored. Steps to Reproduce: 1. Install Knowledge and create a new Article. 2. Add a calendar at the top of the Article. 3. Add many lines and then a new calendar so that this one is not visible when we scroll to the top of the article. 4. Refresh the page. 5. Each time the mouse leaves the page is uselessly saved and the first calendar is reloaded Solution: Enhanced the `cleanForSave` method in `knowledge_plugin.js` to filter out non-content elements from embedded views. This is achieved by only retaining child elements with a `data-prop-name` attribute within `.o_knowledge_behavior_type_embedded_view` elements. As a result, loaders or error messages, which do not have this attribute, are excluded from the saved content, ensuring that only relevant, intended content is preserved. opw-3707380 Forward-Port-Of: odoo/enterprise#56626
After the sign conversion to OWL, when accessing an unsigned shared document it would show a "send" button close to the public user. However, since it's a shared document, there is no email to send the document to. Clicking on it, will cause a traceback. This commit hides this button for shared requests. task-3710635 Forward-Port-Of: odoo/enterprise#57092 Forward-Port-Of: odoo/enterprise#55470
Original PR description
After the sign conversion to OWL, when accessing an unsigned shared document it would show a "send" button close to the public user. However, since it's a shared document, there is no email to send the document to. Clicking on it, will cause a traceback. This commit hides this button for shared requests. task-3710635 Forward-Port-Of: odoo/enterprise#57092 Forward-Port-Of: odoo/enterprise#55470
Create a Vendor Bill with a Colombia Partner and withholding tax Accounting > Reporting > Certificado de Retención en IVA Print PDF Issue: Currently the lines in the report are being generated despite the balance in “tax_base_amount” (“Monto Total Operacion) being 0.00. Expected behavior: If the “tax_base_amount is 0.00 do not consider this balance neither in the report lines nor in the SUM of the Report total. opw-3704972 Forward-Port-Of: odoo/enterprise#56849 Forward-Port-Of: odo
Original PR description
Create a Vendor Bill with a Colombia Partner and withholding tax Accounting > Reporting > Certificado de Retención en IVA Print PDF Issue: Currently the lines in the report are being generated despite the balance in “tax_base_amount” (“Monto Total Operacion) being 0.00. Expected behavior: If the “tax_base_amount is 0.00 do not consider this balance neither in the report lines nor in the SUM of the Report total. opw-3704972 Forward-Port-Of: odoo/enterprise#56849 Forward-Port-Of: odoo/enterprise#56308
Same as on user.preference, `how_to_call_on_mobile` should be editable. Forward-Port-Of: odoo/enterprise#52362 Forward-Port-Of: odoo/enterprise#52240
Original PR description
Same as on user.preference, `how_to_call_on_mobile` should be editable. Forward-Port-Of: odoo/enterprise#52362 Forward-Port-Of: odoo/enterprise#52240
**Before the change:** The behavior before the change was that in the preparation display, the system considered the last stage as an indicator that the order is done. Orders in others stages were not differentiated and were included in the list displayed to customers as not ready. **After the change:** After the change, the system now correctly identifies the second to last stage as the indicator that the order is ready for display. Completed orders are now filtered out based on the last s
Original PR description
**Before the change:** The behavior before the change was that in the preparation display, the system considered the last stage as an indicator that the order is done. Orders in others stages were not differentiated and were included in the list displayed to customers as not ready. **After the change:** After the change, the system now correctly identifies the second to last stage as the indicator that the order is ready for display. Completed orders are now filtered out based on the last stage, ensuring that only relevant orders are shown to customers. This adjustment improves clarity and accuracy in the order tracking process for both customers and staff. Forward-Port-Of: odoo/enterprise#57106
The audit of cell made in this commit https://github.com/odoo/enterprise/commit/a0f96b8a7f74f618725f5e09d4ee5bb9fbcada6c can be improved to also include 'misc' entries. The previous solution did not work because MISC entries do not have the 'payment_state' field set. opw-3635049 Forward-Port-Of: odoo/enterprise#54314
Original PR description
The audit of cell made in this commit https://github.com/odoo/enterprise/commit/a0f96b8a7f74f618725f5e09d4ee5bb9fbcada6c can be improved to also include 'misc' entries. The previous solution did not work because MISC entries do not have the 'payment_state' field set. opw-3635049 Forward-Port-Of: odoo/enterprise#54314
Problem: When a user sets a custom filter on field 'followup_status' to "is set/is not set", a traceback error occurs with the message: "TypeError: 'bool' object is not iterable". Solution: To prevent the traceback error, the check for value should be done first. Steps to reproduce on Runbot: 1. Install Contacts and Accounting 2. Navigate to Contacts and add a custom filter for "Follow-up Status is set/not set" and traceback error occurs opw-3736643 Forward-Port-Of: odoo/enterprise#5
Original PR description
Problem: When a user sets a custom filter on field 'followup_status' to "is set/is not set", a traceback error occurs with the message: "TypeError: 'bool' object is not iterable". Solution: To prevent the traceback error, the check for value should be done first. Steps to reproduce on Runbot: 1. Install Contacts and Accounting 2. Navigate to Contacts and add a custom filter for "Follow-up Status is set/not set" and traceback error occurs opw-3736643 Forward-Port-Of: odoo/enterprise#57184 Forward-Port-Of: odoo/enterprise#57093