Глюки rxDBGrid
Модераторы: alexs, Модераторы
Если в TRxDBGrid (даже при DataSource = nil) нет горизонтального ScrollBar-а,
то невозможно использовать строку с итогами - все начинает мерцать и виснет.
Я использовал последние версии из svn FreePascal, Lazarus и rx (rx\trunk\):
Lazarus 1.3 х32, FPC 2.7.1, Win 8.1 x64.
то невозможно использовать строку с итогами - все начинает мерцать и виснет.
Я использовал последние версии из svn FreePascal, Lazarus и rx (rx\trunk\):
Lazarus 1.3 х32, FPC 2.7.1, Win 8.1 x64.
День добрый. Узнать хотел а fvtSum по прежнему не работает в rxDBGrid ?
просто пытался его использовать в гриде. на форме два грида . один идет как мастер. второй как детаил. в детаил стоит свойство fvtSum . соответственно при перемещение по записям в мастере и в делайле тоже меняются данные. но если включить fvtSum в детайле то записи там перестают меняться.
я стандартные комоненты использовал с вкладки sqldb
Спасибо. буду переписывать под zeos.
уже поздно. переделал под zeos. стало работать без глюков.
Обновил lazarus и fpc до транковый 1.3 и 2.7.1 соответственно. Думал исчезнут старые проблемы, но нет.
1) В rxDBGrid если включить Footer то любое значение в rxDBGrid.ScroolBar кроме SSBoth и SSHorizontal вызывает увечение нагрузки лазарусом (и соответственно приложением в котором есть такой rxDBGrid) на процессор до 100%. Соответственно получаем дикие тормоза. (Ubuntu 12.04 и 14.04 32bit)
2) Если при включенном футере у столбца стоит ValutType:= fvtSumm (также fvtMin,fvtMax) то фильтрация по какому либо значению (которых в таблице больше чем одно) вызывает устойчивое исключение. При использование штатных компонентов типа подключения к БД это исключение типа EDatabaseError с сообщением Could not find requested record. Попробовал с Zeos получил исключение EZDatabaseEror c сообщением Bookmark was not found.
Единственно что различает что на zeos исключение дает только один раз, результаты в футере считает правильно и потом фильтрует уже без исключения.
Естественно без футера фильтр работает без проблем.
1) В rxDBGrid если включить Footer то любое значение в rxDBGrid.ScroolBar кроме SSBoth и SSHorizontal вызывает увечение нагрузки лазарусом (и соответственно приложением в котором есть такой rxDBGrid) на процессор до 100%. Соответственно получаем дикие тормоза. (Ubuntu 12.04 и 14.04 32bit)
2) Если при включенном футере у столбца стоит ValutType:= fvtSumm (также fvtMin,fvtMax) то фильтрация по какому либо значению (которых в таблице больше чем одно) вызывает устойчивое исключение. При использование штатных компонентов типа подключения к БД это исключение типа EDatabaseError с сообщением Could not find requested record. Попробовал с Zeos получил исключение EZDatabaseEror c сообщением Bookmark was not found.
Единственно что различает что на zeos исключение дает только один раз, результаты в футере считает правильно и потом фильтрует уже без исключения.
Естественно без футера фильтр работает без проблем.
Последний раз редактировалось Xenar 12.09.2014 22:56:27, всего редактировалось 1 раз.
alexs писал(а):На следующей неделе постараюсь плотно этим позаниматься.
Заменил процедуру CalcStatTotals (rxdbgrid.pas) на аналогичную из комита r2698. Это решило проблему 2.
Насколько я понял проблемма идет с неправильным определение количестве записей в гриде (при включенном футере в агрегатной функцией в столбце), например если одна запись то идет падение.
