Saturday, October 25, 2025
4 changes · saas-18.4
Resolved issues and error corrections
The Barcode app now rounds decimal quantities shown on the fulfill button, preventing confusing extra digits from appearing during receipt processing. This makes scanned quantities easier for warehouse users to read and reduces visual errors without changing underlying inventory calculations.
Original PR description
**Issue** In the Barcode application, floating-point values may display excessive decimals. **Steps to reproduce** - Open the Inventory app. - Create a receipt with a decimal quantity (e.g. 10.54)…
**Issue** In the Barcode application, floating-point values may display excessive decimals. **Steps to reproduce** - Open the Inventory app. - Create a receipt with a decimal quantity (e.g. 10.54) and mark it as To Do. - Open the Barcode app, open the corresponding receipt, and click the Edit button. - Increment the number of scans several times until you notice too many decimal digits (if you choose 10.54, you can test with 3). **Cause** A floating-point precision error occurs in the getter [`quantityToFulfill`](https://github.com/odoo/enterprise/blob/4b08734124c3bc84f7d95d170b39e9909e20d66b/stock_barcode/static/src/widgets/digipad.js#L55C9-L55C50), which is rendered directly [in XML templates](https://github.com/odoo/enterprise/blob/e8063141b33a9a8aa51d1ce94a66af313b2c1c89/stock_barcode/static/src/widgets/digipad.xml#L20C25-L21C89) without rounding. **Solution** Round the displayed value in the `quantityToFulfill` getter in the same manner than in [barcode_model](https://github.com/odoo/enterprise/blob/d4e5b69c7ea87fba3f2a5204ed6939b97879e4a8/stock_barcode/static/src/models/barcode_model.js#L99-L103). opw-5039796 Forward-Port-Of: odoo/enterprise#97475
Spreadsheets without a custom thumbnail now show a spreadsheet-specific image instead of a generic placeholder. This makes documents easier to recognize and improves the browsing experience for users working with spreadsheets.
Original PR description
## Description Before this fix, when a spreadsheet had no thumbnail, the system displayed the generic web placeholder image (`web/static/img/placeholder.png`). This PR updates the logic to display a more relevant default image specific to spreadsheets (`/spreadsheet/static/img/spreadsheet.svg`) when no thumbnail is available. Task: [4963284](https://www.odoo.com/odoo/project/2328/tasks/4963284) Forward-Port-Of: odoo/enterprise#96962
This fix ensures automation rules and filters can find matching text even when it appears after a line break. It prevents rules based on text fields, such as task descriptions, from being missed because the content contains formatted blocks or newlines.
Original PR description
Problem: When the ilike comparator is applied in filtered_domain, it is unable to match text beyond a newline character (\n). This is due to the regex being used not having the DOTALL flag. Purpose: Add the DOTALL flag to the re.compile arguments when defining like_regex. Steps to Reproduce on Runbot: 1. Create an Automation Rule on the Task model with an Apply On condition of Description contains "test". 2. Create a Task and add an Info Banner element, then either within the element or afterwards include the "test" text, then save. 3. The automation rule does not trigger. opw-5134374 Forward-Port-Of: odoo/odoo#232632 Forward-Port-Of: odoo/odoo#232434
Portal users who can view a field service task will no longer hit an access error when opening it without access to the related project. The quotation button is now shown only when appropriate, improving the customer portal experience while preserving project access rules.
Original PR description
Before this commit, the portal user who has access to a fsm task and not the project related could get an access error when he tries to access to the form view of that task inside his portal. The reason is because a check is made to know if the user has access to project sharing to display the quotations button in the portal form view of the task. This commit makes sure the project is in the parameter of the method in which we did that check to make sure the user comes from a project instead of `/my/tasks` route. Forward-Port-Of: odoo/enterprise#98023