Daily updates from Odoo
Navigate
Branch
Tuesday, December 6, 2022
25 changes
Resolved issues and error corrections
The German DATEV export now prevents use when global tax rounding is enabled, because DATEV does not support that calculation method. This avoids creating exports that would be rejected or unusable for German accounting workflows.
Original PR description
Issue: DATEV does not support the tax calculation method "Round Globally" Solution: We prevent the user to be able to use it. opw-2868268
SLA policies restricted to a specific customer will now only apply to helpdesk tickets for that customer. This keeps SLA behavior consistent when sales timesheet integration is installed and prevents tickets from receiving the wrong SLA policy.
Original PR description
# Feature description Applying a customer restriction on the definition of a SLA policy should make sure that this SLA policy should be applied only on tickets that have that specific customer on the ticket. # Implementation details We are modifying the extension override of the domain used to find the SLA policies to apply to a ticket. Before that override was using an `OR` to extend the domain, which was ignoring the domain for the partner selection, forcing us to have different behaviours depending on which modules were installed. (If the `helpdesk_sale_timesheet` module is not installed, SLAs policies are correctly applied based on ticket's `partner_id`, but once installed, the behaviour changes, this PR fixes that) --- opw-3050470
Odoo Studio now shows field widget choices using the updated editor system, making available options clearer and more reliable. It also fixes a crash when creating a new app with pipeline stages and user assignment, so users can complete setup and open the Kanban view without interruption.
An unused payroll menu entry was removed from the system configuration. This helps keep the payroll interface cleaner and avoids exposing navigation options that no longer serve a purpose.
Original PR description
remove unused menu declaration from code
Code cleanup and technical improvements
This change simplifies how standard menu actions such as archive, export, delete, and duplicate are customized in Odoo views. It reduces complexity for future customizations and makes related behavior easier to maintain across affected modules.
Original PR description
There are several customizations of the list and form view that consist in modifying the behavior of a static menu action (archive, unarchive, export, delete, duplicate). We have seen that this one is very complex. So we decided to simplify it. Solution: Add the getStaticActionMenuItems API point. This allows us to easily modify the behaviour of static actions. We also took advantage of this commit to simplify the ActionMenu api. We have removed the other actions because it was not clear enough. They are directly added in the action category. TaskID: 3089039
The expected payment date update logic was reorganized so it sits with the accounting line it actually changes, rather than with the partner record. This should make the code easier to maintain without changing the user-facing payment workflow.
Original PR description
The function to change an expected pay date was on the res.partner model but it modifies an account move line. The function was moved to the account move line model since it makes more sense for it to be there.
Miscellaneous changes
Prior to this commit: - `_compute_suitable_product_ids` was writing on `product_id` when its value was not part of the new computed value of `_compute_suitable_product_ids`. - As `_compute_suitable_product_ids` is called during onchanges which are triggered each time the form is open, this was causing the record to be updated. Which in turn, prevented the auto archiving of tickets. Forward-Port-Of: odoo/enterprise#34694 Forward-Port-Of: odoo/enterprise#34334
Original PR description
Prior to this commit: - `_compute_suitable_product_ids` was writing on `product_id` when its value was not part of the new computed value of `_compute_suitable_product_ids`. - As `_compute_suitable_product_ids` is called during onchanges which are triggered each time the form is open, this was causing the record to be updated. Which in turn, prevented the auto archiving of tickets. Forward-Port-Of: odoo/enterprise#34694 Forward-Port-Of: odoo/enterprise#34334
Before, the test got skipped on all nighlty l10n builds, because they did not install l10n_generic_coa (so, the super call skipped them). Instead of runnind these test on nightly build, we now make the choice to run them on ci_l10n, meaning any staging build will consider them, providing way better coverage. In the meantime, we fix the l10n modules that were breaking these tests. Forward-Port-Of: odoo/enterprise#34279
Original PR description
Before, the test got skipped on all nighlty l10n builds, because they did not install l10n_generic_coa (so, the super call skipped them). Instead of runnind these test on nightly build, we now make the choice to run them on ci_l10n, meaning any staging build will consider them, providing way better coverage. In the meantime, we fix the l10n modules that were breaking these tests. Forward-Port-Of: odoo/enterprise#34279
Forward-Port-Of: odoo/enterprise#33901
Original PR description
Forward-Port-Of: odoo/enterprise#33901
Forward-Port-Of: odoo/enterprise#34599
Original PR description
Forward-Port-Of: odoo/enterprise#34599
- add a menu in debug for sign item types (to quickly find them using e.g. the command palette) (the canonical place to edit them is and remain the settings page) - add a helper text for "change authorized" field on sign roles Forward-Port-Of: odoo/enterprise#32027
Original PR description
- add a menu in debug for sign item types (to quickly find them using e.g. the command palette) (the canonical place to edit them is and remain the settings page) - add a helper text for "change authorized" field on sign roles Forward-Port-Of: odoo/enterprise#32027
Forward-Port-Of: odoo/enterprise#34389
Original PR description
Forward-Port-Of: odoo/enterprise#34389
Some default data were set with match_mode = exact even when the unaccent extension was not loaded on the DB. This created issues when upgrading from 15.0 to 16.0 on a database with multiple languages loaded. Forward-Port-Of: odoo/enterprise#34578
Original PR description
Some default data were set with match_mode = exact even when the unaccent extension was not loaded on the DB. This created issues when upgrading from 15.0 to 16.0 on a database with multiple languages loaded. Forward-Port-Of: odoo/enterprise#34578
`all_column_groups_expression_totals` can be empty if the report only contains manual values. `recomputed_expression_totals` should be passed to `_get_lines` instead. Before this commit: - When a report only contains lines with manual expressions, the expression cannot be updated and an error is raised. - That is because we exclude manual expression type when populating `all_column_groups_expression_totals` and then pass an empty dictionary to `_get_lines`. - We correctly recompute the exp
Original PR description
`all_column_groups_expression_totals` can be empty if the report only contains manual values. `recomputed_expression_totals` should be passed to `_get_lines` instead. Before this commit: - When a…
`all_column_groups_expression_totals` can be empty if the report only contains manual values. `recomputed_expression_totals` should be passed to `_get_lines` instead. Before this commit: - When a report only contains lines with manual expressions, the expression cannot be updated and an error is raised. - That is because we exclude manual expression type when populating `all_column_groups_expression_totals` and then pass an empty dictionary to `_get_lines`. - We correctly recompute the expression totals (`recomputed_expression_totals`) but do not use it to get report lines. - It used to work by chance as long as there was at least one non-manual value in the report (as it is in every report) because in this case, `column_group_expression_totals` refers to the same dictionary as `all_column_groups_expression_totals`, hence it's updated as well. After this commit: - A report can be saved correctly even if there are only manual lines. - `column_group_expression_totals` copies `all_column_groups_expression_totals` to avoid other potential edge cases. Forward-Port-Of: odoo/enterprise#34534
This commit fixes the HierarchyKanbanRenderer components definition to avoid overriding the global KanbanRecord reference of all KanbanRenderer components, and instead only override the one of this specific kanban view. Task-3070918 Forward-Port-Of: odoo/enterprise#34523
Original PR description
This commit fixes the HierarchyKanbanRenderer components definition to avoid overriding the global KanbanRecord reference of all KanbanRenderer components, and instead only override the one of this specific kanban view. Task-3070918 Forward-Port-Of: odoo/enterprise#34523
When using studio on the social.stream.post kanban view it crashes because formatPost doesn't exist in the context (studio doesn't use the js_class). So we add a test to check if the method exist before calling it. This will be changed for v16.1 by a custom field widget. It also removes _insertThousandsSeparator for the same reason and also because integer field widget already does the same. Task-3061215 Forward-Port-Of: odoo/enterprise#33806
Original PR description
When using studio on the social.stream.post kanban view it crashes because formatPost doesn't exist in the context (studio doesn't use the js_class). So we add a test to check if the method exist before calling it. This will be changed for v16.1 by a custom field widget. It also removes _insertThousandsSeparator for the same reason and also because integer field widget already does the same. Task-3061215 Forward-Port-Of: odoo/enterprise#33806
Some tests introduced in #33253 for hr_expense_extract were using the field name from hr_recruitment_extract, causing the test to field when hr_recruitment was not installed. Forward-Port-Of: odoo/enterprise#34655
Original PR description
Some tests introduced in #33253 for hr_expense_extract were using the field name from hr_recruitment_extract, causing the test to field when hr_recruitment was not installed. Forward-Port-Of: odoo/enterprise#34655
Just change double the by single. This fixes various typos in error and code comments. Forward-Port-Of: odoo/enterprise#34645
Original PR description
Just change double the by single. This fixes various typos in error and code comments. Forward-Port-Of: odoo/enterprise#34645
The report did not open because a groupby was still referencing the fromerly joined ir_translation table. This table has been removed in 16.0 and replaced by json values in translatable fields, so we call that instead. Forward-Port-Of: odoo/enterprise#34644
Original PR description
The report did not open because a groupby was still referencing the fromerly joined ir_translation table. This table has been removed in 16.0 and replaced by json values in translatable fields, so we call that instead. Forward-Port-Of: odoo/enterprise#34644
This PR make start timer button icon color green in normal and dark mode which was broken by dark mode to adept dark mode colors. task-3018123 Forward-Port-Of: odoo/enterprise#32797
Original PR description
This PR make start timer button icon color green in normal and dark mode which was broken by dark mode to adept dark mode colors. task-3018123 Forward-Port-Of: odoo/enterprise#32797
Steps to reproduce: - Install Belgian accounting. - Activate totals below sections in the settings. - Create and confirm an asset in the previous year. - Go to the depreciation schedule. Observed behavior: The asset line is displayed after all the account group lines AND the totals of those lines. Desired behavior: The asset line should be displayed after the group lines and BEFORE the totals of those lines. If you add other assets with depreciation accounts having a common root,
Original PR description
Steps to reproduce: - Install Belgian accounting. - Activate totals below sections in the settings. - Create and confirm an asset in the previous year. - Go to the depreciation schedule. Observed…
Steps to reproduce: - Install Belgian accounting. - Activate totals below sections in the settings. - Create and confirm an asset in the previous year. - Go to the depreciation schedule. Observed behavior: The asset line is displayed after all the account group lines AND the totals of those lines. Desired behavior: The asset line should be displayed after the group lines and BEFORE the totals of those lines. If you add other assets with depreciation accounts having a common root, the entire hierarchy will be duplicated for every asset. Even the groups that are shared in the hierarchy. Lastly, if you open the balance sheet of a company that has no account groups, the "Hierarchy and Subtotals" option will be available, but it will have no effect (how could it). But if was confusing to see an option and see no effect when clicking on it. So the option will only be displayed if the company has at least one account group. task-3041037 Forward-Port-Of: odoo/enterprise#33294
Follow up of https://github.com/odoo/enterprise/pull/32680 Archived revisions were not deleted when the spreadsheet is deleted. Forward-Port-Of: odoo/enterprise#34602
Original PR description
Follow up of https://github.com/odoo/enterprise/pull/32680 Archived revisions were not deleted when the spreadsheet is deleted. Forward-Port-Of: odoo/enterprise#34602
Make sure the document is saved before opening the document > dashboard wizard. Otherwise, a quick user (quicker than the "write request") could create the dashboard with the previous data. Forward-Port-Of: odoo/enterprise#34530
Original PR description
Make sure the document is saved before opening the document > dashboard wizard. Otherwise, a quick user (quicker than the "write request") could create the dashboard with the previous data. Forward-Port-Of: odoo/enterprise#34530
Prior to this commit: The written code to handle `default_planning_role_id` and `planning_role_ids` changes was making `testWriteSelfEmployee` and `testWriteOtherEmployee` crash with a `AttributeError` error. After this commit: As `default_planning_role_id` should only be an int or a record or `False`, forcing it to `False` when not being on of the previous values will not change the code behavior while still preventing the `AttributeError` error when running the tests. Forward-Port-O
Original PR description
Prior to this commit: The written code to handle `default_planning_role_id` and `planning_role_ids` changes was making `testWriteSelfEmployee` and `testWriteOtherEmployee` crash with a `AttributeError` error. After this commit: As `default_planning_role_id` should only be an int or a record or `False`, forcing it to `False` when not being on of the previous values will not change the code behavior while still preventing the `AttributeError` error when running the tests. Forward-Port-Of: odoo/enterprise#34665
in res.config.settings the label Spreadsheets and icon building is close to each other due to missing class  Forward-Port-Of: odoo/enterprise#34595
Original PR description
in res.config.settings the label Spreadsheets and icon building is close to each other due to missing class  Forward-Port-Of: odoo/enterprise#34595