Daily updates from Odoo
Monday, February 3, 2025
6 changes · master
Enhancements to existing features
Payroll teams can now control the appearance of salary rule lines on printed payslips, including color, bold, italic, and underline styles. This makes payslip formatting easier to adjust directly from salary rules instead of relying on fixed hard-coded presentation.
Original PR description
In this commit, add styling effect on rule to render on printed payslip. Now you are able to change the rule color, bold, underline, italic styling effect dynamically on the rule. Previously, these styling effects had been hard coded. task-3810365
Subscription lists now include clearer filters that separate automatic payments, manual payments, and automatic invoicing without payment. This helps users quickly understand how each subscription will be billed, while demo data now supports automatic invoice generation by scheduled jobs.
Original PR description
In this PR, added filters to categorize subscription based on payment_token and online_payment values. - Filter for automatic payments when there is payment token. - Filter for manual payment when there is no payment token and online payment is require. - Filter for automatic invoicing without payment when no payment token and online payment is not require. - rename "Failed Payments" filter to "In Error" for better user understanding - make online payment false in demo data of subscription so automatic invoice will be generated by cron. task-4295759
Payroll now prevents salary attachments from being deleted when they are already linked to a payslip. This helps avoid payroll record inconsistencies and gives users a clear error message explaining why the deletion cannot proceed.
Original PR description
This PR improves the deletion process for salary attachments linked to payslips. An error message is now displayed when attempting to delete a salary attachment associated with any payslip. task-4007473
Point of Sale orders now automatically include related sub-record information when serialized across several localization and POS add-ons. This improves consistency and reduces manual handling for processes such as fiscal reporting, preparation displays, and rental stock flows.
Original PR description
*: l10n_cl_edi_pos, l10n_de_pos_res_cert, l10n_mx_edi_pos, pos_preparation_display, pos_sale_stock_renting Automatically mapping sub records of pos_order to be serialized in the pos_order model.
First-time Documents users now get guided onboarding to help them understand and start using the app more easily. This improves the initial experience by showing relevant guidance only when there is content to work with, reducing confusion during setup.
Original PR description
This commit adds on-boarding support for a user using documents for the first time. Task-[3729929](https://www.odoo.com/web?debug=assets#id=3729929&cids=2&menu_id=6478&action=4043&model=project.task&view_type=form)
Resolved issues and error corrections
Users can now group tasks by project in the Gantt view without encountering an error. This restores expected project planning behavior and prevents interruptions when reviewing tasks across projects.
Original PR description
Step to reproduce: - Go to the Project module. - Open all tasks - Switch to Gantt view. - Group tasks by Project. - Observe the traceback error. Cause: - The error occurred after merging this [commit](https://github.com/odoo/odoo/pull/194673/commits/5c2e8c58290571a9d8e59e2602db6493b381945e), This change caused the `filter_domain_leaf()` function to return a `DomainBool` object, leading to the TypeError when attempting to use len() on it in the `_group_expand_project_ids` method. Solution: - To fix this, the `filter_domain_leaf()` output was wrapped with `list()`, ensuring that filtered_domain is always a list and allowing the safe use of `len()`. task-4521684