Skip to content

[fork-CI] [20.0][MIG] spreadsheet_dashboard_oca: Migration to 20.0 - #8

Open
dnplkndll wants to merge 30 commits into
20.0from
20.0-mig-spreadsheet_dashboard_oca
Open

dnplkndll wants to merge 30 commits into
20.0from
20.0-mig-spreadsheet_dashboard_oca

Conversation

@dnplkndll

Copy link
Copy Markdown

Port of spreadsheet_dashboard_oca from 19.0 to 20.0. Follows the OCA migration guide.

Depends on #7 (spreadsheet_oca has no 20.0 wheel yet), so Detect unreleased dependencies is expected red.

AI-assisted (Claude Code); every change reviewed, tested, and owned by the author.

etobella and others added 30 commits September 30, 2026 15:06
Currently translated at 80.0% (4 of 5 strings)

Translation: spreadsheet-16.0/spreadsheet-16.0-spreadsheet_dashboard_oca
Translate-URL: https://translation.odoo-community.org/projects/spreadsheet-16-0/spreadsheet-16-0-spreadsheet_dashboard_oca/it/
Currently translated at 100.0% (9 of 9 strings)

Translation: spreadsheet-16.0/spreadsheet-16.0-spreadsheet_dashboard_oca
Translate-URL: https://translation.odoo-community.org/projects/spreadsheet-16-0/spreadsheet-16-0-spreadsheet_dashboard_oca/fr_FR/
Currently translated at 77.7% (7 of 9 strings)

Translation: spreadsheet-16.0/spreadsheet-16.0-spreadsheet_dashboard_oca
Translate-URL: https://translation.odoo-community.org/projects/spreadsheet-16-0/spreadsheet-16-0-spreadsheet_dashboard_oca/nl/
Currently translated at 100.0% (9 of 9 strings)

Translation: spreadsheet-16.0/spreadsheet-16.0-spreadsheet_dashboard_oca
Translate-URL: https://translation.odoo-community.org/projects/spreadsheet-16-0/spreadsheet-16-0-spreadsheet_dashboard_oca/it/
All the spreadsheet dashboards coming from Odoo in the modules
spreadsheet_dashboard* are noupdate="0", which means that if you
modify anything via this module, and then you update the module, all the
changes will be lost.

To avoid frustrations and to allow seamless updates, the following
mechanisms have been put in place:

- Spreadsheet dashboards now have an active field.
- Only the manually created dashboards or those coming from data
  with noupdate="1" will be editable.
- There's a mechanism for copying existing dashboards.

So, for modifying one of the standard dashboards, the steps will be:

- Duplicate it through the "Copy" button.
- Disable the standard one.
- Edit the copy.

TT49379
Currently translated at 100.0% (12 of 12 strings)

Translation: spreadsheet-16.0/spreadsheet-16.0-spreadsheet_dashboard_oca
Translate-URL: https://translation.odoo-community.org/projects/spreadsheet-16-0/spreadsheet-16-0-spreadsheet_dashboard_oca/it/
…board_sheet + dynamic + new dashboard

- Add field to define name of table and restructure order of fields

- Error with dashboard_sheet selected

The error is happening because the dashboard where
the data has to be added is not being showed.

With this changes the field to define the
dashboard is required and is showed.

Added a way to limit the search to the dashboards
that can be edited

- Allow to generate dynamic tables

On dashboards exists tables that are updated dynamically,
with this changes we have the option to generate this
dynamic tables using the pivot inserter.

Added a button to duplicate and change to dynamic
table the selected table on spreadsheet editor.

If a table with multiple row goups generated, the
way to generate the dynamic table will be set the
number of rows for each level of indentation.

Example:
2 rowGroupBys
3 number of rows
- val1
    - subval1.1
    - subval1.2
    - subval1.3
- val2
    - subval2.1
    - subval2.2
    - subval2.3
- val3
    - subval3.1
    - subval3.2
    - subval3.3

- Add option to create new dashboard
Currently translated at 100.0% (16 of 16 strings)

