Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FW][FIX] xlsx: convert #REF at export to xlsx #5151

Closed

Conversation

fw-bot
Copy link
Collaborator

@fw-bot fw-bot commented Oct 28, 2024

[FIX] xlsx: convert #REF at export to xlsx:

Reference errors in excel are #REF!, not #REF.

[FIX] parser: inconsistent handling of #REF

Depending on how we get a formula with #REF, the parser can have
different behavior even if the formula is the same.

  • If we write directly =#REF (or it comes from a snapshot), the parser
    will throw an error.
  • If we write =A1, then delete the row 1 to get =#REF, the parser will
    return a REFERENCE token with an #REF value.

This is a bit of a problem when exporting the data to xlsx: since
we parse the formulas to know whether we need to export it, we get
a different result depending on how we got the #REF.

Task: 4207052

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: #5150
Forward-Port-Of: #5019

Depending on how we get a formula with #REF, the parser can have
different behavior even if the formula is the same.

- If we write directly =#REF (or it comes from a snapshot), the parser
  will throw an error.
- If we write =A1, then delete the row 1 to get =#REF, the parser will
return a REFERENCE token with an #REF value.

This is a bit of a problem when exporting the data to xlsx: since
we parse the formulas to know whether we need to export it, we get
a different result depending on how we got the #REF.

Task: 4207052
X-original-commit: f20d87a
@robodoo
Copy link
Collaborator

robodoo commented Oct 28, 2024

Pull request status dashboard

@fw-bot
Copy link
Collaborator Author

fw-bot commented Oct 28, 2024

This PR targets saas-17.4 and is part of the forward-port chain. Further PRs will be created up to master.

More info at https://github.com/odoo/odoo/wiki/Mergebot#forward-port

@fw-bot
Copy link
Collaborator Author

fw-bot commented Oct 28, 2024

@hokolomopo @LucasLefevre ci/runbot failed on this forward-port PR

Reference errors in excel are #REF!, not #REF.

Task: 4207052
X-original-commit: 0084194
@hokolomopo hokolomopo force-pushed the saas-17.4-16.0-ref-error-xlsx-export-adrm-qc4b-fw branch from 72debc4 to 1fff843 Compare October 29, 2024 08:32
@fw-bot
Copy link
Collaborator Author

fw-bot commented Oct 29, 2024

@hokolomopo @LucasLefevre this PR was modified / updated and has become a normal PR. It must be merged directly.

@hokolomopo
Copy link
Contributor

@robodoo r+

robodoo pushed a commit that referenced this pull request Oct 29, 2024
Depending on how we get a formula with #REF, the parser can have
different behavior even if the formula is the same.

- If we write directly =#REF (or it comes from a snapshot), the parser
  will throw an error.
- If we write =A1, then delete the row 1 to get =#REF, the parser will
return a REFERENCE token with an #REF value.

This is a bit of a problem when exporting the data to xlsx: since
we parse the formulas to know whether we need to export it, we get
a different result depending on how we got the #REF.

Task: 4207052
X-original-commit: f20d87a
Part-of: #5151
Signed-off-by: Lucas Lefèvre (lul) <[email protected]>
Signed-off-by: Adrien Minne (adrm) <[email protected]>
robodoo pushed a commit that referenced this pull request Oct 29, 2024
Reference errors in excel are #REF!, not #REF.

closes #5151

Task: 4207052
X-original-commit: 0084194
Signed-off-by: Lucas Lefèvre (lul) <[email protected]>
Signed-off-by: Adrien Minne (adrm) <[email protected]>
@robodoo robodoo closed this Oct 29, 2024
@fw-bot fw-bot deleted the saas-17.4-16.0-ref-error-xlsx-export-adrm-qc4b-fw branch November 12, 2024 08:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants