Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.08.20;
Скачать: CL | DM;

Вниз

Скрытие повторяющихся значений в Quick Report   Найти похожие ветки 

 
Дмитрий_Б ©   (2006-06-12 15:42) [0]

Здравствуйте. Есть отчет, упорядочен по первому столбцу, причем значения в нем повторяются. Чтобы исключить повторения значений в первом столбце, делаю так:

var OldValue : string;

procedure TfReport.DetailBand2AfterPrint(Sender: TQRCustomBand;
 BandPrinted: Boolean);
begin
  OldValue := DataSet.FieldByName("QAZ").AsString;
end;

procedure TfReport.QRDBText14Print(sender: TObject;
 var Value: String);
begin
  if Value = OldValue then
     QRDBText14.Font.Color := clWhite
  else
     QRDBText14.Font.Color := clBlack;
end;

procedure TfReport.FormCreate(Sender: TObject);
begin
  OldValue := "";
end;

В предварительном просмотре все выглядит так как должно быть, но:
Если групп больше одной то все ОК.
Если в первом столбце только одна группа значений, то в просмотре она есть, а при печати не выводится.

Если у кого то есть решение другим способом, поделитесь пож-та.


 
Johnmen ©   (2006-06-12 16:10) [1]

Достаточно одного обработчика BeforePrint у детального бенда.
В нём на основе анализа OldValue и DataSet.FieldByName("QAZ").AsString принимаем решение QRDBText14.Enable (или используем Visible).
И ещё важный момент - OldValue должна инициализироваться каждый раз перед генерацией отчёта, напр. в BeforePrint отчёта.


 
Дмитрий_Б ©   (2006-06-12 16:14) [2]

ОК, спасибо, сейчас попробую.



Страницы: 1 вся ветка

Текущий архив: 2006.08.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.036 c
4-1145936912
Бабайка
2006-04-25 07:48
2006.08.20
Защита программы: как запустить приложение из памяти?


4-1146143771
tytus
2006-04-27 17:16
2006.08.20
Какое сообщение указывает, что в ListBox-e появился скролбар?


4-1145961176
Creative
2006-04-25 14:32
2006.08.20
перерисовка окна


15-1153550962
DillerXX
2006-07-22 10:49
2006.08.20
Второй раз пытаюсь - опять никак :(


15-1153907501
Чапаев
2006-07-26 13:51
2006.08.20
Делфи2006, вопрос для телепатов