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

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

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

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

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

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

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

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

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

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

圆明园一共遭到几次破坏(揭秘:圆明园被烧得片甲不留么)

圆明园一共遭到几次破坏(揭秘:圆明园被烧得片甲不留么)

圆明园的毁灭经过了一个较长的过程,一共有三次大的破坏浪潮,总结起来就是“火劫、木劫和石劫”。 第一次称为火劫。 1860年10月,英法联军闯入圆明园。英法联军疯狂抢掠之后,英军为抗议清政府虐待外交使节,又纵火焚烧圆明园,大火持续了三天三夜。 事后据清室官员查奏,偌大的圆明三园内仅有二三十座殿宇亭阁...

蚪怎么组词(正观漫读|新解、趣解、歪解)

蚪怎么组词(正观漫读|新解、趣解、歪解)

▲点击收听音频 字典、词典、辞典……每个学生时代过来的人,都有过一两本类似的工具书,或新或旧,或厚如方砖或袖珍似糕。 不过,你肯定没有看过什么“口语词典”,而且是少儿版的。书名的原创是本人,而内容的版权,应该归属于那些散落在千家万户的孩子。某日,观阅我的朋友圈、微信群时,突发奇想,应该新编一本少...

写作业的时候应该怎么样(孩子写作业时)

写作业的时候应该怎么样(孩子写作业时)

玩是孩子的天性,玩得投入,忘记写作业是常有的事情。这个时候家长处理方法不对,反而会加重孩子闹情绪。那么,孩子写作业的时候,家长要怎么做呢? 孩子做作业时,你在干什么? 错误做法:一边看电视一边监督孩子, 嘴里不停叨叨:“写快点。”“别磨蹭。”“不准看电视,好好学习。” 结果:孩子不高兴:“凭啥你就能...

此物最相思的上一句(每日一诗|王维《相思》)

此物最相思的上一句(每日一诗|王维《相思》)

相思 【唐】王维 红豆生南国,春来发几枝。 愿君多采撷,此物最相思。 红豆成为相思豆,源于一个传说。 相传,汉代闽越国,有位男子被强行出征,妻子终日盼夫归家。边疆战事结束后,同去者已归,唯其丈夫未返回家中。女子思夫心切,终日立于村前道口树下,朝盼暮望,痛哭流涕。没多久,她因相思成疾,泣血而亡。她的...