Daily updates from Odoo
Friday, September 9, 2022
12 changes
Enhancements to existing features
Project fields in field service tasks and planning lists are no longer clickable from list views. This reduces unnecessary navigation to project configuration screens during day-to-day work.
Original PR description
Before this commit, the project field in task and
planning.slot{.template} models is clickable in list view of those models.
This commit prevents to open the form view in the list view since the form view of project is now more a view to configuration the project and so once the configuration is done, the user will not always need to go to that view.The Accounting Import Guide now includes breadcrumbs to make it easier for users to understand where they are and navigate back. This improves usability while keeping the page focused by hiding unnecessary control panel elements.
Original PR description
Currently, the Accounting Import Guide page does not have breadcrumbs. Adding a controlpanel with breadcrumbs for easier navigation, hiding the rest of the elements in the controlpanel.
Batch payment creation now verifies whether recipient bank accounts are allowed to receive outgoing payments before including them. This helps prevent payment batches from being created with accounts that should not be used, reducing payment errors and follow-up corrections.
Original PR description
See: odoo/odoo#94801 See: odoo/upgrade#3637 Task: 2856231
This update tidies internal layout definitions used by Approvals and Sign activity views. It prepares the codebase for future cleanup without changing business workflows or adding visible features.
Original PR description
In preparation of future clean up. - remove useless class o_activity_link - move d-flex from o_activity_title_entry to template - move align-items-baseline from o_activity_title_entry to template https://github.com/odoo/odoo/pull/99824
Project document management is now always available and easier to configure per project or product. Sales-driven projects can automatically receive document workspaces based on product templates, while portal and public shared-link users get clearer access to shared project documents.
Original PR description
\* = fsm,project,project_sale,project_sign This PR is a follow-up of https://github.com/odoo/enterprise/pull/26696 Features ======= - Removed the "Documents" Project global setting. - The feature is…
\* = fsm,project,project_sale,project_sign This PR is a follow-up of https://github.com/odoo/enterprise/pull/26696 Features ======= - Removed the "Documents" Project global setting. - The feature is now always enabled. - It can still be disabled per project, and is still disabled by default on fsm projects. - The "Workspace Template" setting is moved to products, and the "Parent Workspace" setting is removed. - The "Projects" workspace is no longer company dependent, and is replaced by a global workspace with the same name. - It is not allowed to remove that workspace or change its company - Moved the "Workspace Template" Project global setting to the `product.template` model. - Only visible if the product generates a project. - Restricted to workspaces with no company or with the product's company (or the current company if the product has no company). - When a Sales Order contains a product with a Workspace Template, the workspace of project generated for that line will be a copy of the Workspace Template. - The copy of the template is placed in the same workspace (it keeps the same parent workspace as the template) - If a project is associated to multiple SOLs with different Workspace Templates, then the generated workspace will be a combination of all of those templates. - The generated workspace will have a copy of all the facets, tags, actions and children of all the templates. - In this case, the generated project will be placed in the "Projects" workspace. - Added a button to view projects' shared documents in the portal task list view. - A projects' shared documents include shared documents either linked to the project itself or to one of its tasks. - Only visible if the tasks are grouped by project. - When a project has shared documents, its tasks will automatically be grouped by project to make the button appear. - Allow public users to access documents in the portal. - With a share link with a valid access tokens, users can see, download and upload documents like portal users. - When uploading a document to a workspace that is linked to a project, also set the default document tags of the project on that document. - If the workspace is linked to multiple projects, no tags will be set. - If the workspace is a descendant of a workspace linked to a single project, then the default document tags of that project will be set. - If the workspace is descendant of multiple such projects, the closest ancestor will be selected. - When duplicating a project, the copied project is now linked to the same workspace. - When duplicating a workspace, the description and access rights are now also copied. - Added some demo data to help showcasing and testing the aforementionned features. Technical Details ============== - Added a `search` method for the `is_shared` field on documents. - It allows us to compute shared documents more efficiently in multiple places. - All portal documents tasks routes now have a second url for when coming from a project. - This is because, when sharing a project with an access token and viewing one of its tasks, the token of the project its used, not the one of the task. - After installation, `documents_fsm` unlinks the workspace of all fsm projects. This is because two problematic cases can occur: - If we install Field Service in a database with `documents_project`, the module `industry_fsm` will create the default Field Service project before `documents_fsm` is installed, which means that the Documents Feature wil not be disabled by default on fsm projects at that point. - If we install Documents in a database with Field Service, the `documents_project` module will install first, and cause all projects, including fsm ones, to generate a workspace. - Previously, we were preventing the user from selecting a parent of the Parent Workspace as a Workspace Template to avoid infinite recursion issues. This problem could occur again when generating a workspace from multiple templates through a SO if one of those templates is a parent of the "Projects" workspace, but we solve the issue by generating the workspace at root level, and only assigning its parent after copy. --- Community: https://github.com/odoo/odoo/pull/99151 Upgrade: https://github.com/odoo/upgrade/pull/3749 Task-2944247
This update changes payment-related wording from “acquirer” to “provider” across affected payment, subscription, and expense flows. The change makes the product terminology more accurate for services that process or facilitate payments without necessarily acting as financial acquirers.
Original PR description
Changing the name of model payment.acquirer to payment.provider and everything that it touches. It is technically incorrect to use the term "acquirer" for systems that only provide a service of payment. After this commit the model payment.acquirer and all related to it will be renamed to payment.provider. Task - 2842088 See also: - https://github.com/odoo/odoo/pull/90899 - https://github.com/odoo/documentation/pull/1981 - https://github.com/odoo/upgrade/pull/3542
Customized financial reports now use a dedicated handler structure instead of mixing all custom behavior directly into every report. This reduces the risk of internal naming conflicts and makes future country-specific and accounting report customizations easier to maintain without changing the user experience.
Original PR description
In Reportalypse, custom reports use fields to refer to functions allowing customizing different behaviors of the engine. With this, all account.report models contain all the functions of all the custom reports, leading to possible name clashes if the functions aren't properly prefixed. We can improve that a little: instead of having multiple fields, we use but one, referring to an AbstractModel inheriting from a new AbstractModel called account.report.custom.handler. This AbstractModel simply contains the different functions that can be overridden, and its subclasses are responsible to do so. In the code, instead of calling _get_custom_report_function, we check whether there is a custom handler for the report, and call the right function on it. task-2954761
The Knowledge app’s sharing prompt now opens links in a new browser tab so users can keep their current work in place. Its portal text is also smaller, making the prompt less distracting while still encouraging sharing.
Original PR description
Purpose ======= Improve the knowledge virality UI done in Task-2936725. Specifications ============== Instead of redirecting the user on their current tab, open a new tab to keep what they were doing. Reduce the portal virality UI text size to make it more discrete. Task-2976493
This change reduces the amount of field information sent to the web client so it receives only what it needs. This can improve efficiency and page loading behavior, with a small related adjustment in Studio.
Original PR description
See the related commit in odoo/odoo for more details.
The Luxembourg reporting module’s expected test results were updated to match current test data. This helps keep automated checks aligned and reduces false alarms during quality validation.
Original PR description
See related community PR.
Customers can now receive email notifications related to product availability in the online shop. This helps improve the shopping experience by keeping interested buyers informed and supporting follow-up sales opportunities.
Original PR description
See https://github.com/odoo/odoo/pull/23741
The Belgian payroll module updates commission import and warrant payslip generation screens to a newer interface technology. This should keep these payroll workflows aligned with the current Odoo user experience and improve maintainability without changing the underlying business process.
Original PR description
Converts binary_commision field Converts generate_warrant_payslips view