Ошибка в подсчётах при отмене значения в ячейке

Автор greenman, 15 декабря 2014, 05:47

0 Пользователи и 1 гость просматривают эту тему.

greenman

С ЛОР-а:
ЦитироватьТест.
Открываем Calc (libreoffice 4.2). Вводим в столбик 1,2,3, в четвертой строке сумма (6).
Очищаем ячейку с 3-ой, вводим 5. Сумма = 8.
Нажимаем дважды отмену, возвращается 3 . Сумма = 3 !!?? (Автоперерасчет включен!)

По версиям:
4.1.5.3 — все нормально.
4.2.6.3 — глюк, ручной перерасчет (F9) не помогает, на реальном файле даже открыть заново не помогло.
4.2.8.2 — глюк, ручной перерасчет помогает.
4.3.4.1 — все нормально.

Удалял ./config/libreoffice — не помогло, если суммировать в строчку — все нормально.

P.S.
И в этом я считаю спецификации. А некоторые, говорят, зарплату считают.
Поддержка xls, OpenCL, OpenGL ... - сра... я на это. Но арифметику табличный процессор уметь считать должен?!

UPD:
Все намного хуже, файл созданный в 4.2.6.3 не пересчитывается ни в 4.2.8.2, ни в 4.3.4.1
Тест усугубляется если изменить формат ячейки с суммой на "-1234,12".

4.2.7.2 открывает приложенный файл, показывая сумму 3,00
gnumeric открывает приложенный файл, показывая сумму 6,00 (что правильно)

tagezi

#1
Не понял в чем ошибка, в какой версии делали файл, в какой ОС?
Если файл пересохранить в 2.7.2, то формула при открытии пересчитывается.
Для того чтобы проанализировать где конкретно глючит, нужно понимать в чем создан этот файл.
Глюк такой может быть из-за тучи вещей не связанных с ЛО даже косвенно, и естественно никогда не будет исправлен разработчиками.

Правильно я понимаю что это было сделано в LibreOffice 4.2.6.3, Linux_X86_64?
(x86_64) Kubuntu 16.04.3 - LibreOffice 6.0.2 / 6.1 alpha

greenman

#2
По ссылке на ЛОР-е больше информации (как говорится, мопед не мой).
В багзилле баг есть: https://bugs.freedesktop.org/show_bug.cgi?id=86009

Может имеет смысл забросить в багзиллу этот 123.ods


tagezi

Цитата: greenman от 15 декабря 2014, 06:10
По ссылке на ЛОР-е больше информации (как говорится, мопед не мой).
В багзилле баг есть: https://bugs.freedesktop.org/show_bug.cgi?id=86009

Может имеет смысл забросить в багзиллу этот 123.ods
Забросьте, если есть желание.

В LO 4.2.6 я не могу создать такой файл по описанным действиям, так что я не могу подтвердить ошибку. По ссылке которую вы дали сказано, что ошибка была исправлена. И есть ссылка на комент.
(x86_64) Kubuntu 16.04.3 - LibreOffice 6.0.2 / 6.1 alpha

greenman

Linux i686, Libreoffice 4.2.8.2 (специально сделал апдейт) - баг есть, по F9 пересчитывает.
Приложенный файл не пересчитывает даже по F9.

Yakov

На 4.2 проверил - по F9 не пересчитывает, а вот после пересохранения - результат расчёта корректный.

tagezi

Цитата: greenman от 15 декабря 2014, 02:47Открываем Calc (libreoffice 4.2). Вводим в столбик 1,2,3, в четвертой строке сумма (6).
Очищаем ячейку с 3-ой, вводим 5. Сумма = 8.
Нажимаем дважды отмену, возвращается 3 . Сумма = 3 !!?? (Автоперерасчет включен!)
Понял как воссоздать такой файл. Если честно, не знал что так кто-то делает. Мозг просто проигнорировал такой способ работы с ячейками. Да, ошибка в 4.2.6 есть, да не обновляется.
Метод обхода Яков описал.
(x86_64) Kubuntu 16.04.3 - LibreOffice 6.0.2 / 6.1 alpha

greenman

Получается, одно из ключевых действий для воспроизведения - очистка ячейки (delete cell).

И если значения не в столбце, а в строке, баг воспроизводится, если ячейка с суммой не в той же строке.