多语言展示
当前在线:732今日阅读:60今日分享:41

填报报表FineReport中如何进行行分栏

有时我们会遇到列数很少,但是扩展出很多行的报表,这种报表窄而长,预览或打印时会有很大的一片空白区域,不美观且浪费纸张。为了节省空间、增加美观性,填报报表FineReport报表可以通过分栏将报表进行行方向或者列方向的分栏显示。
工具/原料
1

填报报表FineReport7.1.1

2

大小:148.2M 适用平台:windows/linux

方法/步骤
1

数据准备新建一张模板,新建数据集ds1:SELECT * FROM [人员变动表]。

2

模板设计如下图,在报表主体上设计报表:其中B3单元格的父格为C3,公式seq作用是对员工进行排序

3

未分栏预览保存模板,预览模板,如下图,可以报表每页右侧都有很多的空白区域,浪费空间:

4

分栏设置如上图,报表右侧还有很多空白区域,那么就可以设置行分栏,将左侧超过固定行的数据挪到右侧。这里我们设置每一栏显示20行数据,不包括标题,以此类推。就可以在菜单栏中,选择模板>报表分栏,设置为行分栏,超过20行时进行分栏,参与分栏的数据从左上角的A3到右下角的E3,故在分栏数据中填写A3:E3,如下图:

5

超过X行分栏超过行分栏是指纵向扩展的数据超过固定行数就进行行分栏,其中超过行分栏的数字计算公式为:超过行分栏的数字=(分栏数据中结束分栏行序号-开始分栏行序号+1)*倍数,标题行不参数计算如上图,分栏区域中分栏数据位A3到E3,结束分栏行序号和开始分栏行序号均为3,示例要求每个栏位显示20行数据,每条数据只占一行,所以倍数为20,那么:超过行分栏的数字=(3-3+1)*20=20

6

分栏成X列分栏成x列与超过X行分栏效果一样,都是设置每一栏中数据显示多少行,超过x行分栏是固定每一栏位的行数,栏数不确定,分栏成x列是指所有的数据分成固定栏,每一栏中数据的行数根据数据总行数确定,如示例中,不包括标题,数据总共有407行,那么如果分栏成12列,那么每一栏的数据行数=407/12(如果不能整除,则向上取整)=35,如下图:

7

复制行序列复制行序列是指在分栏时将该行复制作为每个栏位的标题,因此其一般应用于单元格是标题的行,复制行序号的行不参与分栏。另:报表设计时,大标题必须要覆盖整个分栏区域,如示例中的“员工劳动关系详表”(大标题)所在的单元格所在区域必须包含到E1单元格,如果没有包含到E1单元格,那么大标题就不会跟随扩展显示在所有数据中间,而是显示在第一栏数据的中间,如下图:

8

分栏时的特别要求纵向扩展时,由于栏数不定,设置上面的分栏后,一页可能会显示出多栏,甚至最右边的栏会显示不全,而我们往往希望每页能够固定显示两栏。此时我们需要保证,设计报表时,左侧设计报表所占的总列宽,需要跟右侧所在报表范围内的空白大小基本相同,就可显示2栏了,如果模板样式不好调,可以调整页面大小。如果需要显示3栏,则要保证报表范围内(分页线之间)能够分成3份等宽。

9

保存与预览保存模板,点击分页预览,效果即如下

推荐信息