Daily updates from Odoo
Saturday, February 8, 2025
10 changes · 18.0
Resolved issues and error corrections
Fixed an issue in Restaurant Point of Sale where sending an order to preparation could print an extra blank receipt when multiple preparation printers were configured by product category. Restaurants now receive only the relevant preparation ticket, reducing paper waste and staff confusion.
Original PR description
When creating multiple preparation printers for different pos categories you could have a case where an empty receipt is printed. Steps to reproduce: ------------------- * Create 2 PoS categories CAT 1 and CAT 2 * Create a first preparation printer for CAT 2 * Create a second preparation printer for CAT 1 * Create a product P1 for CAT 1 * Assign the two printers to a PoS * Open PoS and add the P1 to your order * Send the order in preparation > Observation: Two receipts are printed and one of them is empty Why the fix: ------------ When going over each printer to print the relevant changes, if the first printer in the list has no changes it would always print an empty receipt because `last_preparation_change` would always be empty. To fix this we rely on `changes` to check if there are any changes to print on this printer opw-4462586
This fix makes the lot and serial number dropdown visible in the Point of Sale interface on smaller screens. It helps cashiers correctly select tracked products when using compact devices or reduced screen sizes.
Original PR description
Before this commit: == - Lot-serial dropdown not visible in the small UI. After this commit: == - Displayed the lot-serial dropdown in the small UI. opw-4551161 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Users can now duplicate more than one Server Action at a time without encountering an error. This removes a small workflow interruption for administrators managing automated actions.
Original PR description
This error occurs when attempting to duplicate two actions in ``Server Actions``. Steps to reproduce: --- - Search ``Server Actions`` - Select any two Actions and ``Duplicate`` Traceback: --- ``ValueError: Expected singleton: ir.actions.server(606, 701)`` After this commit: --- We are now able to duplicate multiple records. sentry-6218495006 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The file upload notification in the HTML editor now shows its close button in the expected position on the right. This makes the upload message easier to understand and dismiss, avoiding a small but visible user interface issue.
Original PR description
**Problem**: The close icon on the file upload notification is misplaced, appearing at the top-left instead of the expected position on the right. Before fix:  After fix:  **Solution**: Adjust the button's position to appear on the right side of the notification. **Steps to Reproduce**: 1. Open the Editor. 2. Upload a file. 3. Observe that the close button appears on the top-left instead of the right. opw-4512322 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Payments linked to Mexican invoices created before version 18.0 with line-level rounding can now be reported correctly. This prevents payment CFDI documents from being rejected due to small rounding differences after an upgrade.
Original PR description
In 18.0, we dropped the support for the round per line rounding method in Mexico. However, we didn't think about the following scenario: - a user creates an invoice in 17.0 in round-per-line mode,…
In 18.0, we dropped the support for the round per line rounding method in Mexico. However, we didn't think about the following scenario: - a user creates an invoice in 17.0 in round-per-line mode, and sends it to the Mexican government without problem - they then upgrade to 18.0 - a while later, they receive payment for the invoice. They then try to send the payment CFDI to the Mexican government. The payment CFDI is a complicated beast because it needs to retrieve values from the invoice the payment was reconciled with. Since the amounts in the invoice are slightly different from what they should be in round globally, the payment CFDI gets incorrectly generated and gets rejected by the Mexican government. So we need a temporary fix that allows the values of the payment CFDI to be adjusted according to the values of the invoice, which works even if the invoice used round per line. This fix is inspired by the existing solution in version 17: https://github.com/odoo/enterprise/pull/68319 and ensures that the "importe" amount is properly calculated. opw-4537931 opw-4536649 opw-4528785 opw-4490806
This update fixes several wording and translation issues in the Documents app, especially around access settings and member invitations. Users in translated interfaces should see clearer, more consistent labels and messages, reducing confusion when managing documents and permissions.
Original PR description
[task-4421055](https://www.odoo.com/odoo/project.task/4421055)
Belgian and Swiss payroll modules were updated so their text can be properly translated. This helps companies using these payroll features provide a clearer localized experience for employees and payroll teams.
Original PR description
TaskID: 4558967
Australian payroll now keeps a default Medicare reduction value when employee records are edited or created during upgrades. This prevents errors in tax treatment code calculation and helps payroll records remain usable.
Original PR description
It is possible for a user to empty the value for `l10n_au_medicare_reduction` from an employee's form. Since this field is used in the computation of `l10n_au_tax_treatment_code`, doing so will trigger an error:
```
File "/home/odoo/src/enterprise/18.0/l10n_au_hr_payroll/models/hr_employee.py", line 347, in _compute_l10n_au_tax_treatment_code
code += rec.l10n_au_medicare_reduction # Sixth Character
TypeError: can only concatenate str (not "bool") to str
```
This error can also happen during upgrades, when employee records are created before the module `l10n_au_hr_payroll` is loaded.This update adds missing automated checks for Italian point-of-sale tax totals. It helps ensure receipts and tax summaries remain accurate, reducing the risk of unnoticed issues in future changes.
The salary offer screen now shows final yearly cost information more clearly, helping HR teams and candidates better understand the full annual impact of an offer. This prevents confusion during contract salary discussions and supports more transparent compensation decisions.
Original PR description
TaskID: 4558836