Combine multiple reports into one

2017-08-20

This article aims to establish a strategy to combine two or more reports into one by using the code of your application. This can be useful when you want to combine similar reports according to their category.

To append a report to the previous one use the method Prepare of the Report object. It is necessary to provide value TRUE as a parameter of the method.

Let us consider an example.

Create an application WindowsForms. Add a reference to FastReport.dll library to the project.

Then, add three buttons on the form: Report 1, Report 2, Combined report. Next, double click on the first button.

Now we are using the library FastReport:

1
using FastReport;

 Set the report's path:

1
string report_path = @"K:\MyDocuments\";

 Now add the code to the first button:

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();
 }

 Here, we have created a report instance, downloaded the report, prepared it and showed. The report template looks like this:

Now double click on the second button:

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();
 }

 The procedure here is the same as with the first button. A report template is also similar:

Add the code to the third button:     

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();
 }

As you can see, we have created a report object - report1. Then, we loaded the first report and prepared it. After that, we have loaded the second report and prepared it as well. In the last line of the code we have displayed the report object. Bring the line report1.Prepare(true) to notice. As a function parameter we provide the value TRUE. This means that the current report is joined to the previous one. Using this example you can consistently join any number of reports to each other.

Let us start our application:

 

If we click the Report 1 button, we get our first report:

 

 Click the second button to see the second report:

 

And finally, click the third button:

In this case, we get a report of two pages. The first one displays the first report, the second one shows the second report.

As can be seen from the above, the process of combining two reports into a single report does not present any difficulties and troubles.

.NET FastReport
April 21, 2026

Using Watermarks in FastReport VCL

The article provides a detailed overview of the watermark functionality in FastReport VCL — covering both the visual interface and programmatic methods using Delphi code and report scripts.
April 08, 2026

New Banding Capabilities in the FastReport .NET Designer

In version 2026.2 of FastReport .NET now allows you to change the order of bands directly in the designer — with a simple drag-and-drop operation.
April 07, 2026

How To Connect a Plugin to Google Sheets in FastReport .NET

In this article, we'll look at how to get started with Google Sheets in FastReport .NET. You will learn how to set up API access via the Google Cloud Console, build and connect the plugin.

© 1998-2026 Fast Reports Inc.