Daily updates from Odoo
Monday, September 23, 2024
7 changes
Enhancements to existing features
Studio approval settings now provide clearer help text and better aligned approval information, making the feature easier to understand and use. Approval groups can also be selected more flexibly because a technical identifier is no longer required.
Spreadsheet list insertions now apply formatting separately and use table styling instead of fixed borders. This makes inserted Odoo lists more consistent, easier to maintain, and better aligned with spreadsheet table behavior.
Original PR description
We currently insert lists with hardcoded borders and styles. This revision adds a new UI command to: - Split the style addition from the list datasource insertion - replace the current style by a table Task: 4178740
Users can now unschedule or delete planning slots directly from the Gantt popover, avoiding the extra step of opening the full form view. The update also standardizes how the unschedule action is defined, making the interface easier to maintain across planning and project views.
Original PR description
_*=planning, project_enterprise - In this PR add a new 'Unschedule and Delete' button to the gantt popover, which enables unscheduling or deletion of a slot directly from the popover without opening the form view. - in this PR remove the unschedule button code from javaScript and implement it in xml. task-3475452
Company-specific settings and values are now stored directly in a more structured database format, improving consistency and making reporting easier. This change also updates related accounting, payroll, documents, reporting, and data-cleaning areas to work with the new storage approach.
Original PR description
[IMP] core: jsonb company dependent fields use jsonb for company dependent fields 1. field type before: company dependent fields were non-stored and computed now: company dependent fields are stored…
[IMP] core: jsonb company dependent fields
use jsonb for company dependent fields
1. field type
before: company dependent fields were non-stored and computed
now: company dependent fields are stored fields whose column type is
jsonb with the format like '{"1": val1}'::jsonb
2. fallback
before: fallbacks of company dependent fields were stored in
ir_property.value_xxx `WHERE res_id IS NULL`
now: fallbacks are stored in ir_default.json_value in the format of
jsonfied write format
3. many2one
a. field.ondelete
before: only field.ondelete='set null'
now: support field.ondelete='set null' and field.ondelete='restrict'
b. field.index
before: no index
now: default 'btree_not_null' which index (col IS NOT NULL) for all
NOT NULL rows
c. reference exists
before: checked when get data from ir_property
now: cleaned when orm `unlink`. As a side effect, if a model is
referenced by a many2one company dependent field, this model
cannot have any field.ondelete='cascade' field. The developer
must override the `unlink` method to do the logical on delete
cascade in the ORM
4. _field_to_sql
before: not supported for company dependent fields
now: can be used by company dependent fields like normal fields to
generate reports
https://github.com/odoo/odoo/pull/175627
task: 3954610Several spreadsheet dashboards were updated to improve readability and business relevance. Changes include refreshed scorecard colors and layout, added accounting borders, and a subscription chart now showing MRR by product category instead of individual products.
Original PR description
some scorecards colors have a changed a graph in Subscriptions has changed (MRR by products -> MRR by Product Category) Some scorecard reorganisation Addition of borders in Accounting Task: 4195987
Helpdesk screens now better respect user permissions across related apps, reducing unnecessary access error messages. Buttons and information that users cannot access are hidden, making the support experience clearer and less confusing.
Original PR description
*= account,repair,loyalty,sale_loyalty,sale_timesheet,stock,timesheet. Improvement by restricting access errors for the user and hiding some stat buttons with no rights task-3912377
Subscription plans can now define whether a cancellation closes the subscription immediately or at the end of the current billing period. This gives businesses more control over cancellation policies and helps align subscription handling with customer commitments.
Original PR description
Before this PR, subscription plans lacked an option to specify whether the subscription should close immediately or at the end of the subscription period. After this PR, a new field has been added to subscription plans, allowing users to choose whether a subscription should close immediately or at the end of it's period. task-4035347