Wednesday, October 29, 2025
5 changes · saas-18.2
Enhancements to existing features
Inventory users can now reset the cached links between printers and reports directly from the Inventory app. This makes it easier to resolve printer-report connection issues without navigating elsewhere.
Original PR description
In order to simplify resetting the link between printers and reports in cache, we added the "Reset Linked Printers" button to the Inventory app. Forward-Port-Of: odoo/enterprise#98028
Resolved issues and error corrections
This fixes an issue in Studio's report editor where adding a column to reports with conditional table headers could update only some rows. Users editing documents such as Delivery Slips should now see columns added consistently across the whole table.
Original PR description
The TableSizeComputer.compute() method can return cells with incorrect cell indexes. This can result in the _addColumn function only adding a column to some rows in the report editor.…
The TableSizeComputer.compute() method can return cells with incorrect cell indexes. This can result in the _addColumn function only adding a column to some rows in the report editor. TableSizeComputer.compute() does not handle cases where a conditional is used inside of a th element but the corresponding td element does not have a conditional. Steps to reproduce ----- 1. Open the Delivery Slip in the report editor. 2. Click the header to show the dropdown and select elif: o.move_line_ids and o.state=='done'. 3. Hover over the last th element to select the column button. 4. Click Insert right and see that only the header row has an additional column. Cause ----- TableSizeComputer.compute() calculates how many possible cells can be in a row which can be more than the total number of columns you have if you have th or td elements with a conditional inside of them. In the Delivery Slip report, a th element is present when using serial numbers and a different th element is present when not using serial numbers. The corresponding t-body has two different tr elements for these conditions. The compute method will have one less cell in these rows because the corresponding conditional is handled outside of the row. Solution ----- Only count mutually exclusive th or td elements once. This prevents the cellIndex from being larger than the total possible columns. opw-ticket 5173345 Forward-Port-Of: odoo/enterprise#98207
Restaurant kitchen displays now stay in sync when staff merge, transfer, link, or unlink tables. Merged orders correctly combine item quantities, and linked table names show all related tables so kitchen staff have clearer order information.
Original PR description
- **Task:** [#5005179](https://www.odoo.com/odoo/my-tasks/5005179) - **Community:** [#225700](https://github.com/odoo/odoo/pull/225700) - **Enterprise:** [#93997](https://github.com/odoo/enterprise/pull/93997) - **Runbot:** [saas-18.2-fix_merging_tables_kitchen_display-ltra-397311](https://runbot.odoo.com/runbot/bundle/saas-18.2-fix_merging_tables_kitchen_display-ltra-397311) --- **Before** - The kitchen display was not updated when transferring, merging, or linking orders between tables. - When merging orders with the same product, quantities were not summed correctly, requiring the product to be ordered again. - When linking 3 or more tables, the linked table name only showed the first two tables. **After** - The kitchen display is now notified when transferring, merging, unmerging, or linking orders between tables. - Product quantities are correctly aggregated when merging orders. - The names of linked tables now include all related tables, sorted by table number.
Corrects how discounts are rounded when creating Mexican global invoices, preventing valid invoices from being rejected due to small rounding differences. This helps businesses issue compliant CFDI documents without manual workarounds for discounted invoice lines.
Original PR description
Steps to reproduce: ------------------- * Create an invoice with the following line: * Unit price: 47.25, Qty: 1, Taxes: 16%, Discount 50% * Confirm, create a global invoice > Observation: Error ```…
Steps to reproduce: ------------------- * Create an invoice with the following line: * Unit price: 47.25, Qty: 1, Taxes: 16%, Discount 50% * Confirm, create a global invoice > Observation: Error ``` Code : CFDI40108 Message : El TipoDeComprobante es I,E o N, el importe registrado en el campo no es igual al redondeo de la suma de los importes de los conceptos registrados. ``` Why the fix: ------------ The issue occurs because the `descuento` value, originally 23.625, is now being corrected to 23.615 which leads to `importe` having a value of 23.635 which round up to 23.64 and not 23.63. https://github.com/odoo/enterprise/blob/08564f3312c255f2f3ab95cef5a9bfc57727bd1f/l10n_mx_edi/models/l10n_mx_edi_document.py#L1111 https://github.com/odoo/enterprise/blob/08564f3312c255f2f3ab95cef5a9bfc57727bd1f/l10n_mx_edi/models/l10n_mx_edi_document.py#L1336 Before this commit https://github.com/odoo/enterprise/commit/39759babddc732a312ec5cd6a60a2f1819abc62c the discount value was being rounded when corrected. It would end up being evaluated to 23.62. To not bring back the issue the fixed by the mentioned commit we round the discount when generating the global invoice cfdi values. Now `importe` will have a value of 23.63 as `descuento` is rounded to 23.62. opw-5023597 Forward-Port-Of: odoo/enterprise#94438
Batch payments now show a clear, non-blocking warning when SEPA Credit Transfer partners are missing required country or city information for structured addresses. This helps users fix partner records before generating payment files that would become invalid under the November 2026 SEPA rules.
Original PR description
Starting from November 15th, 2026, SEPA Credit Transfer (SCT) payments require both the partner's country and city to be defined when using structured addresses. If missing, the generated XML file will be invalid. This change adds a non-blocking red banner on the batch payment form to warn users and provide a link to review the affected partners. task-5156613 Forward-Port-Of: odoo/enterprise#97598