1. 问题描述

这样一种报表:报表形式非常简单,只是简单的单数据源明细报表,但是数据量非常大,百万、千万甚至更多。报表取数及计算时间相当长。

希望能够提高报表展示速度,对于用户来说,查询报表不会有滞后的感觉。

解决方案提供工具:报表开发工具FineReport。

2. 解决方案

2.1 解决方案

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

2.2 原理

普通报表:取出全部数据后再执行报表,最后返回整体的报表结果给浏览器,用户访问到看到结果的时间=报表取数时间+报表执行时间;

行引擎报表:边取数边执行报表,执行到哪页用户就可以看到哪页,用户访问到看到结果的时间=首页数据读取时间+首页计算时间。

2.3 注意事项

行引擎报表注重的是性能,由原理我们可以想象,对于行引擎报表,每页的计算必须是独立的,即报表不能有单元格关联的复杂运算,类似,为了提高行引擎报表的性能,FR舍弃了一些复杂的功能:

行引擎报表只适用于单数据源、即单元格过滤不能使用,且必须是简单明细表,同时也不支持计算、条件属性等复杂报表功能。

3. 实现步骤

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

3.1 新建数据集

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

3.2 模板主体设计

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

3.3 行式引擎设置

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

3.4 效果查看

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

行式引擎按页取数只适用于Oracle,mysql,hsql和sqlserver2008及以上数据库,其他数据库,如access,sqlserver2005等必须手动编写分页sql,才能实现按页取数,对于需要编写分页sql的数据库,请参考单数据源实现层式报表章节。

行式引擎只适用于单数据源报表,对于多数据集报表,行式引擎无法实现对其进行分页显示,多数据源的层式报表的实现请查看多数据集实现层式报表。

转载于:https://www.cnblogs.com/laoA188/p/4812845.html

报表性能优化方案之行引擎执行层式报表相关推荐

  1. 报表性能优化方案之多数据集实现层式报表

    1. 问题描述 若报表使用的数据量是上百万条的话,觉得报表展现的速度慢,可以使用层式报表来提高报表展现速度.但由层式报表章节可以得知,层式报表必须是单数据集,若是多数据集的模板且数据量又很大,想要提高 ...

  2. 报表性能优化方案之单数据集分页SQL实现层式报表

    1.概述 我们知道,行式引擎按页取数只适用于Oracle,mysql,hsql和sqlserver2008及以上数据库,其他数据库,如access,sqlserver2005,sqlite等必须编写分 ...

  3. oracle做分页式报表,报表性能优化方案之单数据集分页SQL实现层式报表

    1.概述 我们知道,行式引擎按页取数只适用于Oracle,mysql,hsql和sqlserver2008及以上数据库,其他数据库,如access,sqlserver2005,sqlite等必须编写分 ...

  4. 报表性能优化方案之善用参数注入

    1. 问题描述 对于多数据集关联报表,当数据很大时报表的展现速度就会很慢,或通过写sql语句又很复杂.为此FineReport提供一种,既可加快报表的展现速度,又不用编写复杂的sql语句的方案.即使用 ...

  5. 报表性能优化方案之报表服务器优化基础讲解

    内存 JVM堆栈内存是决定应用服务器性能的关键指标,一般服务器默认的内存配置都比较小,在较大型的应用项目中,这点内存是不够的,因此需要进行查看与修改Web服务器内存大小,接下来就介绍服务器内存查看的方 ...

  6. 报表性能优化方案之多种报表服务器内存修改方法

    服务器内存修改 各应用服务器的内存配置方法不尽相同,如下列出了常用服务器的JVM参数(-Xms,-Xmx)配置方法. JVM参数定义: - Xms: 初始化内存大小 - Xmx: 可以使用的最大内存 ...

  7. react性能优化方案_React灵敏且性能卓越的Spray + Akka解决方案,以“在Java和Node.js中发挥并发性和性能”...

    react性能优化方案 在我以前的文章中,我研究了一个虚拟的交易引擎,并将基于Java的阻止解决方案与基于Node.js的非阻止解决方案进行了比较. 在文章的结尾,我写道: 我怀疑随着Node.js的 ...

  8. 分布式专题-数据库分库分表之Mycat01-数据库性能优化方案

    目录导航 前言 为什么要分库分表 数据库性能瓶颈主要原因 数据性能优化方案 SQL 与索引 表与存储引擎 架构 配置 操作系统与硬件 架构演进与分库分表 单应用单数据库 多应用单数据库 多应用独立数据 ...

  9. Mysql性能优化方案

    2019独角兽企业重金招聘Python工程师标准>>> 内容简介:这是一篇关于mysql 性能优化的文章.网上有不少mysql 性能优化方案,不过,mysql的优化同sql serv ...

  10. mysql 性能优化方案

    网 上有不少mysql 性能优化方案,不过,mysql的优化同sql server相比,更为麻烦与复杂,同样的设置,在不同的环境下 ,由于内存,访问量,读写频率,数据差异等等情况,可能会出现不同的结果 ...

最新文章

  1. Retrofit 找不到 GsonConverterFactory
  2. 报班学python到底怎么样-你们都是怎么学 Python 的?
  3. java学习笔记9--内部类总结
  4. mysql lisensce_Linux之lldptool命令
  5. 深入理解java枚举_深入学习java枚举的应用
  6. 了解电商优惠券的一生,看完这篇就足够了!
  7. webRTC实战总结
  8. arcgis for javascript ArcGISDynamicMapServiceLayer 过滤图层点
  9. [JSOI2008]Blue Mary的战役地图
  10. 全面拥抱云原生应用研发的拐点已经到来
  11. 图片居中裁剪_魔镜,魔镜,谁最美丽!利用PS图层混合模式打造图片幻觉效果
  12. c语言数据域和指针域,C语言的变量域和指针
  13. Abaqus单元选择
  14. Microsoft Navision 4.0帮助您消除日常工作流程中的烦恼的7条途径
  15. stm32 薄膜键盘原理_stm32F4----薄膜4*4矩阵键盘读取(七)
  16. 一位 Google 大佬的辞职感言..
  17. Cutter - Cut Crop Video for Mac(视频剪辑格式转换工具)
  18. 软件设计师必考精华 - 面相对象
  19. android酒店点餐系统设计,基于安卓Android酒店点餐系统APP的设计与实现(MySQL)(含录像)...
  20. 南非最大城市约翰内斯堡被黑客团伙勒索

热门文章

  1. BZOJ1827[USACO 2010 Mar Gold 1.Great Cow Gathering]——树形DP
  2. PyQt4 UI设计和调用 使用eric6
  3. [spoj694spoj705]New Distinct Substrings(后缀数组)
  4. SVN日常提交工作时需要注意的事项
  5. C# decimal保留指定的小数位数,不四舍五入
  6. WPF 弹框 并自动关闭
  7. Good, then we can start
  8. ADO.Net(一)——增、删、改、查
  9. [转载]Ubuntu 14.04设置固定ip
  10. 代码调试之-单步调试问题