Вывод заданного количества записей на странице отчета

18.08.2017

Функция ограничение количества выводимых строк часто вызывает затруднение у пользователей FastReport.Net, несмотря на то, что она является достаточно простой. В данной статье будет представлен вариант  вывода максимального количества записей на странице с помощью скрипта отчета. Необходимо отметить, что скрипт является достаточно простым в работе при наличии базовых знаний программирования.

Итак, для наглядности, рассмотрим демонстрационный отчет:

Список будет формироваться при помощи системной переменной [#Row].

В свойствах бэнда «Данные» устанавливаем значение «RowCount» в 25. Теперь данный список будет состоять из 25 строк.

Рассмотрим нижеприведенный отчет:

Поставленная задача - выводить по 5 строк на страницу.

Для бэнда «Данные» задаем событие «BeforePrint».

Теперь, перейдем к редактору скрипта отчета. 

Пишем следующий код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
public class ReportScript
 {
int counter = 0;
 
 private void Data1_BeforePrint(object sender, EventArgs e)
 {
 if (counter >= 5)
 {
Engine.StartNewPage();
 counter = 0;
}
counter++;
 }
 }

Обратите внимание, что переменная «counter» объявлена глобально. Как видно на примере перед каждым отображением данных проверяется счетчик «counter». По достижении 5 строк, создается новая страница отчета, а счетчик обнуляется. Таким образом, можно получить 5 страниц со списками из 5 строк.

Так как на странице будет список, состоящий всего из 5 строк, устанавливаем автоматическую высоту страницы отчета:

 

Свойство «UnlimitedHeight» позволит уменьшить высоту страницы в нашем случае.

Теперь запустим отчет:

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

.NET FastReport .NET FastReport
21 апреля 2025

Как работают RFID-метки в FastReport VCL

В этой статье мы рассмотрим принцип работы RFID-меток с новым объектом TfrxDeviceCommand в FastReport VCL с релизом 2025.2.
21 апреля 2025

Работа с компонентом TfrShellTreeView в FastReport VCL

В данной статье мы рассмотрим компонент TfrShellTreeView. Он предназначен для отображения элементов файловой системы и частично является аналогом компонентов TDirectoryListBox, TDirectoryOutline и TShellTreeView.
8 апреля 2025

Как настроить подключение к Apache Ignite в FastReport .NET

В этой статье мы рассмотрим, как настроить подключение к Apache Ignite в FastReport .NET. Вы узнаете, какие шаги необходимо выполнить для подключения плагина через код и дизайнер отчетов.