Страница 4 из 26
Re: Глюки rxDBGrid
Добавлено: 31.05.2012 13:40:38
ronin
решения описанной ранее проблемы ждать?

Re: Глюки rxDBGrid
Добавлено: 31.05.2012 19:56:21
alexs
Можешь тестовый пример?
Я как раз недавно (месяца 2 назад) подобную багу правил.
У меня нет такой проблемы.
Re: Глюки rxDBGrid
Добавлено: 04.08.2012 18:58:01
ronin
скачал вчерашнюю ночную сборку всё равно в RxDBGrid.pas приходится добавлять проверку на F.IsNull в функции function TRxColumnFooter.ErrorTestValue: boolean;
вот в этом месте:
Код: Выделить всё
begin
case FValueType of
fvtSum:
if F.DataSet.RecordCount = 0 then
begin
{ if not F.IsNull then
FTestValue := FTestValue - F.AsFloat;}
{ TODO -oalexs : need rewrite this code - where difficult! }
end
else
begin
if not F.IsNull then begin //добавленная проверка
if F.OldValue <> null then
FTestValue := FTestValue + Float(F.OldValue);
if not F.IsNull then
FTestValue := FTestValue - F.AsFloat;
end;
end;
fvtMax:
if (F.DataSet.RecordCount <> 0) and (F.OldValue <> null) then
FTestValue := Max(FTestValue, Float(F.OldValue));
fvtMin:
if (F.DataSet.RecordCount <> 0) and (F.OldValue <> null) then
FTestValue := Min(FTestValue, Float(F.OldValue));
end;
end;
иначе ловлю исключение Index out of bound при добавлении строки в таблицу и включённом футере
и остаётся баг с пересчётом итогов в detail таблице, не знаю как собрать тестовый пример
Re: Глюки rxDBGrid
Добавлено: 04.08.2012 21:32:04
alexs
Внес изменения. Немного переработал.
А какой набор данных используется?
На мой взгляд - тут либо глюк DB, либо глюк набора данных.
Re: Глюки rxDBGrid
Добавлено: 04.08.2012 21:40:28
ronin
zeos из trunk
после того как добавил проверку глюк пропал, так что я думаю это всё таки грид

Re: Глюки rxDBGrid
Добавлено: 09.08.2012 21:43:31
ronin
порыл тут на форуме, вроде таких тем не видел, обнаружил странное поведение грида при отрисовке двухуровненвых шапок, при наведении на них мышкой
глюк не наблюдается при классической теме, проверял на стандартной ХР теме, на 7ке не смотрел

на скрине показано как отображается шапка при наведении мышкой, под курсором пропадает текст и меняется цвет шапки
p.s. проверял на двух разных компах на ХР, titlestyle пробовал все варианты, не помогло
Добавлено спустя 6 минут 52 секунды:да, насчёт пересчёта итогов забыл сказать что это не баг, это фича такая наверное

я же выше писал почему так происходит, буду думать как исправить
Добавлено спустя 2 минуты 59 секунд:вот из-за чего так происходит
Но в последних комитах я убрал из TRxDBGrid.UpdateActive пересчёт итогов. Сейчас этот метод грида изменяется на каждое изменение положения курсора в наборе данных. Получается лишние вызовы и глюки при движению по гриду, содержимое которого превышает размер самого грида.
Ещё не придумал как обойти...
в коде ты закомментировал строку с пересчётом, получается теперь в главном гриде пересчёт идёт а в дочернем нет, строку раскомментирую, всё считает и там и там, но появляются непонятные глюки со скроллингом гридов, о которых ты скорее всего здесь и упоминаешь
Re: Глюки rxDBGrid
Добавлено: 10.08.2012 07:55:39
alexs
1. Есть такой глюк в винде. Не доходт руки поправить. Там надо переделать логику отрисовки шапки грида.
2. Можно пример с дочерним гридом?
Re: Глюки rxDBGrid
Добавлено: 10.08.2012 08:19:17
xcod
Вопрос не по глюку

но создавать тему отдельную нехочеца
в футер вывожу кол-во строк(fvtCount) и сумму (fvtSum)
как мне их вернуть в мою переменную, для своих дальнейших действий?
Re: Глюки rxDBGrid
Добавлено: 10.08.2012 20:36:24
alexs
Sum2:=RxDBGrid8.ColumnByFieldName('sum_delta').Footer.NumericValue;
Re: Глюки rxDBGrid
Добавлено: 10.08.2012 23:42:59
ronin
1. как можно посодействовать?
2. постараюсь смастерить
Re: Глюки rxDBGrid
Добавлено: 11.08.2012 02:23:18
alexs
ronin писал(а):1. как можно посодействовать?
СТандартно грид вызывает отрисовку только для тех ячеек, которые надо перерисовать.
Когда имеем объединение ячеек заголовка - рисуется только первая ячейка из серии объединённых. И она же расширяется на всю серию. Поэтому и происходит порча заголовка при перекрытии последющих (не первых) ячеек.
Мысли крутятся насчёт принудительной отрисовки в это случаее первой ячейки. Но это надо оформить.
В GTK2 такое не наблюдается - поэтому не занимаюсь вплотную.
2. Жду.
Re: Глюки rxDBGrid
Добавлено: 11.08.2012 16:04:23
xcod
alexs писал(а):
Sum2:=RxDBGrid8.ColumnByFieldName('sum_delta').Footer.NumericValue;
спасибо большое

Re: Глюки rxDBGrid
Добавлено: 02.09.2012 19:10:14
vicvala
alexs
скачал из svn RxLib, поставил на Lazarus 1.1 FPC 2.7.1 (38476) Win7 32bit, footer не работает (не суммирует) в части fvtSum, а вот fvtCount - работает! Шрифт в footer то белый, то чёрный, понять не могу от чего зависит?! У кого-нибудь footer в части fvtSum работает?
Re: Глюки rxDBGrid
Добавлено: 02.09.2012 23:05:45
alexs
у меня работает без замечаний
Re: Глюки rxDBGrid
Добавлено: 04.09.2012 21:36:44
vicvala
alexs посмотрите
>>> на досуге! Count работает, Sum нет. Раньше работало. Если одна таблица, то суммирует нормально, если связь мастер-детали нет.