odoo/o-spreadsheet#5073

Created by fw-bot
Merged at 87692649e68b39d9c12475150392ae0beb4a2908

Statuses:

label
odoo:master-18.0-finer-grained-pivot-cycle-lul-sst3-fw
head
7a4edfbd7fb49f830b156f8363a84d47dd49d37f
merged
1 year ago by BI, Lucas Lefèvre (lul)
odoo/o-spreadsheet
18.0 #5026
saas-18.2
saas-18.3
saas-18.4
19.0
saas-19.1
master #5073

[FW][FIX] pivot: finer grained cycle detection

Description:

Steps to reproduce:

  • insert a fixed pivot (not dynamic!)
  • insert a new calculated measure
  • in the calculated measure formula, reference one of a cell which contains a header formula

=> the cell becomes a #CYCLE even though there's no circular dependendy
between the calculated measure and the other dimension header

Task: 4214188

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: #5026