Translation: spreadsheet-16.0/spreadsheet-16.0-spreadsheet_dashboard_oca
Translate-URL: https://translation.odoo-community.org/projects/spreadsheet-16-0/spreadsheet-16-0-spreadsheet_dashboard_oca/it/
Currently translated at 100.0% (16 of 16 strings)

Translation: spreadsheet-16.0/spreadsheet-16.0-spreadsheet_dashboard_oca
Translate-URL: https://translation.odoo-community.org/projects/spreadsheet-16-0/spreadsheet-16-0-spreadsheet_dashboard_oca/pt/
With these changes, we have added the ability to make the columns
dynamic, just as is done with the rows.

To add this type of table, we will need to select the dynamic columns
option and choose the number of columns to insert. Keep in mind that if
multiple column levels are selected, the chosen number will apply to
each of these levels.

In addition to this, the wizard that opens with the spreadsheet button
has been updated to allow us to choose the type of dynamism we expect in
the inserted table.
- Rename field data to spreadsheet_binary_data in line with v17 spreadsheet_oca changes in PR (OCA#60)
- Remove dependency on base_view_inheritance_extension module.
- Remove dependency on spreadsheet.mixin, moved to spreadsheet.abstract
Currently translated at 100.0% (17 of 17 strings)

Translation: spreadsheet-17.0/spreadsheet-17.0-spreadsheet_dashboard_oca
Translate-URL: https://translation.odoo-community.org/projects/spreadsheet-17-0/spreadsheet-17-0-spreadsheet_dashboard_oca/zh_CN/
…ertions

1- Removed the option to add in a new sheet; this will now be the default behavior of the option to add to an existing spreadsheet. Due to the nature of tables, they are always dynamic and structured in such a way that cells don’t contain static content, making it impossible to determine where previously inserted tables end within the spreadsheet. Therefore, we’ve chosen to follow Odoo’s approach, which always inserts data into new sheets.

2- Removed the use of dynamic column fields, as they are no longer used. Only dynamic rows are used now, for cases when a tree view is inserted.
Currently translated at 100.0% (16 of 16 strings)

Translation: spreadsheet-18.0/spreadsheet-18.0-spreadsheet_dashboard_oca
Translate-URL: https://translation.odoo-community.org/projects/spreadsheet-18-0/spreadsheet-18-0-spreadsheet_dashboard_oca/it/
Currently translated at 100.0% (30 of 30 strings)

Translation: spreadsheet-18.0/spreadsheet-18.0-spreadsheet_dashboard_oca
Translate-URL: https://translation.odoo-community.org/projects/spreadsheet-18-0/spreadsheet-18-0-spreadsheet_dashboard_oca/it/
Currently translated at 100.0% (30 of 30 strings)

Translation: spreadsheet-18.0/spreadsheet-18.0-spreadsheet_dashboard_oca
Translate-URL: https://translation.odoo-community.org/projects/spreadsheet-18-0/spreadsheet-18-0-spreadsheet_dashboard_oca/es/
Currently translated at 50.0% (15 of 30 strings)

Translation: spreadsheet-18.0/spreadsheet-18.0-spreadsheet_dashboard_oca
Translate-URL: https://translation.odoo-community.org/projects/spreadsheet-18-0/spreadsheet-18-0-spreadsheet_dashboard_oca/fr/
Signed-off-by: Don Kendall <dkendall@ledoweb.com>
Assisted-by: Claude Opus 5
* ir.model.access.csv -> security/ir.access.csv (19.4-00-ir-access).
* Owl 3 (owl3-migration): useState -> proxy, and useSubEnv now comes from the
  @web/owl2 compat shim.
* fa- icons -> Material Symbols on button icon= attributes (icon + icon_class),
  applied with the script from the unmerged odoo/odoo#287860.
* .ruff.toml ignores RUF012: ruff 0.16.8 rejects list _inherit, which core uses.

Signed-off-by: Don Kendall <dkendall@ledoweb.com>
Assisted-by: Claude Opus 5
… PR branch

Signed-off-by: Don Kendall <dkendall@ledoweb.com>

Assisted-by: Claude Opus 5
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.