Friday, February 7, 2025
9 changes · 17.0
Resolved issues and error corrections
Invoice and document printouts now show tax column headers aligned consistently with the other columns. This fixes a visual inconsistency so printed documents look cleaner and more professional for customers.
Original PR description
**Steps to reproduce:** - In Sales app, create a new invoice with one product; - Post the invoice without validating it; - Print invoice without payment from action button. **Issue:** The taxes column's header is "start aligned" as its content and the other columns are "end aligned". **Expected:** Column headers should be harmonized and have a consistent display as per : https://github.com/odoo/odoo/blob/4d9cf2e5103fcdc11be2fd574886afed6f300281/addons/sale/report/ir_actions_report_templates.xml#L79-L88 **Cause:** The view sets the header alignement on start. opw-4380680 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
When users create a sales order line directly from a project or support ticket, the system now avoids matching the entered text to recurring service products. This helps prevent accidentally using subscription-style services in project or ticket sales flows, reducing billing mistakes.
Original PR description
When creating a SOL on the fly from a project or a ticket, we try to match an existing product from what was typed in the field. However, we should be excluding recurring services Task-4354482
This fix prevents Point of Sale session processing from accidentally replacing existing background settings when adding new ones. It helps preserve expected behavior in related workflows and reduces the risk of subtle errors during POS operations.
Original PR description
Fixup for this commit https://github.com/odoo/odoo/commit/c9cefd88bb6f38f8fd504b7c4a8abf263aa1aa4b A test in 17.4 highlighted a issue with the use of with_context which was overriding it completely instead of adding to it. opw-4310781
The empty screen for Physical Inventory Adjustments now points users to the correct place to import spreadsheet data. This reduces confusion by reflecting the current action menu workflow and using a clearer icon.
Original PR description
Before: ------------------------------------ When there are no records in Physical Inventory Adjustments, the empty screen incorrectly suggests import data via "Favorites → Import." However, from version 17.0 onwards, the import option is now available through the action menu instead , causing confusion for users. After: ------------------------------------ Replaced "Favorites → Import" with the correct message: "import them from a spreadsheet throughout the action menu," and changed the icon from the long right arrow to the configuration icon for clarity. Task - 4550935
This fix updates Web Studio test forms so required customer name fields are correctly recognized before saving. It prevents avoidable save errors during automated browser testing, improving test reliability without changing normal user workflows.
Original PR description
During testing of the "new" Chrome's headless mode (by default since version 128), a concurrency issue arise at the end of those tours: a last request to the server is actually sent during the unload of the view (cf. save). This request actually reach the server even if Chrome is already closed and results into a SQl constraint error. Indeed, the (very basic) form views created for those tours are based on the "res.partner" model and only display the "name" field. This field isn't marked as "required" neither in the model, nor the view BUT has a SQL constraint attached to it... which makes it implicitly "required". This commit fixes it by properly marking them as such in the arch to let the client-side validation prevent the ultimate "save" request made during the unload.
The timesheet sales app now checks whether the leaderboard feature is enabled before loading its data. This avoids unnecessary background work when the feature is turned off, helping keep the system more efficient without changing the user experience.
Original PR description
Before this commit, the leaderboard data is fetched even if we are sure the feature is disabled. This commit checks the feature is enabled before getting leaderboard data. task-4509858
When sales order lines are created from a project or support ticket, the system now avoids matching recurring service products automatically. This helps prevent subscription-type services from being added accidentally in one-off project or ticket workflows.
Original PR description
When creating a SOL on the fly from a project or a ticket, we try to match an existing product from what was typed in the field. However, we should be excluding recurring services Task-4354482
This fix makes automated spreadsheet document tests wait until the app has fully returned to the Documents screen before cleanup starts. It prevents intermittent test failures caused by unfinished background requests in newer Chrome headless testing.
Original PR description
During testing of the "new" Chrome's headless mode (by default since version 128), a concurrency issue arise at the end of those tours: a last request to the server is actually sent during the unload of the view. This request actually reach the server even if Chrome is already closed and the test is cleaning itself (rollbacking the changes made in the database), resulting into a "release savepoint" mismatch on an already aborted transaction (example build's error [1]). This commit is kind of a follow-up of a previous PR [2] where a last step allowing for the spreadsheet to unload was added and adding one more to actually wait to be back on the Document app. [1] https://runbot.odoo.com/runbot/build/74602509 [2] https://github.com/odoo/enterprise/pull/51795
The Sign app now prevents users from dragging a signature field after it has already been signed. This avoids an unnecessary action that could crash the app, helping signed documents remain stable and unchanged.
Original PR description
Before this commit: When using the sign app, after clicking on a signature field to sign, attempting to drag the signature field away, which is unnecessary and pointless, causes the app to crash. After this commit: Dragging a signed signature field is not possible since it is pointless. The file should remain unchanged, and no crash should occur. Merge Note: This fix should be applied for the branches > 17.0 and before 18.1. It should be ignored by 18.1 and after. task-4489008