多语言展示
当前在线:785今日阅读:175今日分享:29

定制报表系统中如何启用行引擎执行层式报表

这样一种报表:报表形式非常简单,只是简单的单数据源明细报表,但是数据量非常大,百万、千万甚至更多。报表取数及计算时间相当长。希望能够提高报表展示速度,对于用户来说,查询报表不会有滞后的感觉,下面就通过定制报表系统FineReport来介绍一下如何启用行引擎执行层式报表。
工具/原料
1

定制报表系统FineReport7.1.1

2

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

方法/步骤
1

解决方案对于单数据源明细报表,可以启用行引擎来执行报表,提高报表展示速度,优化用户体验。

2

原理普通报表:取出全部数据后再执行报表,最后返回整体的报表结果给浏览器,用户访问到看到结果的时间=报表取数时间+报表执行时间;行引擎报表:边取数边执行报表,执行到哪页用户就可以看到哪页,用户访问到看到结果的时间=首页数据读取时间+首页计算时间。

3

注意事项行引擎报表注重的是性能,由原理我们可以想象,对于行引擎报表,每页的计算必须是独立的,即报表不能有单元格关联的复杂运算,类似,为了提高行引擎报表的性能,FR舍弃了一些复杂的功能:行引擎报表只适用于单数据源、即过滤不能使用,且必须是简单明细表,同时也不支持计算、条件属性等复杂报表功能。

4

实现步骤我们以mysql数据库为例,将里面的S订单明细的数据用行式引擎显示,每页显示30行,设置如下:

5

新建数据集数据集ds1:SELECT * FROM S订单明细。

6

模板主体设计如下图,将表中的列全部拖曳至模板主体中:

7

行式引擎设置选择模板>报表引擎属性,勾选用行式的引擎来执行报表,再勾选下面的使用按页运算分段执行报表,每页记录数使用默认值30,如下图:

8

效果查看点击分页预览,效果如下:

推荐信息