Объединение нескольких отчетов в один

20.08.2017

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

Для прикрепления отчета к предыдущему используется метод Prepare объекта Report. Ему необходимо передать значение true в качестве параметра.

Рассмотрим на примере.

Создадим приложение WindowsForms. Добавляем в проект ссылку на библиотеку FastReport.dll.

Добавляем на форму три кнопки: Report 1, Report 2, Combined report. Делаем двойной клик по первой кнопке.

Используем библиотеку FastReport:

1
using FastReport;

 Объявляем переменную для хранения пути к отчетам:

1
string report_path = @"K:\Мои документы\";

 А теперь добавляем код для первой кнопки:

1
2
3
4
5
6
7
 private void button1_Click(object sender, EventArgs e)
 {
 Report report1 = new Report();
 Report1.Load(report_path + "report1.frx");
 Report1.Prepare();
 Report1.ShowPrepared();
 }

 Здесь, мы создали экземпляр объекта отчета, загрузили отчет, подготовили его и отобразили. Шаблон для тестового отчета выглядит так:

Сделаем двойной клик на второй кнопке:

1
2
3
4
5
6
7
 private void button2_Click(object sender, EventArgs e)
 {
 Report report2 = new Report();
 Report2.Load(report_path+"report2.frx");
 Report2.Prepare();
 Report2.ShowPrepared();
 }

 Тут все то же самое, что и с первой кнопкой. Шаблон отчета аналогичный:

Добавляем код для третьей кнопки:

1
2
3
4
5
6
7
8
9
 private void button3_Click(object sender, EventArgs e)
 {
 Report report1 = new Report();
 report1.Load(report_path + "report1.frx");
 report1.Prepare();
 report1.Load(report_path + "report2.frx");
 report1.Prepare(true);
 report1.ShowPrepared();
 }

 Как видите, мы создали объект отчета report1. Затем, мы загрузили первый отчет и построили его. После – загрузили второй отчет и также построили его. В последней строке кода, мы отобразили объект отчета. Обратите внимание на строку report1.Prepare(true). В качестве параметра функции мы передаем значение true. Это значит, что текущий отчет будет присоединен к предыдущему. Причем, вы можете так последовательно соединить сколь угодно много отчетов.

 

А теперь запустим наше приложение:

 

Нажимаем кнопку Report 1. Получаем первый отчет:

 

 

Нажимаем кнопку Report 2. Получаем первый отчет:

 

И, наконец, нажимаем третью кнопку:

В этом случае, мы получили отчет с двумя страницами. Первая – первый отчет, вторая – второй.

Таким образом, объединить два отчета в один не представляет никаких сложностей и избавляет от создания дополнительного объекта отчета. 

.NET FastReport .NET FastReport
10 июля 2026

Как настроить Content Security Policy для отчетов FastReport .NET WEB

Узнайте, как настроить Content Security Policy для отчётов FastReport .NET WEB: обзор директив и значений CSP, изменения в архитектуре FastReport, типичные сценарии обхода и способы защиты.
22 июня 2026

Как настроить отчет с Business Objects из кода и дизайнера в FastReport .NET

В этой статье рассматривается реальный пример создания и использования шаблона отчета .frx для подключения к иерархическим бизнес-объектам в FastReport .NET.
21 апреля 2026

Использование водяных знаков в FastReport VCL

В статье подробно рассмотрели функционал добавления водяных знаков в FastReport VCL — как через визуальный интерфейс, так и программно, с помощью кода на Delphi и в скриптах отчётов.

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