当前位置:首页 > 问答百科 > 正文内容

fastreport使用教程(如何利用fastreport创建一个复杂表头报表)

福瑞号2023-05-17 16:30:49问答百科149

FastReport可以用于创建主从报表,需建立主表和明细表数据集,并通过配置窗口将它们连接。通过连接band和数据源,并将数据列置于band上,即可创建带嵌套数据的报表。最后运行报表即可。



FastReport Online Designer使用教程:创建报表

1..动态布局

在创建报表时可能经常会遇到不知道具体文本大小的情况。例如,产品的描述。这种情况下,可通过以下方法来解决:

计算对象的高度使其可以包住整个文本;计算band的高度,使其可以包住文本数量可变的对象;移除或修改包含在同一band中其它对象的高度,而不影响报表的整体设计。

该解决方法通过以下属性完成:

"CanGrow"和"CanShrink"属性自动计算对象的高度;"ShiftMode"属性移除位于扩展对象下面的对象;"GrowToBottom"属性将对象调整到band的底部边缘;"Anchor"和"Dock"属性根据band的大小控制其对象的大小。

下面将逐个介绍每个属性。

1.1.CanGrow和CanShrink属性

所有的band和报表对象都具有该属性。这两个属性在不知道文本大小的情况下设计文本时是非常有用的,若禁用该属性,对象将永远保持在设计器中指定的大小,当启用该属性后,根据实际的文本内容自动调整对象的大小。效果如下图所示:

fastreport使用教程(如何利用fastreport创建一个复杂表头报表)-图1

能影响band高度的对象有以下几个:

"Text";"RichText";"Picture"("AutoSize"属性已启用);"Table".

1.2.ShiftMode属性

每一个报表对象都具有这个属性。此属性仅可在“Properties”窗口访问。当“ShiftMode”属性被启用,该对象将上可以下移动。

fastreport使用教程(如何利用fastreport创建一个复杂表头报表)-图2

"ShiftMode"属性值有以下几种:

Always(默认)NeverWhenOverlapped

这个属性在打印具有文本信息的表时非常方便。

1.3.GrowToBottom属性

每一个报表对象都具有该属性。当打印启用此属性的对象时,它将会延伸到band的底边缘,如下图所示:fastreport使用教程(如何利用fastreport创建一个复杂表头报表)-图3

这在打印在表格形式的信息时是非常有必要的,可以将所有对象的高度设置到band的最大高度。

1.4.Anchor属性

每一个报表对象都具该属性。通过使用锚,对象根据其容器进行同步扩展或移动。在“Table”和“Matrix”对象中很常用。“Anchor”属性值有以下几种,并且它们可以任意组合:

该属性的默认值是Left,Top-当容器的大小被改变而对象将不会随之改变。

1.5.Dock属性

每个报表对象都具有该属性。此属性确定容器中的对象将扩充在哪一边。

“Dock”属性有以下几种值:

fastreport使用教程(如何利用fastreport创建一个复杂表头报表)-图4

扩充行为取决于对象的创建顺序,可在对象的上下文菜单中选择"Bringtofront"或"Sendtoback"修改其顺序。

2.Formatting格式

修改数据外观和格式的工具。

2.1.边框和填充

FastReport的大多数对象都可以有框架和填充。

fastreport使用教程(如何利用fastreport创建一个复杂表头报表)-图5

你可以使用"Home"选项卡中的"Borders"工具栏来给组件添加边框,每个边框的颜色、宽度和样式都可在属性窗口单独设置。

2.2.文本格式

位于"Home"选项卡中的"Font"和"Alignment"工具栏:

fastreport使用教程(如何利用fastreport创建一个复杂表头报表)-图6

在这里你可以:选择和自定义字体,垂直或水平更改组件中文本的位置(左,右,中),设置文本颜色。

2.3.数据格式

文本组件显示存储在数据源中的数据格式,但它并不总是很方便,例如包含时间的日期,若只需显示日期部分还得重新读取数据的格式。在FastReportOnlineDesigner中可以通过使用系统函数String.Format来完成。

Today,[String.Format("{0:d}",[Date])]

2.4.隐藏数值

"Text"对象具有"HideZeros"属性。

Totalelements:[CountOfElements]

如果CountOfElements变量的值为0,HideZeros属性则设置为true,该对象将打印结果如下:

Totalelements:

"Text"对象的"HideValue"属性也可用于隐藏给定表达式的值,如:

