Как сделать повторяющийся бэнд

13.10.2019

Иногда требуется в отчете выводить одну и ту же информацию несколько раз. Это может потребоваться в отчетах, которые будут распечатываться, например, счета, визитки, объявления, приглашения и прочие.

Раньше это была не тривиальная задача. Приходилось использовать скрипт отчета, чтобы «размножить» бэнд. Например, так:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public class ReportScript
 {
 int i = 0;
 int count = 3;
 private void PageHeader1_AfterPrint(object sender, EventArgs e)
 {
 for (int i = 0; i < count - 1 ; i++)
 Engine.ShowBand(Data1);
 }
 private void Data1_BeforePrint(object sender, EventArgs e)
 {
 if (i == count)
 Data1.Visible = false;
 }
 }

Здесь нам пришлось задействовать два обработчика событий. Сначала, после показа заголовочного бэнда, то есть перед показом бэнда Данные, сгенерировать нужное количество бэндов данные. Затем – перед отображением бэнда Данные, проверить достигнуто ли нужное количество бэндов.

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

Отныне, с версии 19.3.4, есть «штатное» решение этого вопроса – свойство RepeatBandNTimes для бэнда. Вы просто выставляете желаемое количество выводимых экземпляров бэнда.

В итоге мы получим такой же результат, как и со скриптом:

Приятно, что генератор отчетов становится все удобнее и удобнее и не нагружает разработчика отчетов лишней работой.

.NET FastReport .NET FastReport
26 октября 2026

TfrImageComboBox: выпадающий список с изображениями и текстовыми подписями в FastReport VCL

TfrImageComboBox из FastEditors VCL: выпадающий список с иконками и подписями для FastReport VCL. Свойства, события и примеры использования в Delphi.
26 октября 2026

Прогресс-бар в Delphi: компоненты TfrProgressBar и TfrxProgressBar из FastReport VCL

Разбираем компоненты TfrProgressBar и TfrxProgressBar из FastReport VCL: настройка шкалы прогресса, пороги и маркеры, привязка к данным и пример на Delphi.
23 октября 2026

FastGrid изнутри: объект View, колонки и события компонента сетки Delphi

Внутреннее устройство FastGrid: объект View, свойство Appearance, колонки, события и режимы работы с данными DB и Unbound в Delphi. Разбор на примере демо-проекта GridDemo.dpr.

Не является публичной офертой
© 1998-2026 ООО «Быстрые отчеты»