Daily updates from Odoo
Monday, December 8, 2025
8 changes · master
Resolved issues and error corrections
This update fixes an issue where employees were incorrectly added as future drivers for multiple vehicles during contract signing. The system now automatically remembers the last selected vehicle and its associated costs, streamlining the process and ensuring accurate salary calculations. A new tutorial has also been added to demonstrate the improved functionality.
Original PR description
purpose: When, for the same offer, the employee/applicant sign several times and choose a different car each time, he's recorded as future driver for all the cars. It should only be the last one previous behavior: - the employee/applicant is assigned as a future driver to each car he selects with each sign which removes them from the salary configurator for other employees/applicants - the salary configurator doesn't autofill previously selected vehicle values for partially signed contracts current behavior: - reset the `future_driver_id` field of previously selected vehicles with each sign - made the vehicles autofill from previously partailly signed offers - made the configurator display the vehicle cost of the selected vehicle instead of 0 the first time you choose it (when checking the checkbox not selecting from the dropdown) - added a tour `hr_contract_salary_tour_sign_again` to check if the values are filled correctly from previous signs task-id : 4962961
A recent update resolved a crash that occurred when users clicked the 'Add from Documents' button within the Contacts or CRM apps. This fix addressed an error related to accessing data, ensuring the button now functions reliably. This improves the user experience for logging notes.
Original PR description
Steps to reproduce ================== - Go in the app Contacts or CRM - Open a record - Click on "Log note" - Click on the icon "Add from Documents" You get an error: TypeError: Cannot read properties of undefined (reading 'channel_type') Technical ========== The [Commit] changes the way of accessing the `channel_type` from thread. The patch of `SelectAddDocumentCreateDialog` missed the optional chaining in accessing the type. This commit adds the optional chaining to avoid crash on accessing `channel_type` when `channel` is undefined. [Commit]: https://github.com/odoo/enterprise/commit/8d1c75abfcb437962ce4314dd480f16398474532 Task-5343940
This update corrects a flaw in how payroll amounts are calculated for employees with fixed wages. Previously, the system assumed all work entries were present, leading to inaccuracies when pay schedules aren't monthly or when there are no work entries. Now, the calculation uses the actual working days to determine the daily rate, ensuring more accurate payroll amounts.
Original PR description
As of now, in payslips, the computation of the amount for the work entries is based on the assumption that the effect of all work entries required for the computation is present. So if I have a total of 10 days total days, then the rate per day is considered as: Wage / 10. But this would not work with the cases where the pay schedule is not exactly one month for non-attendance cases, or if there are days with no work entries in them, especially if the wage type is Fixed Wage. The suggestion for this task is to enhance the way the wage per day is computed when it is based on a Fixed Wage. which is to compute the number of days in the payslip period based on the working schedule, and have the rate per day being: Fixed Wage / Total days. Where Total days is based on the payslip period & the work schedule. task-5186744
This update corrects a calculation error in the Spanish tax return wizard (l10n_es_reports). Previously, certain fields relied on an outdated return ID. This change ensures these fields accurately reflect the current tax return status, improving the reliability of reporting for Spanish businesses.
Original PR description
Since the implementation of the return engine in l10n_es_reports, the wizard fields show_exempted_from_mod_390 and is_period_quarterly are computed using the return_id field ; they hence should depend on it. runbot.build.error: 243405
This update corrects a previous error in the EPF (Employee Provident Fund) calculation for our Malaysian payroll system. The changes ensure accurate rounding of tax amounts to the next ringgit and reflect the latest legislative employee rate adjustments. This improves payroll accuracy and compliance.
Original PR description
Previous behavior did not account for the rounding of the amount of tax to the next ringgit. Also the employee's rate has been updated in accordance to the legislation. task-5286179 Forward-Port-Of: odoo/enterprise#100736
This update corrects an issue where the Aged Receivable report was not displaying invoices correctly when the invoice due date was removed. The fix ensures the report accurately reflects outstanding balances by aligning the data source used in the report with the invoice data. This improves report accuracy and data consistency.
Original PR description
step to reproduce: - create a invoice and confirm it - remove due date from it and save it - ensure the confirmed invoice do not payment term or due date - open aged receivable report - open this…
step to reproduce: - create a invoice and confirm it - remove due date from it and save it - ensure the confirmed invoice do not payment term or due date - open aged receivable report - open this entry <img width="1599" height="238" alt="image" src="https://github.com/user-attachments/assets/010f97f4-0d50-4e5a-9366-ae67d17e2bb7" /> Observation: - on clicking the entry, when redirected to list view, there are `0` records. Issue: - The query which is used to display data on report uses `COALESCE(account_move_line.date_maturity, account_move_line.date)` https://github.com/odoo/enterprise/blob/ffc329e4ff2bd6512164ecd4206210fd5c9264b9/account_reports/models/account_aged_partner_balance.py#L222-L226 - while the method `_build_domain_from_period` uses only `date_maturity` in domain redirecting to list view - This creates inconsistencies between two. https://github.com/odoo/enterprise/blob/ffc329e4ff2bd6512164ecd4206210fd5c9264b9/account_reports/models/account_aged_partner_balance.py#L383-L394 opw-5237298 Forward-Port-Of: odoo/enterprise#99883
This update prevents a traceback error that occurred when clicking the 'add' button on the shopfloor screen when a specific quality check was applied to a manufacturing operation. The issue stemmed from a missing variable being passed during the button click process, which caused an error. This fix ensures the 'add' button functions correctly under all circumstances.
Original PR description
**Issue** In shopfloor, a traceback occurs when clicking on the add button if the associated operation has a `quality_check` of type `register_consumed_materials`. **Steps to reproduce** 1. Create…
**Issue** In shopfloor, a traceback occurs when clicking on the add button if the associated operation has a `quality_check` of type `register_consumed_materials`. **Steps to reproduce** 1. Create two products (product and component) 2. Create a BOM for this product that consumes that component 3. Create an operation linked to that BOM (Manufacturing > Configuration > Operations) 4. Add a quality check of type “Register Consumable Material” for this operation 5. Create a MO from that BOM and confirm it 6. Click on the shopfloor smart button → If debug mode is activated, a traceback occurs → Otherwise 7. Click on the 'add' button → A traceback occurs **Cause** In the method [`subRecordProps`](https://github.com/odoo/enterprise/blob/d180235b7946c7219385df263f13f780e7faea50/mrp_workorder/static/src/mrp_display/mrp_display_record.js#L190C9-L194C14), when a quality check of type `register_consumed_materials` is done, the variable `production` is not propagated into the props. And [this](https://github.com/odoo/enterprise/blob/d180235b7946c7219385df263f13f780e7faea50/mrp_workorder/static/src/mrp_display/mrp_record_line/stock_move.js#L184) tries to access the production in the props, which is [called](https://github.com/odoo/enterprise/blob/d180235b7946c7219385df263f13f780e7faea50/mrp_workorder/static/src/mrp_display/mrp_record_line/stock_move.js#L163) when the user clicks the 'add' button. **Solution** Add the `production` variable to the props. opw-5165259 Forward-Port-Of: odoo/enterprise#98808
This update fixes a potential issue in accounting reports where data from outside designated ledgers was incorrectly included. The change ensures that reports accurately exclude journal entries from other companies when grouping by multi-ledger, improving the reliability of financial data. This enhances the accuracy of financial reporting.
Original PR description
When grouping horizontally by multi-ledger in accounting reports, ensure that items from journals outside the ledger's designated company are properly excluded. task-5384534 Forward-Port-Of: odoo/enterprise#101475