Daily updates from Odoo
Monday, January 27, 2025
13 changes ยท master
Enhancements to existing features
The Spanish localization reports have been updated to support the 2024 Mod 390 annual VAT declaration requirements. This helps businesses in Spain prepare compliant tax filings using the latest official reporting format.
Original PR description
TODO
This work updates recruitment-related screens and referral campaign setup, including job views connected to Monster integration and employee referrals. It should make recruitment workflows clearer or more consistent for teams managing job postings and referral campaigns.
This update refreshes parts of the recruitment and employee referral experience, especially the referral campaign wizard and job position forms. It should make configuring job postings and referral campaigns clearer and easier for HR teams.
Recruitment-related settings and reporting screens have been updated to provide a cleaner, more consistent interface. This should make it easier for users to configure recruitment features and review hiring reports.
Original PR description
- made the changes for the hr.recruitment views and functionality Task: 4463696
Resolved issues and error corrections
A minor issue in the Knowledge app's automated article command tour was corrected so the test can run successfully again. This helps maintain product quality by ensuring future changes to Knowledge article commands are checked reliably.
Original PR description
Following [this commit], in master, there was another change preventing the disabled test to run without error. This commit fixes the issue in order to be able to re-enable the test. [this commit]: https://github.com/odoo/enterprise/commit/02bf70e1ad8c7d88ce20f74ab4df5a00d59d52e9 runbot-task-111948
WhatsApp now uses the shared phone validation logic when looking up partners by phone number. This reduces duplicate handling and helps match contacts more consistently across the system.
Code cleanup and technical improvements
This draft change removes reliance on the current company identifier in evaluation context handling. This is an internal cleanup intended to make company-related behavior more consistent and reduce future maintenance risk.
Miscellaneous changes
The current auto-clean feature doesn't work properly and it deletes spreadsheet that shouldn't be deleted. 1) copy a spreadsheet and leave it (no update) 2) upload an XLSX file Given that it's been broken several times and the usefulness of the feature is debatable, let's just drop the feature. No feature, no bug ๐ If users create empty spreadsheet, so be it. They'll clean their mess themselves. Task: 4506185 Forward-Port-Of: odoo/enterprise#77817 Forward-Port-Of: odoo/enterprise#
Original PR description
The current auto-clean feature doesn't work properly and it deletes spreadsheet that shouldn't be deleted. 1) copy a spreadsheet and leave it (no update) 2) upload an XLSX file Given that it's been broken several times and the usefulness of the feature is debatable, let's just drop the feature. No feature, no bug ๐ If users create empty spreadsheet, so be it. They'll clean their mess themselves. Task: 4506185 Forward-Port-Of: odoo/enterprise#77817 Forward-Port-Of: odoo/enterprise#77573
Add missing index on move_line_id to speedup checking the check_ids of a stock_move_line. See community PR for more info https://github.com/odoo/odoo/pull/190479 Forward-Port-Of: odoo/enterprise#75537
Original PR description
Add missing index on move_line_id to speedup checking the check_ids of a stock_move_line. See community PR for more info https://github.com/odoo/odoo/pull/190479 Forward-Port-Of: odoo/enterprise#75537
### Steps to reproduce: - Select an EU company and provide a SEPA creditor identifier (for example BE55ZZZ0455530509) - Have a contact with a European IBAN - Have a company bank journal with a European IBAN - Create a valid Direct Debit Mandate for your contact - Create an invoice for that contact and register a payment using SEPA - Now delete that Sepa payment from Accounting > Customers > Payments - Open the customer's Direct Debit Mandate > It shows one invoice was paid using that mand
Original PR description
### Steps to reproduce: - Select an EU company and provide a SEPA creditor identifier (for example BE55ZZZ0455530509) - Have a contact with a European IBAN - Have a company bank journal with aโฆ
### Steps to reproduce: - Select an EU company and provide a SEPA creditor identifier (for example BE55ZZZ0455530509) - Have a contact with a European IBAN - Have a company bank journal with a European IBAN - Create a valid Direct Debit Mandate for your contact - Create an invoice for that contact and register a payment using SEPA - Now delete that Sepa payment from Accounting > Customers > Payments - Open the customer's Direct Debit Mandate > It shows one invoice was paid using that mandate although the payment was deleted - Expected: link between invoice and mandate should not be kept if payment was deleted ### Cause: The field `sdd_mandate_id` of the invoice is not reset when the payment is reset to draft. ### Solution: Add an `api.ondelete` method on `account.partial.reconcile` which checks if any of the unreconciled moves is an invoice with `sdd_mandate_id`. In that case, and if the unreconciled payment is the only SEPA payment, set `sdd_mandate_id` to False. opw-4277982 Forward-Port-Of: odoo/enterprise#77589 Forward-Port-Of: odoo/enterprise#75273
### Steps to reproduce: - Go in Accounting > Customers > Direct Debit Mandates - Create a new mandate with a start date in the future - In Scheduled Actions search for "Mandate state updater" - Run manually this action - Return to Accounting > Customers > Direct Debit Mandates - The mandate was closed ### Cause: The code checks if `mandate.start_date <= today <= expiry_date`, if not the mandate is closed. ### Solution: Only check if `today <= expiry_date` opw-4460087 Forward-Po
Original PR description
### Steps to reproduce: - Go in Accounting > Customers > Direct Debit Mandates - Create a new mandate with a start date in the future - In Scheduled Actions search for "Mandate state updater" - Run manually this action - Return to Accounting > Customers > Direct Debit Mandates - The mandate was closed ### Cause: The code checks if `mandate.start_date <= today <= expiry_date`, if not the mandate is closed. ### Solution: Only check if `today <= expiry_date` opw-4460087 Forward-Port-Of: odoo/enterprise#77048
Since whatsapp templates are posted on a specific model, the current parent computation becomes incorrect when it comes to templates, because of incorrect domain, in particular `model` and `res_is` parts of it. task-4210393 Forward-Port-Of: odoo/enterprise#70718
Original PR description
Since whatsapp templates are posted on a specific model, the current parent computation becomes incorrect when it comes to templates, because of incorrect domain, in particular `model` and `res_is` parts of it. task-4210393 Forward-Port-Of: odoo/enterprise#70718
The aim of this commit is passing correctly the debug mode in the URL params to the bank sync iframe. It allows to debug the iframe during the development. no task id Forward-Port-Of: odoo/enterprise#77501
Original PR description
The aim of this commit is passing correctly the debug mode in the URL params to the bank sync iframe. It allows to debug the iframe during the development. no task id Forward-Port-Of: odoo/enterprise#77501