在本文中,我将向你展示如何使用应用程序的代码,将两个或者更多的报表合并到一个报表中。当你想根据类别合并类似的报表时,这可能很有用。
要将报表附加到上一个,请使用报表对象的Prepare方法。必须提供TRUE值作为该方法的参数。我们看看下面这个例子。
创建一个WinForms应用程序。在项目中添加对FastReport.dll库的引用。
接下来,在表单中添加三个按钮:报表1、报表2、组合报表。然后双击第一个按钮。
现在我们使用FastReport库:
using FastReport;
设置报表路径:
string report_path = @"K:\MyDocuments\";
现在添加第一个按钮的代码:
private void button1_Click(object sender, EventArgs e) { Report report1 = new Report(); Report1.Load(report_path + "report1.frx"); Report1.Prepare(); Report1.ShowPrepared(); }
在这里,我们创建了一个报表对象的实例,加载报表,准备报表并显示。报表模板如下所示:
双击第二个按钮:
private void button2_Click(object sender, EventArgs e) { Report report2 = new Report(); Report2.Load(report_path+"report2.frx"); Report2.Prepare(); Report2.ShowPrepared(); }
接下来的流程和第一个按钮一样。报表模板也是类似的:
我们添加第三个按钮的代码:
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.我们得到第二个报表:
最后,我们按下第三个按钮:
在这种情况下,我们得到了一份有两页的报表。第一页显示第一个报表,第二显示第二个。就是这样,将两个报表合并为一个报表不会有任何困难,并且不会创建额外的报表对象。