Monday, February 10, 2025
9 changes · 18.0
Enhancements to existing features
Document-related settings are simplified so new spreadsheets go to My Drive, Sign uses its standard Sign folder, and Projects can choose where company project folders are created. Labels and defaults are updated to make document storage easier to understand and reduce empty or confusing settings sections.
Resolved issues and error corrections
This fixes a live chat chatbot issue where conversations could be incorrectly marked as ended after handing a visitor to an operator when the bot step included a message. Visitors should now be able to continue the conversation normally once an operator joins, improving handoff reliability.
Original PR description
Before this PR, the chat bot would continue even after forwarding an operator to the visitor when the step contained a message. Steps to reproduce: - Create a chat bot script with three steps:…
Before this PR, the chat bot would continue even after forwarding an operator to the visitor when the step contained a message. Steps to reproduce: - Create a chat bot script with three steps: "text", "free_input_single", "fw_operator" with a message set. - Start the bot as a visitor, the operator is correctly added to the channel but the input is not available, the conversation is considered as ended. This is due to a race conditions when processing the notifications coming on the bus. When the message is posted, the operator is not yet added, this information is sent on the bus. When the operator is added, another payload is sent on the bus informing an operator was found. However, the processing of the message notification is delayed and comes after the processing of the newest information, leading to an incorrect state. To solve this issue, ensure insertions are made immediately in the new message handler and send updated data on the bus to ensure the state is correct. This PR also fixes identifying fields issue wiht chat bot steps (step is identified by script step and message not channel. opw-4514479
This update fixes how the Point of Sale handles Italian transactions when taxes are added on top of prices rather than included in them. It helps ensure receipts, totals, and accounting tax details are calculated correctly for affected Italian POS setups.
Original PR description
Related: https://github.com/odoo/enterprise/pull/76120
Luxembourg payroll now correctly calculates indexed wages for employees paid by the hour. This prevents payslips from showing a zero basic salary and helps ensure hourly employees are paid accurately.
Original PR description
## Issue: In Luxembourg companies, when creating an employee contract with an hourly wage, the indexed wage is always displayed as 0, causing the payslip to incorrectly show 0 for the basic salary. ## Steps to reproduce: 1. Create a new employee 2. Create a new contract for this employee with a hourly wage and Luxembourg: Regular Pay structure 3. Create a new payslip for this employee 4. Check the basic salary: it will be 0 ## Root cause: - The previous implementation did not account for hourly wage contracts when computing the indexed wage, leading to incorrect salary calculations. ## Solution: - Added logic to correctly compute the indexed wage for hourly contracts. - Adjusted related salary rules to differentiate between hourly and monthly wage types. - Updated views to reflect the correct unit (per month or per hour) based on the wage type. - Added a test case to validate the correct computation for hourly contracts. OPW-4460735
Fixed an issue where a parent company could be flagged for follow-up action, but its overdue invoice list appeared empty when invoices were issued to a child contact. The overdue invoice view now matches the follow-up status, helping accounting teams find and act on outstanding payments correctly.
Original PR description
Steps to reproduce: ------------------- 1. create 2 contacts : - one as a company (named parent contact for example) - and one as individual (named child contact) and set its parent company to the (parent contact). 2. create an invoice and set the partner to the (child contact). 3. set the invoice date and due date of the invoice to one month ago. 4. open the parent company (parent contact) -> accounting -> followup. You will see that Follow-up Status = in need of action, but if you clicked the Overdue Invoices, you will not find any invoices. Cause: ----- Since action_open_overdue_entries() introduced in V18.0, the window action filters invoices by partner set on the invoice while the Follow-up Status query checks the move lines which is always set to the parent company of the partner. Fix: --- Use commercial_partner_id instead of partner_id for the domain filter. OPW-4501051
The Belgian payroll declaration export has been corrected so the 274.XX XML file can be generated properly. This helps payroll teams submit the required Belgian reporting without being blocked by an export error.
Original PR description
STEP TO REPRODUCE: 1- Install The belgium payroll 2- Go to Payroll 3- Go to reporting > Declaration 274.XX 4- Click on generate xml file
This update fixes several issues in the Documents app details panel, including alias setup problems, unnecessary reloads, save validation errors, and fields that should be read-only for some users. This makes folder configuration smoother and helps prevent users from editing settings they should not change.
Original PR description
Commit 1: [FIX] documents: fix showing alias fields on details panel Reproduce: 1. Go to a folder on the kanban view 2. If not configured, configure Email Servers, then redo 1. 3. Clear the domain of…
Commit 1: [FIX] documents: fix showing alias fields on details panel Reproduce: 1. Go to a folder on the kanban view 2. If not configured, configure Email Servers, then redo 1. 3. Clear the domain of the alias 4. You are asked to configure servers again and you cannot set any value for the alias. Redirecting to the company settings is cumbersome and unlikely useful. Erp managers should be able to quick create here as in the company settings, as aliases are not company specific when receiving. Technically, removing `load=False` on `documents_unique_folder_id` (added when there is a `search_panel_default_folder_id` without `no_documents_unique_folder_id` in context) is necessary to load the existing `alias_domain_id`'s `display_name`. Commit 2: [FIX] documents: fix reloading only search panel It is not necessary to reload the model when we want to reload the search panel. Commit 3: [FIX] documents: fix validation error on saving container These records' methods are sometimes called when there is no point (and don't work), because the record is not part of the view. This can be seen for example when adding alias tags. Commit 4: Reproduce: As an internal user not documents manager, open the details panel on a company root folder with access_internal="edit". The fields are not rendered as readonly as they should. Test data updated in documents_spreadsheet. Task-4543501
The Documents app list view now correctly supports the full Select All behavior again. This makes bulk selection work as expected for users managing documents, reducing friction when selecting many records at once.
Original PR description
During sharepocalypse, we injected the ListView.Selection component from the control panel directly instead of using t-slots. This made our list view component limited to the features we want to support in the kanban view, so fewer than what the webclient supports. This commit restores the List View features on the list view. Task-4544692
The Italian Point of Sale localization now handles taxes that are added on top of the listed price, instead of only taxes already included in the price. This helps businesses using Italian POS calculate receipts and fiscal data correctly when tax-exclusive pricing is configured.
Original PR description
Related: https://github.com/odoo/odoo/pull/191637