Skip to content

[19.0][IMP] spreadsheet_oca: improved extensibility + basic tests - #127

Open
arielbarreiros96 wants to merge 2 commits into
OCA:19.0from
arielbarreiros96:19.0-imp-spreadsheet_oca-extensibility
Open

arielbarreiros96 wants to merge 2 commits into
OCA:19.0from
arielbarreiros96:19.0-imp-spreadsheet_oca-extensibility

Conversation

@arielbarreiros96

@arielbarreiros96 arielbarreiros96 commented Jul 29, 2026

Copy link
Copy Markdown

This Improvement comes to solve #125, is a minor improvement, but it helps extensibility. Is also easy to backport in case is needed 😅

I've added some tests too, I've noticed that spreadsheet_oca had 0 tests, so I'm including some tests on a separate commit on this same PR, not just for codecov, but for the sake of having at least a basic test suite

@arielbarreiros96 arielbarreiros96 changed the title [19.0][IMP] spreadsheet_oca: improved extensibility [19.0][IMP] spreadsheet_oca: improved extensibility + basic tests Jul 29, 2026
@arielbarreiros96
arielbarreiros96 force-pushed the 19.0-imp-spreadsheet_oca-extensibility branch from e6b1f81 to 2191740 Compare July 29, 2026 13:37
susaglam added a commit to susaglam/spreadsheet that referenced this pull request Sep 17, 2026
The OCA 18.0 based frontend used o-spreadsheet and web client APIs that no
longer exist in saas-19.4. Every API was checked against the 19.4 source;
OCA 19.0 was used as an idea reference only.

spreadsheet_oca
- Global filters: globalFieldMatchingRegistry (getters first) replaces the
  removed globalFiltersFieldMatchers / RELATIVE_DATE_RANGE_TYPES; default
  values use {operator, ids|strings}; date defaults use DefaultDateValue;
  FilterValue gets globalFilterValue / setGlobalFilterValue; string domains
  for DomainSelector. The edit panel no longer crashes on open.
- Insert flows: pivots use getCollapsed/ExpandedTableStructure (dynamic vs
  static), lists use listId and the flat 19.4 definition, graphs create native
  bar/line/pie charts with an "odoo" data source and a valid CREATE_CHART
  payload. Re-insert from the side panels works; SELECT_ODOO_LIST removed.
- List "Add to spreadsheet" moved to the ListController and waits for the
  lazily loaded model (clicks before the renderer mounted were lost); x2many
  lists in forms never react (OCA OCA#88 root cause).
- Side panels: OWL3 hooks pass the component scope as first argument, so the
  pivot/list panels no longer bind loaders with default parameters.
- Charts: a community "odoo" chart data-source side panel is registered
  (community 19.4 only ships "range"); the ChartTypePicker patch that let Odoo
  charts become scorecard/gauge and the dead odoo_* chart panels are removed.
- Control panel: parent components are inherited (OCA OCA#112), breadcrumbs and
  Dropdown use the 19.4 markup (desktop and 375px), t-slot -> t-call-slot,
  graph "Add to spreadsheet" is enabled/disabled on real data.
- getExtraModelCustom() hook lets add-ons extend the model config (OCA OCA#127
  idea); image store implements getFile for clipboard copies.

spreadsheet_forecast_oca, spreadsheet_period_comparison_oca
- toNumber with locale, EvaluationError instead of Error, eslint errors
  fixed, missing _t strings added to the catalogs.

Tests (throwaway saas-19.4 databases on the test clone, Chrome)
- New browser tours for filters, pivot/list/graph insertion into new and
  existing spreadsheets, side-panel re-insert and domain edit, chart panel,
  breadcrumbs (desktop + mobile); hoot suites for the formula modules.
- Fresh install with demo: 491 tests, 0 failed, 0 errors.
- Upgrade of the pre-fix database: 489 tests, 0 failed, 0 errors.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants