Bug 133688 - FILESAVE XLSX Precedent / Dependent tracing arrows saved to XLSX as shapes
Summary: FILESAVE XLSX Precedent / Dependent tracing arrows saved to XLSX as shapes
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
Version:
(earliest affected)
Inherited From OOo
Hardware: All All
: medium normal
Assignee: Szabolcs Toth
URL:
Whiteboard: target:7.1.0
Keywords: filter:xlsx
Depends on:
Blocks: XLSX-Shapes
  Show dependency treegraph
 
Reported: 2020-06-05 06:30 UTC by NISZ LibreOffice Team
Modified: 2020-09-14 12:03 UTC (History)
1 user (show)

See Also:
Crash report or crash signature:


Attachments
Example file from Calc (11.09 KB, application/vnd.oasis.opendocument.spreadsheet)
2020-06-05 06:30 UTC, NISZ LibreOffice Team
Details
The original file saved by Calc (7.79 KB, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)
2020-06-05 06:31 UTC, NISZ LibreOffice Team
Details
Screenshot of the original and exported document side by side in Calc (74.29 KB, image/png)
2020-06-05 06:31 UTC, NISZ LibreOffice Team
Details
How it looks with the proposed fix (41.80 KB, image/png)
2020-09-04 07:00 UTC, Szabolcs Toth
Details

Note You need to log in before you can comment on or make changes to this bug.
Description NISZ LibreOffice Team 2020-06-05 06:30:10 UTC
Created attachment 161631 [details]
Example file from Calc

Attached ods document has some simple formulae referencing each other. Calc can trace formula dependents/precedents and indicate these with arrows.
When saving the file to XLSX these arrows are saved as drawing objects and make the “Remove precedents” / “Remove dependents” commands unusable.

Steps to reproduce:
    1. Open attached document
    2. Save as XLSX, reload
    3. Use Tools – Detective - “Remove precedents” / “Remove dependents”

Actual results:
Arrows are not removed.

Expected results:
No arrows saved to XLSX.

LibreOffice details:
Version: 7.1.0.0.alpha0+ (x64)
Build ID: 191288d6a7fb52b31038a21c4e71ee57ffa3bacd
CPU threads: 4; OS: Windows 6.3 Build 9600; UI render: Skia/Raster; VCL: win
Locale: hu-HU (hu_HU); UI: en-US
Calc: CL
Comment 1 NISZ LibreOffice Team 2020-06-05 06:31:16 UTC
Created attachment 161632 [details]
The original file saved by Calc
Comment 2 NISZ LibreOffice Team 2020-06-05 06:31:53 UTC
Created attachment 161633 [details]
Screenshot of the original and exported document side by side in Calc
Comment 3 NISZ LibreOffice Team 2020-06-05 06:34:42 UTC
Note: Solving this and the related one has to do with the ScDetectiveObjType enum. 
In the ODF filter these seem to be checked and shapes having these are not exported as ODF shapes.

https://opengrok.libreoffice.org/xref/core/sc/inc/detfunc.hxx?r=9d4c36d7#39
Comment 4 Szabolcs Toth 2020-09-04 07:00:25 UTC
Created attachment 165129 [details]
How it looks with the proposed fix
Comment 5 Commit Notification 2020-09-14 11:58:03 UTC
Szabolcs Toth committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/14b40ec7be7ca8315848034591e3c3a246d5a8dd

tdf#133688 tdf#125414 XLSX: don't export tracer arrows

It will be available in 7.1.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.