报表生成器FastReport .Net用户指南:报告继承

我们经常会有许多数据相同的报告,例如,带有公司徽标和一些数据(电子邮件、地址等)的页眉/页脚。现在设想一下,您需要更改一些公司数据,例如电子邮件。您必须在每个报告中都这样做!为了避免这种情况,您可以使用报告继承。什么是报告继承?

举例来说,每个报告中都有一些常用元素(徽标、公司名称、电子邮件等)。这些元素通常放在报告标题和/或页眉上。您可以创建一个只包含常用元素的基本报告。所有其他报告都将使用基础报告,因此将包含这些常用元素和报告中定义的自有元素。

如果需要更改某些内容(徽标、电子邮件),只需打开基本报告并进行必要的更改即可。所有其他从基本报告继承的报告都将自动更改。事实上,当你打开一个继承的报告时,首先打开的是基础报告,然后才是继承的报告。

FastReport .Net是一款全功能的Windows Forms、ASP.NET和MVC报表分析解决方案,使用FastReport .NET可以创建独立于应用程序的.NET报表,同时FastReport .Net支持中文、英语等14种语言,可以让你的产品保证真正的国际性。

FastReport.NET官方版下载(qun:585577353)icon-default.png?t=N7T8https://www.evget.com/product/1861/download

创建报告

要使用继承功能,您需要执行以下操作:

  • 创建基本报告并将其保存到文件中;
  • 创建一个继承自基本报告的新报告。

要创建继承报告,请选择 "File|New..."菜单项,然后在窗口中选择 "Inherited report "项:

fastreport

系统会要求您选择一个基础报告文件。此时必须创建该文件。之后,基础报告将加载到设计器中。您可以随意更改。您会看到基础报告中的对象都标有 "lock "标志:

fastreport

您不能删除这些对象、重命名或移动到另一个频段。

您可以添加新对象或带,更改对象的外观、大小和位置。完成后,保存报告。

更改基本报告

让我们看看如果更改基本报告会发生什么。我们可以:

  • 从基础报告中删除对象。该对象也将从继承报告中删除;
  • 将对象添加到基本报告中。该对象将自动出现在继承报告中;
  • 更改对象的大小、位置、文本和外观。如果继承报告中没有更改对象,所有更改都将反映在继承报告中。

最后一点需要解释一下。让我们看两个使用继承的例子。在第一个示例中,我们将这样做:

  • 创建一个包含 Text1 对象的基本报表;
  • 创建一个继承的报表并保存,不做任何更改;
  • 打开基本报表,移动 Text1 对象;
  • 打开继承报表,我们会看到 Text1 对象也被移动了。

在第二个示例中,我们将执行以下操作:

  • 创建一个包含 Text1 对象的基本报告;
  • 创建一个继承报告;
  • 在继承报告中,将 Text1 对象移动到新位置并保存报告;
  • 打开基本报告,将 Text1 对象移动到不同的位置;
  • 打开继承的报表,我们会发现 Text1 对象没有移动。

出现这种情况的原因是我们在继承报告中更改了对象。这一更改已保存在继承报告文件中。现在,如果我们在基本报告中更改了原始对象,那么在继承报告中将会忽略该更改。在这种情况下,新对象的位置将被忽略。所有其他更改(例如文本颜色)仍将反映在继承报告中。

如果我们查看一下继承报告文件的内容,就会清楚这种行为。例如,在未更改原始对象的情况下,原始对象是这样保存在继承报告中的:

<inherited Name="Text1"/>

如果我们更改了对象在继承报告中的位置,就会像这样保存:

<inherited Name="Text1" Left="255.15" Top="28.35"/>

打开继承报告时,FastReport 将加载基础报告中定义的所有对象属性,以及继承报告中保存的属性。

局限性

设计报表继承的目的如下:将页眉和页脚等常用报表元素保存在单独的文件中,并在继承的报表中重复使用。不要尝试使用继承来执行更复杂的任务。尤其要避免以下操作:

  • 不要从被继承的报表中继承报表(即不要继承两次);
  • 不要在基本报表中使用表格和矩阵等复杂对象;
  • 不要在基本报告中使用脚本
  • 不要在基本报告中使用参数。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值