Totalelements:[CountOfElements]

若CountOfElements为空,且NullValue属性设置为--,那么该对象的打印结果将如下:

Totalelements:--

"Text"对象具有控制重复值打印的"Duplicates"属性。该属性用在"Data"band中的"Text"对象。

"Duplicates"属性有以下几种值:

Show-显示重复值(默认)Hide-隐藏重复值对象Clear-显示对象,但清除其文本Merge-使用相同的值合并多个对象

这些模式之间的差别如下图所示:

fastreport使用教程(如何利用fastreport创建一个复杂表头报表)-图7

3.子报表

通常在开发复杂的报表时结构变得非常混乱,为防止进一步的开发。在这种情况下,可以适当的使用"Subreport"组件。通过将"Subreport"组件拖入"data"band,从而得到一个新的报表,在这里我们可以专心开发报告的其中一部分而不必受主报表结构的影响。"Subreport"组件如下:

带有子报表的报表创建方法如下:

先打印主报表band,直到"Subreport"组件出现打印子报表band继续打印主报表

为了回馈新老客户,FastReportOnlineDesigner现在6.5折抄底促销!现在购买只需:¥1940

如有任何疑问请咨询"在线客服"。

本站文章除注明转载外,均为本站原创或翻译

扫描二维码推送至手机访问。

版权声明:本文由福瑞号发布,如需转载请注明出处。

本文链接:http://furui.com.cn/176186.html

“fastreport使用教程(如何利用fastreport创建一个复杂表头报表)” 的相关文章

小卡是什么(小卡是什么意思饭圈)

小卡是什么(小卡是什么意思饭圈)

小卡指专辑里随机赠送印有明星照片的小卡片。 小卡是明星周边的一种,用于粉丝们的收藏,于大部分人来讲,小卡只是一张普通的卡,没有什么用。但是对于追星女孩,尤其是喜欢收藏偶像小卡的粉丝来说,小小的一张卡片上印着自己喜欢偶像的照片,那么小卡在她们眼里千金不换。 如果是购买专辑里面赠送小卡或者周边小卡当...

furthermore用法(连接副词moreover/furthermore/besides/in)

furthermore用法(连接副词moreover/furthermore/besides/in)

表示“此外,而且”的连接副词。 moreover/ furthermore/ besides/ additionally/ in addition/ also/as well 1-moreover (formal) 1. 前边可用句号,也可用分号 2. 可以和and连用,标...

糖醋鲤鱼是哪个地方的菜(每天1道鲁菜|济南传统名菜——糖醋鲤鱼)

糖醋鲤鱼是哪个地方的菜(每天1道鲁菜|济南传统名菜——糖醋鲤鱼)

鲁菜,是中国传统几大菜系中的自发型菜系 ,起源可以追溯至春秋战国时期。鲁菜不仅历史悠久,其制作技法也最为丰富,而且鲁菜的制作颇为考验厨艺功力,是黄河流域烹饪文化的代表。 今天我们就来学习一下鲁菜中的糖醋鲤鱼。 糖醋鲤鱼是山东济南的传统名菜。济南北临黄河,黄河鲤鱼不仅肥嫩鲜美,而且金鳞赤尾,形态可爱...

吴亦凡为什么叫丙丙(青春有你中我们万众期待的秦牛正威反杀剧本凉凉了)

吴亦凡为什么叫丙丙(青春有你中我们万众期待的秦牛正威反杀剧本凉凉了)

一看到目前最火的综艺是什么,那肯定马上想到青春有你啊,青春有你最火最有话题度的是谁,肯定是虞书欣,孔雪儿和秦牛正威啊,之前已经聊过孔雪儿了,那小编今天就聊聊秦牛正威吧,为什么不是虞书欣,因为虞书欣身家清白除了性格作精之外并无桃花债啊,而秦牛正威的桃花真的是太出名了。 说到秦牛正威,那出场人物必须有...

什么是丁克族(我国首批“丁克族”步入晚年)

什么是丁克族(我国首批“丁克族”步入晚年)

"丁克是我的生活方式,我很满意自己的生活……";"我不想再以丁克的方式生活下去了"……对于丁克族,每个人都有不同的看法。而人们是否选择丁克生活的原因,也正随着社会环境的改变而改变。 随着社会生活环境的改变,婚姻和生育已经从部分人的人生必选项中消失,而这对于他们的影响也并不是必然的好或者坏。有人对于丁...