How to combine multiple reports into one

2020-07-13

Many report developers had situations when they needed to add a page that had already been implemented in another report. And you had to rework an existing report - add a new page, data sources. Not everyone knows that you can simply merge reports when they are displayed.

The user of Stimulsoft report generator also faced the problem of combining reports:

https://stackoverflow.com/questions/43569668/stimulsoft-view-multiple-reports-inside-stiviewer

I am using Stimulsoft libraries to create reports (StiReport control) and then showing it inside a StiViewer control. The problem is when i assign multiple reports to the viewer, it does not refresh or display the contents but it works just fine if i only set 1 report to the viewer.

User issue

Fortunately, the user has found a standard way to combine reports. FastReport.net users would probably be interested to know how to do this in their report generator.

Let's look at the code:

1
2
3
4
5
6
7
8
9
10
11
Report report = new Report();
 DataSet data = new DataSet();
 data.ReadXml("K:/My documents/nwind.xml");
 report.RegisterData(data);
 report.Load("K:/My documents/Master-Detail.frx");
 report.Prepare();
 report.Load("K:/My documents/Highlight.frx");
 report.Prepare(true);
 report.Load("K:/My documents/Barcode.frx");
 report.Prepare(true);
 report.ShowPrepared();

 As you can see, we sequentially load three different reports into the same report object.

At the same time, after each loading of the report, we need to build the report using the Prepare() method. But as you have noticed, for the second and third reports, we used this method with the Prepare(true) parameter. This parameter indicates that you should add pages to the existing ones, not clear them before adding them. Now, let's run the application and take a look at the report:

Combined reports

As we can see, all three reports are drawn up one after the other. Moreover, with this method of combining reports, page numbering is through. For example, the last report displays page number 4 at the bottom:

Numbering range works for combined reports

 

In this way, you can merge reports unnoticed by the user. Depending on the required content, you can create different assemblies from the reports. There is no need to create large and complex multi-page reports. You can instruct different people to create several simple reports and at the end, when displayed, you can combine them. Yes, in this case you will have several templates, but the prepared report file in fpx format will be one.

August 12, 2024

How to build and install the Postgres plugin in FastReport .NET

This article describes how to connect to the database using the FastReport .NET plugin for the report designer from Visual Studio via the NuGet server.
August 08, 2024

How to install FastReport .NET and its components on Windows

Step-by-step instructions for online and manual installation via the FastReport registration code.NET and its components in Windows.
July 26, 2024

Updating HTMLObject as a plugin for FastReport .NET

Detailed instructions for using the new HTMLObject plugin, which uses splitting DOM HTML into FastReport report objects.
Fast Reports
  • 800-985-8986 (English, US)
  • +4930568373928 (German)
  • +55 19 98147-8148 (Portuguese)
  • info@fast-report.com
  • 901 N Pitt Str #325 Alexandria VA 22314

© 1998-2024 Fast Reports Inc.