Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

FastReport Помогите. Выделение строк по условию


Gedimen ©   (2012-08-19 15:52:00) 

Доброго времени суток, мастера.
Нужна Ваша помощь.
(использую Delphi XE2, FastReport 4.12.6)

Нужно выделить строки в отчете желтым цветом (в зависимости от условия).
Есть поле date_end.
Нужно при формировании отчета проверять:
- если date_end< "текущая дата +20 дней", то выделяем желтым.
Но при реализации какая-то хрень получается.
Например у меня 7 строк в отчете:
1 - Не удовлетворяет условию;
2, 3 удовлетворяет;
4 - опять нет.
и т.д. Так он мне берет и выделяет, например, все кроме первой.
Пробовал по-разному: через OnAfterData, OnAfterPrint, OnBeforePrint.
Одна фигня. Такое чувство, что он только один раз проверяет условие.


//<myDate> передаю дату+20 из программы.
procedure Memo6OnAfterData(Sender: TfrxComponent);
   if (StrToDate(<frxDBDataset1."date_check">)< StrToDate(<myDate>)) then
       memo6.color:=cl Yellow;                                      
end;

Уже весь инет облазил, а так ничего толкового не нашел.
P.S. Условное выделение под мою задачу не подходит, т.к. буду выделять красным когда дата окончания будет меньше текущей.


Gedimen   (2012-08-19 20:50:00) [1]

Спасибо. Сам допер уже.


Inovet   (2012-08-19 17:41:00) [2]

procedure MasterData1OnBeforePrint(Sender: TfrxComponent)
begim
 if (<dMd."ID"> mod 2) = 1 memo6.Color := clYellow;                                
 else memo6.Color = clWhite;                                
end


Gedimen   (2012-08-19 15:54:00) [3]

В коде указал <date_check> (не ошибка). Просто другой кусок скопировал. Это поле тоже проверяю.


Наверх

Титульная страница Поиск, карта сайта Написать письмо