odoo/o-spreadsheet#7850

Created by BI, Rémi Rahir (rar)

Blocked

label
odoo:18.0-fix-partial-evaluation-in-cell-rar
head
bb48cc203e32b831765c4a5fe191c56ed20cf3a7
odoo/o-spreadsheet
18.0 #7850 missing r+
saas-18.2

[FIX] Evaluation: Provide cell position on single formula evaluation

How to reproduce:

  • in a spreadsheet, go to the last row
  • in a cell of the last row, write the formula =MUNIT(ROW()) -> the formula is in #SPILL error because we did not extend the size of the spreadsheet

Some formulas, like ROW & COLUMN need to know the coordinates of the cell on which they are applied to be computed and we did not provide those in the evaluation context when evaluating isolated formulas.

task-5798610

Description:

description of this task, what is implemented and why it is implemented that way.

Task: TASK_ID

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