Thursday, December 4, 2025
11 changes · master
Resolved issues and error corrections
This update prevents the import process from accidentally changing the names of existing journal codes. Previously, importing data would overwrite journal names, causing confusion and potential data discrepancies. The fix ensures that existing journal names are preserved during the import process.
Original PR description
**Steps to reproduce:** * Install the **Accounting** module. * Go to **Accounting > Configuration > Settings**. * Download the **Import Journal Items** template. * Keep the default journal codes in…
**Steps to reproduce:** * Install the **Accounting** module. * Go to **Accounting > Configuration > Settings**. * Download the **Import Journal Items** template. * Keep the default journal codes in the template (e.g. *MISC*, *SAL*, *BNK*). * Import the file containing these existing journal codes into it by **Accounting > Configuration > Settings > Initial Setup > Import > Import Journal Items > Upload data file**. **Observed behavior:** * Existing journals have their names overwritten by the values provided in the import file. * For example, a journal with code **MISC** and name *Miscellaneous Operations* is updated to name **MISC** after import. **Cause:** * Journals are looked up by their `code`, but `_load_records()` passes both `name` and `id` for all rows. * As a result, existing journals are updated instead of preserved. **Fix:** * Pass only `id` for journals already found by code. * Pass `name` only when creating new journals. * This prevents unintended updates to existing journal names. opw-5345876 Forward-Port-Of: odoo/enterprise#100143
This update fixes a minor issue in the Belgian payroll module (l10n_be_hr_payroll_acerta) related to the error message displayed when an Acerta code is entered incorrectly. The message has been clarified to be more user-friendly and unambiguous, ensuring accurate data entry for Belgian companies. This improves the overall user experience and reduces potential errors.
Original PR description
Steps to reproduce: 1. Install l10n_be_hr_payroll_acerta 2. Switch to a Belgian company 3. Go to Payroll → Configuration → Work Entry Types 4. Edit a record and enter an Acerta code with only 2 characters Issue: - The validation message is missing a space between `that` and `is` - The message wording is ambiguous (PO request - fdav) Fix: - Updated the validation message to: `The following work entry types have an Acerta code that is not between 3 and 6 characters` opw-5347488 Forward-Port-Of: odoo/enterprise#100432
This update resolves a test failure that occurred when the demo data was used. The change ensures the test runs correctly without disrupting the demo environment, preventing potential issues during testing and demonstration of the Odoo Enterprise module.
Original PR description
Some tests were failing when the demo data were installed. This commit fixes the test so that it doesn't interfere with demo data. Related build error: https://runbot.odoo.com/odoo/runbot.build.error/234529 task-5386529
This update corrects a reporting issue where payment reports incorrectly included bank accounts with zero allocations. The change ensures that reports only display accounts with positive allocations, providing more accurate and reliable payment information. This improves the clarity and trustworthiness of financial reports.
Original PR description
-In case of creating payment reports for an employee with multiple bank accounts, if one of the accounts has an allocation of 0%, it still appears in the report. -This approach has been changed to include only accounts with positive allocations. Backport for odoo/enterprise#100643 Forward-Port-Of: odoo/enterprise#101080
A bug preventing users from adding salary inputs to payslips has been fixed. This issue arose after a recent update and was caused by an incorrect field reference. The fix utilizes the correct `struct_id` field to link payroll structures, ensuring smooth operation.
Original PR description
Currently, an error occurs when user tries to add a salary input on a payslip. Steps to replicate: - Install `hr_payroll`. - Go to any Employee payslip > Salary Inputs > Add Inputs. Error: `AttributeError: 'hr.payslip' object has no attribute 'structure_id'` Cause: - Error occurs after addition of a new [feature]. - The [code] tries to access `self.structure_id` on a record of `hr.payslip`, but since there’s no field named `structure_id`, it resulted in an error. Solution: - Used the field `struct_id` that keeps the record of linked `hr.payroll.structure()`. [feature]: https://github.com/odoo/enterprise/pull/98151 [code]: https://github.com/odoo/enterprise/blob/eda93203ec8da207768357ae91132a49881a2978/hr_payroll/models/hr_payslip.py#L2159 No ID Forward-Port-Of: odoo/enterprise#100966
This update improves the speed of processing overtime on attendance records. The previous system was slow due to a missing database index, which caused delays when removing existing overtime entries. Adding an index has significantly optimized this process.
Original PR description
Updating the overtime on attendance may take huge time. The issue comes from the lack of index on work entries so it takes a lot of time to unlink an existing overtime line. So we add an index on the work entries (which is mainly null) Forward-Port-Of: odoo/enterprise#101223
This update resolves a bug where a previously unlinked call continued to appear in the Odoo softphone. The fix ensures that calls are immediately removed from the softphone interface when they are no longer linked, improving the user experience and data accuracy.
Original PR description
A call that was unlinked previously remained visible in the VOIP softphone. This fix ensures that the call is correctly removed from the softphone view as soon as it is unlinked. Task-5262162 Forward-Port-Of: odoo/enterprise#100803 Forward-Port-Of: odoo/enterprise#100036
This update addresses a potential instability issue in the Odoo payroll system. By adding a 'super call' to the `check_modification_allowed` method, the system now maintains a more complete call stack, helping to diagnose and resolve unexpected errors. This ensures the payroll process runs more reliably.
Original PR description
Add super call in `check_modification_allowed` method to maintain a call stack. task-5379473
This update simplifies the process of attaching expense documents. Users can now upload attachments to expense forms even if they haven't yet filled in the expense name or product details. This removes a previous requirement, making it easier to record expenses in draft form.
Original PR description
Enable the uploading of expense attachment on the form view even if the required fields "name" and "product_id" aren't provided yet. We therefore make these fields not required if the expense is in draft state. task-4684825
This update fixes a performance issue within Odoo's email testing process. The tests now correctly disable all relevant user groups, ensuring accurate results. Additionally, the tests have been optimized to reduce unnecessary database queries, improving overall efficiency.
Original PR description
https://github.com/odoo/odoo/pull/222290
This update fixes a problem where users continued to experience access errors after uninstalling the HR Payroll module. The changes ensure proper access rights are restored for relevant user groups (like HR Managers) during payroll removal and installation, preventing disruptions to work entry access.
Original PR description
Steps to reproduce: - install hr_payroll - unistall hr_payroll (you should still have hr_work_entry) - when you try to access work entries you get access error because it's still linked to payroll access Fix: - made the access rule for `group_hr_payroll_user` not override the access rule for `group_system` when installing payroll - added `uninstall_hook` to give access back for `group_hr_manager` when uninstalling hr_payroll - fixed an issue where `overtime_from_attendance` is not accessible for `group_hr_manager` (when having hr_work_entry installed without hr_payroll) task-id: 5177443