Daily updates from Odoo
Thursday, September 1, 2022
22 changes · master
Enhancements to existing features
This change adjusts an internal performance test for the enterprise Discuss module so it matches the current expected database activity. It helps keep automated checks accurate and reliable without changing the user-facing product experience.
Original PR description
task-2664853 https://github.com/odoo/odoo/pull/98923
This update streamlines sales-related rental and subscription processes by avoiding unnecessary background recalculations and aligning with recent core sales changes. It also improves reliability when invoicing multiple subscription orders at once, reducing the chance of errors during batch operations.
Original PR description
Community PR: https://github.com/odoo/odoo/pull/98068
Payment term handling for Mexican electronic invoicing has been aligned with recent changes in the main Odoo platform. This helps keep localization behavior consistent and reduces the risk of mismatches in related invoice tests and workflows.
Original PR description
[IMP] l10n_mx_edi: update the payment terms Update the payment terms after they have been changed by https://github.com/odoo/odoo/pull/91490
This update aligns several Enterprise apps with improved date and time handling introduced in the core Odoo platform. It helps keep date displays and spreadsheet-related calculations consistent across modules, reducing the chance of formatting issues for users.
Original PR description
This is the enterprise counterpart of the following community pull request: odoo/odoo#98980 It only consist in adaptations due to the changes in the community repo.
This update makes the internal setup of Discuss channels more explicit when assigning access groups. It helps ensure messaging channel creation remains reliable and supports performance coverage in enterprise tests.
Original PR description
follow up https://github.com/odoo/odoo/pull/94510/commits/64d01d43a0f69c29cb9ad900c7aaa6ae00d8b4e4 task-2893661
Resolved issues and error corrections
The Belgian Intrastat XML export button has been corrected so users can export reports without encountering an access error. This restores the expected export workflow for Belgian reporting and avoids manual workarounds.
Original PR description
Currently, using the xml export button on the Belgian results in an access error because the function it is attempting to call is a private method. The fix removes the underscore from the begining of the method and updates the name of the function in the place where it is called.
A bug in the Documents search panel was fixed after an internal service change caused an error in some searches. This helps users browse and filter documents without encountering an unexpected crash.
Original PR description
The API of the orm_service got changed during the development of the documents B2B, unfortunately it made one of the function cause a traceback. This was uncaught since the call is mocked during the tests and does not do the exact same error checking as the python server.
This fixes the load order for a Studio list view adjustment so it is applied at the right time. It helps prevent inconsistent behavior in list views when Studio customizations are active.
This fixes an issue where an unexpected track button could appear instead of the event stage in the event planning view. The change ensures the correct field is targeted so event organizers see the intended stage information in the right place.
Original PR description
Currently, the strange track button appears instead of the stage in the event. This is because the "website_event_track model" had only one track_count field before commit1, but after commit1, the "mass_mailing_event_track" model added a "track_count" field before the stage of the event view. As a result, the "website_event_track_gantt" model event view will not find the correct position if it tries to replace the fields with track_count. This commit solves the above problem by targeting the track_count field inside the "sheet" of the parent view. commit1 - https://github.com/odoo/odoo/commit/0501bbd62e517f6c215d9e7e36d61747c7f5816b task-2964291
Features or functions removed from Odoo
The Timesheet app download area no longer generates QR codes for the App Store and Google Play. Users can still access the mobile app through the direct download link, simplifying the page and removing unnecessary custom code.
Original PR description
This commit removes all custom codes to create a QRCode to get the link of the Timesheet Awesome App, the link is sufficient to download the mobile app.
In the recent merge cfbadd5 of account_intrastat_expiry into account intrastat, the i18n translation terms were not removed. This branch deletes the file so that the account_intrastat_expiry can be removed.
Original PR description
In the recent merge cfbadd5 of account_intrastat_expiry into account intrastat, the i18n translation terms were not removed. This branch deletes the file so that the account_intrastat_expiry can be removed.
Code cleanup and technical improvements
Odoo Studio now uses the standard lazy-loading approach to load its interface instead of a custom workaround. This is an internal cleanup that should make the Studio code easier to maintain without changing the user experience.
Original PR description
This commit replaces the ugly hack of the studio action loader (an action that loads a bundle that replaces the action in the action registry) with the a lazy loading component that's designed to lazy-load bundles.
Spreadsheet global filter data is now updated through the standard migration process instead of during import. This keeps imports cleaner and helps ensure older spreadsheet data is handled consistently when systems are upgraded.
Original PR description
With this commit, the process to migrate data of global filters is located in the migration process instead of the import process. Task-id 2969578
This update simplifies how appointment-related search behavior is configured behind the scenes. It should make future maintenance easier without changing how users book or manage appointments.
Original PR description
**Purpose** Extend a data structure instead of overriding a method. See details in community PR. Task-2957361 See odoo/odoo#98423
The manufacturing product lifecycle management screens have been updated as part of a broader interface modernization. This keeps existing actions, such as update quantity and notification buttons, aligned with the newer Odoo web framework for better long-term maintainability.
Original PR description
Part of mrp_plm conversion to OWL : - Updates `plm_toaster_button` widget. - Updates `plm_upd_qty` field widget. Task-2885757
Miscellaneous changes
Side effect of recent commit [1]. An asset can have original_move_line_ids linked to several moves. This was not handled properly in the mentioned commit as a singleton error was raised. We should adapt it by mapping is_negative_asset to 'debit' in case any of the moves is of type 'in_refund' instead. [1]:https://github.com/odoo/enterprise/commit/99f84c4991e0bdd4f4a8073fedf715304c456496 opw-2966795 Forward-Port-Of: odoo/enterprise#30945 Forward-Port-Of: odoo/enterprise#30847
Original PR description
Side effect of recent commit [1]. An asset can have original_move_line_ids linked to several moves. This was not handled properly in the mentioned commit as a singleton error was raised. We should adapt it by mapping is_negative_asset to 'debit' in case any of the moves is of type 'in_refund' instead. [1]:https://github.com/odoo/enterprise/commit/99f84c4991e0bdd4f4a8073fedf715304c456496 opw-2966795 Forward-Port-Of: odoo/enterprise#30945 Forward-Port-Of: odoo/enterprise#30847
… account Currently, if a YouTube account is not linked with a channel, trying to add YouTube social account throws a traceback. This PR improves the behavior and displays 'SocialValidationException' explaining user what went wrong. taskID-2857845 Forward-Port-Of: odoo/enterprise#28837
Original PR description
… account Currently, if a YouTube account is not linked with a channel, trying to add YouTube social account throws a traceback. This PR improves the behavior and displays 'SocialValidationException' explaining user what went wrong. taskID-2857845 Forward-Port-Of: odoo/enterprise#28837
The Depreciation Schedule Report was not well displayed in case of negative asset. Let's assume a normal asset for 5 months, linear method, 500$ value and date today - 2 months (04-16-22), confirm and validate. -> 5 depreciation moves, the 2 first moves being posted. The Report looks like this | 01/01/2022 | + | - | 12/32/2022 | 01/01/2022 | + | - | 12/31/2022 | | |------------|----------|--------|------------|------------|----------|--------|------
Original PR description
The Depreciation Schedule Report was not well displayed in case of negative asset. Let's assume a normal asset for 5 months, linear method, 500$ value and date today - 2 months (04-16-22), confirm…
The Depreciation Schedule Report was not well displayed in case of negative asset. Let's assume a normal asset for 5 months, linear method, 500$ value and date today - 2 months (04-16-22), confirm and validate. -> 5 depreciation moves, the 2 first moves being posted. The Report looks like this | 01/01/2022 | + | - | 12/32/2022 | 01/01/2022 | + | - | 12/31/2022 | | |------------|----------|--------|------------|------------|----------|--------|------------|------------| | $ 0.00 | $ 500.00 | $ 0.00 | $ 500.00 | $ 0.00 | $ 200.00 | $ 0.00 | $ 200.00 | $ 300.00 | Now, let's assume a negative asset in the same conditions (method, duration, acquisition date), confirm and validate. Go to the Report -> the line for negative asset is displayed the same way as the positive one, it should be displayed this way | 01/01/2022 | + | - | 12/32/2022 | 01/01/2022 | + | - | 12/31/2022 | | |------------|---------|----------|------------|------------|--------|----------|------------|-----------| | $ 0.00 | $ 0.00 | $ 500.00 | $ -500.00 | $ 0.00 | $ 0.00 | $ 200.00 | $ -200.00 | $ -300.00 | The display when asset is closed is wrong too. With this commit, we check if the asset comes from a refund, if so, we recompute columns in the right way. opw-2848330 Forward-Port-Of: odoo/enterprise#30938 Forward-Port-Of: odoo/enterprise#28476
When refreshing availabilities with new information, the loading spinner was not removed. Forward-Port-Of: odoo/enterprise#30937 Forward-Port-Of: odoo/enterprise#30927
Original PR description
When refreshing availabilities with new information, the loading spinner was not removed. Forward-Port-Of: odoo/enterprise#30937 Forward-Port-Of: odoo/enterprise#30927
Before this commit: Trying to generate a SAF-T report from the General Ledger (Norway) produces a traceback when there are account_move_lines in another currency than the company main currency. After this commit: Lines of the SAF-T report with a different currency than the company main currency are correctly generated. OPW-2959672 Forward-Port-Of: odoo/enterprise#30873
Original PR description
Before this commit: Trying to generate a SAF-T report from the General Ledger (Norway) produces a traceback when there are account_move_lines in another currency than the company main currency. After this commit: Lines of the SAF-T report with a different currency than the company main currency are correctly generated. OPW-2959672 Forward-Port-Of: odoo/enterprise#30873
Side effect of recent commit [1]. An asset can have original_move_line_ids linked to several moves. This was not handled properly in the mentioned commit as a singleton error was raised. We should adapt it by mapping field to 'debit' in case any of the moves is of type 'in_refund' instead. [1]:https://github.com/odoo/enterprise/commit/10c7711412d2a0b7eedc3eea512ed1424ed031eb opw-2965038 opw-2965718 opw-2965722 opw-2965446 opw-2965498 opw-2965701 Forward-Port-Of: odoo/enterprise
Original PR description
Side effect of recent commit [1]. An asset can have original_move_line_ids linked to several moves. This was not handled properly in the mentioned commit as a singleton error was raised. We should adapt it by mapping field to 'debit' in case any of the moves is of type 'in_refund' instead. [1]:https://github.com/odoo/enterprise/commit/10c7711412d2a0b7eedc3eea512ed1424ed031eb opw-2965038 opw-2965718 opw-2965722 opw-2965446 opw-2965498 opw-2965701 Forward-Port-Of: odoo/enterprise#30934 Forward-Port-Of: odoo/enterprise#30845
Bug: ProjectTaskRecurrence._get_next_recurring_dates() has a param start_date, which is the return value of Task._get_recurrence_start_date(). If the recurrence is in months, start_date is compared with repeat_until, which is a date. As Task.planned_date_begin is a datetime, it crashes. Fix: Return planned_date_begin.date() Forward-Port-Of: odoo/enterprise#30899
Original PR description
Bug: ProjectTaskRecurrence._get_next_recurring_dates() has a param start_date, which is the return value of Task._get_recurrence_start_date(). If the recurrence is in months, start_date is compared with repeat_until, which is a date. As Task.planned_date_begin is a datetime, it crashes. Fix: Return planned_date_begin.date() Forward-Port-Of: odoo/enterprise#30899