| Summary: | FILEOPEN: Inherited currency format not retained through close and open | ||
|---|---|---|---|
| Product: | LibreOffice | Reporter: | mike.hall |
| Component: | Calc | Assignee: | Markus Mohrhard <markus.mohrhard> |
| Status: | RESOLVED FIXED | ||
| Severity: | major | CC: | LibreOffice, markus.mohrhard |
| Priority: | medium | ||
| Version: | 4.0.0.0.alpha0+ Master | ||
| Hardware: | All | ||
| OS: | Windows (All) | ||
| Whiteboard: | target:4.1.0 target:4.0.0 | ||
| Crash report or crash signature: | Regression By: | ||
| Bug Depends on: | |||
| Bug Blocks: | 54157 | ||
| Attachments: | Sample document what reproduced the bug | ||
|
Description
mike.hall
2013-01-22 17:52:12 UTC
Created attachment 73468 [details]
Sample document what reproduced the bug
[Reproducible] with attached Sample document (you see the result) and server installation of "4.1.0.0.alpha0 (Build ID: 0ff470cff6ecc436e723af6a60986c8eefaba7b) TinderBox: Win-x86@6, Branch:master, Time: 2013-01-19 22:38:36 - ENGLISH UI / German Locale on German WIN7 Home Premium (64bit) with LO41 Masters User Profile
The values created by formulas in column B showed Currency format until I had closed the document. After having reopened Currency is missing.
And here also the trick "find & replace all '=' by '='" does the job and reanimates the currency format.
Definitively FILEOPEN problem. 3.5.7.2 opens sample showing Currency format in column B.
Ctrl+Shift+F9 is better than search and replace! This forces a hard recalculation. *** Bug 58943 has been marked as a duplicate of this bug. *** Please see <https://bugs.freedesktop.org/show_bug.cgi?id=58943#c3> with hint where problem might have started Major due to simple workaround Silly question, but is the difference between 3.5.7.2 and 4.0.xxx that the former forces a recalculation on open whereas forced recalculation has been dropped in 4.0? (In reply to comment #5) > Silly question, but is the difference between 3.5.7.2 and 4.0.xxx that the > former forces a recalculation on open whereas forced recalculation has been > dropped in 4.0? Yes. Until 4.0 we had to force a full recalculation of all formulas after import. Beginning with 4.0 we import the cached values from ODS and OOXML files and use the stored values to prevent the recalculation. This speeds up the import quite a bit in larger documents. Since this required a major rework of how we handle formulas during import we are still seeing some smaller problems that we have to fix when somebody notices them. In the long run this change brings us closer to a fast import of all major document formats. So, the problem may not be with FILEOPEN, but rather that inherited formats are not saved with the file at all, just the cached value of the formula. Thus the problem probably applies to all inherited formats. I've just tried with dates, and exactly the same problem occurs. No, percentages and boolean work OK. Percentages can be added or subtracted by formula with inheritance, but inheritance is lost with multiplication or division. Fractions are the same problem (you can add fractions and get inheritance) but subtraction, multiplication and division just give the number. (In reply to comment #7) > So, the problem may not be with FILEOPEN, but rather that inherited formats > are not saved with the file at all, just the cached value of the formula. > Thus the problem probably applies to all inherited formats. I've just tried > with dates, and exactly the same problem occurs. No. It is an import problems and I finally think I know what is the problem. I need to study the spec a bit more and think a bit about the code and a clean solution. If I'm right we are incorrectly ignoring the text part of some cell types which results in calling in incorrectly importing the cached value as number. Markus Mohrhard committed a patch related to this issue. It has been pushed to "master": http://cgit.freedesktop.org/libreoffice/core/commit/?id=ae516fabd96a948b62c4d3a522555fc955750c3e import inherited number formats with cached values, fdo#59724 The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback. @Marcus Many thanks. Will test on Windows. As target is 4.1.0 maybe it would be worth publicising the recalculate workaround Ctrl+Shift F9 in release notes for 4.0? You didn't mean to put target 4.0.1? (Just hopeful!) Markus Mohrhard committed a patch related to this issue. It has been pushed to "libreoffice-4-0": http://cgit.freedesktop.org/libreoffice/core/commit/?id=a2ebd811d4049e2ed03c677cbc7d0e2c8515b797&h=libreoffice-4-0 import inherited number formats with cached values, fdo#59724 It will be available in LibreOffice 4.0.1. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback. (In reply to comment #11) > @Marcus > Many thanks. Will test on Windows. As target is 4.1.0 maybe it would be > worth publicising the recalculate workaround Ctrl+Shift F9 in release notes > for 4.0? > > You didn't mean to put target 4.0.1? (Just hopeful!) Still pending review for the 4-0-0 branch. The original patch was not enough to fix all problems so I needed two more patches to fix the remaining problems. The patch in 4-0 and the one pending review for 4-0-0 are complete. Assign this to Markus. Markus Mohrhard committed a patch related to this issue. It has been pushed to "libreoffice-4-0-0": http://cgit.freedesktop.org/libreoffice/core/commit/?id=735798ebcf5ce94419bbbca3cd87073225ed396d&h=libreoffice-4-0-0 import inherited number formats with cached values, fdo#59724 It will be available already in LibreOffice 4.0.0. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback. |