odoo/o-spreadsheet#7423

Created by fw-bot
Merged at 0682b866f6fa922a4b4a6cf2daae04b5e7d8473f

Statuses:

label
odoo:saas-18.3-18.0-fix-scorecard-gauge-empty-range-dhrp-475766-fw
head
0478e6f5cfe7713699c02e9011790e04f1383e3a
merged
2 months ago by BI, Dhrutik Patel (dhrp)
odoo/o-spreadsheet
18.0 #7385
saas-18.2 #7417
saas-18.3 #7423
saas-18.4 #7424
19.0 #7425
saas-19.1
master #7426

[FIX] charts: crash when converting empty chart to scorecard/gauge

Description:

When creating a Scorecard or Gauge from an empty carousel/chart, context.range can be an empty array.
Accessing context.range[0].dataRange crashed.

This PR adds a check to ensure that context.range has at least one element before accessing context.range[0].dataRange.

Task: 5181741

review checklist

  • [ ] feature is organized in plugin, or UI components
  • [ ] support of duplicate sheet (deep copy)
  • [ ] in model/core: ranges are Range object, and can be adapted (adaptRanges)
  • [ ] in model/UI: ranges are strings (to show the user)
  • [ ] undo-able commands (uses this.history.update)
  • [ ] multiuser-able commands (has inverse commands and transformations where needed)
  • [ ] new/updated/removed commands are documented
  • [ ] exportable in excel
  • [ ] translations (_t("qmsdf %s", abc))
  • [ ] unit tested
  • [ ] clean commented code
  • [ ] track breaking changes
  • [ ] doc is rebuild (npm run doc)
  • [ ] status is correct in Odoo

Forward-Port-Of: #7417
Forward-Port-Of: #7385