Глюки rxDBGrid

Модераторы: alexs, Модераторы

Аватара пользователя
alexs
долгожитель
Сообщения: 4066
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

Я в соседнем топике вчерась написал. Это связано с нововведениями в LCL. РАскоментируй дефине в rx.inc
Igor2013
незнакомец
Сообщения: 3
Зарегистрирован: 01.07.2013 20:28:17

Сообщение Igor2013 »

Если в TRxDBGrid (даже при DataSource = nil) нет горизонтального ScrollBar-а,
то невозможно использовать строку с итогами - все начинает мерцать и виснет.

Я использовал последние версии из svn FreePascal, Lazarus и rx (rx\trunk\):
Lazarus 1.3 х32, FPC 2.7.1, Win 8.1 x64.
Аватара пользователя
alexs
долгожитель
Сообщения: 4066
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

Ок. Гляну
Аватара пользователя
DYUMON
постоялец
Сообщения: 234
Зарегистрирован: 11.03.2009 12:32:54
Контактная информация:

Сообщение DYUMON »

День добрый. Узнать хотел а fvtSum по прежнему не работает в rxDBGrid ?
Аватара пользователя
alexs
долгожитель
Сообщения: 4066
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

DYUMON писал(а):День добрый. Узнать хотел а fvtSum по прежнему не работает в rxDBGrid ?

По прежнему работает :-)
В чём проблема?
Аватара пользователя
DYUMON
постоялец
Сообщения: 234
Зарегистрирован: 11.03.2009 12:32:54
Контактная информация:

Сообщение DYUMON »

просто пытался его использовать в гриде. на форме два грида . один идет как мастер. второй как детаил. в детаил стоит свойство fvtSum . соответственно при перемещение по записям в мастере и в делайле тоже меняются данные. но если включить fvtSum в детайле то записи там перестают меняться.
Аватара пользователя
alexs
долгожитель
Сообщения: 4066
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

У меня это постоянная связка - список документов и список строк в документе.
В списке строк суммирую колонки - всё норм работает
проверял на FBDataSet, Zeos.
Аватара пользователя
DYUMON
постоялец
Сообщения: 234
Зарегистрирован: 11.03.2009 12:32:54
Контактная информация:

Сообщение DYUMON »

я стандартные комоненты использовал с вкладки sqldb
Аватара пользователя
alexs
долгожитель
Сообщения: 4066
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

Глючные они. Действительно не работают. Посмотрю.
Но пользоваться ими не рекомендую - в UTF8 они косячат с русскими текстами.
Аватара пользователя
DYUMON
постоялец
Сообщения: 234
Зарегистрирован: 11.03.2009 12:32:54
Контактная информация:

Сообщение DYUMON »

Спасибо. буду переписывать под zeos.
Аватара пользователя
alexs
долгожитель
Сообщения: 4066
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

Проверь под sqldb - кажется поправил
Аватара пользователя
DYUMON
постоялец
Сообщения: 234
Зарегистрирован: 11.03.2009 12:32:54
Контактная информация:

Сообщение DYUMON »

уже поздно. переделал под zeos. стало работать без глюков.
Аватара пользователя
Xenar
постоялец
Сообщения: 158
Зарегистрирован: 08.06.2011 12:54:07

Сообщение Xenar »

Обновил 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 исключение дает только один раз, результаты в футере считает правильно и потом фильтрует уже без исключения.

Естественно без футера фильтр работает без проблем.
Последний раз редактировалось Xenar 12.09.2014 22:56:27, всего редактировалось 1 раз.
Аватара пользователя
alexs
долгожитель
Сообщения: 4066
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

На следующей неделе постараюсь плотно этим позаниматься.
Аватара пользователя
Xenar
постоялец
Сообщения: 158
Зарегистрирован: 08.06.2011 12:54:07

Сообщение Xenar »

alexs писал(а):На следующей неделе постараюсь плотно этим позаниматься.

Заменил процедуру CalcStatTotals (rxdbgrid.pas) на аналогичную из комита r2698. Это решило проблему 2.
Насколько я понял проблемма идет с неправильным определение количестве записей в гриде (при включенном футере в агрегатной функцией в столбце), например если одна запись то идет падение.
Ответить