fastreport Скрыть элементы в DataBand в зависимости от данных - PullRequest
0 голосов
/ 03 декабря 2018

В отчете, созданном с помощью fastreport, мы хотим скрыть или показать объект изображения в полосе данных в зависимости от заданных данных (например, логическое свойство).

Я знаю, что могу установить Visibilty of Objectsс C # путем адресации объекта по имени, но внутри DataBand объект с именем находится там несколько раз.

1 Ответ

0 голосов
/ 03 декабря 2018

Если я правильно понимаю ваш вопрос, следующий подход может помочь.Я часто использую этот подход, когда хочу манипулировать объектами в базе данных и в зависимости от данных.Просто поместите свою логику в событие OnBeforePrint для данной группы в редакторе FastReport.Каждый объект (включая TfrxPictureView) имеет имя в редакторе FastReport, и вы можете получить к нему доступ по этому имени.

Следующий пример работает:

Pascal Script

procedure MasterData1OnBeforePrint(Sender: TfrxComponent);
begin
   Picture1.Visible := (<reportdataset."YourField"> = 'YourValue');                                                 
end;

C ++ Script

void MasterData1OnBeforePrint(TfrxComponent Sender)
{
   Picture1.Visible = (<reportdataset."YourField"> == "YourValue");                                                 
}
...