润乾报表分页计算标签tobig使用
来源:互联网 发布:知乎取消关注话题 编辑:程序博客网 时间:2024/05/15 13:41
海量数据的清单式列表在读取、展现及导出过程中可能会出现速度过慢、内存溢出、系统死机等问题,润乾提供了分页计算的方式发布报表。我们更多熟悉的应该是使用extHtml标签发布报表,实现分页计算的功能,随着客户需求不断变化,extHtml在有些方面已经显得力不从心,所以今天这里将介绍润乾报表提供的另外一个分页计算标签:autoBig。
autoBig与传统的extHtml标签的区别主要在于如下几个属性:
dbType="oracle" //新增,数据库类型,取值可参考下表,未知写unknown
dsName="ds1" //新增,要分页的数据集名称,如果是报表中的第一个数据集,可不指定
totalCountExp="" //总条数表达式,可不写,默认用数据集的SQL
pageCount="10" //每一页的记录数
cachePageNum="5" //缓存页数
……除startRowParamName和endRowParamName该标签中没有外,其余与extHtml相同
注意:由于autoBig中不再使用startRowParamName 和endRowParamName,所以在报表中也不必再增加起始行参数名startRow和结束行参数名endRow。
autoBig比起extHtml的有点在于使得totalCountExp不再必需,可以自由使用数据集记录数,这将极大地减少用户在页面计算总记录条数的工作量。
首先做一张普通的网格式清单报表,如下
在发布报表的jsp中增加如下代码片段:
<report:autoBig
name="report1"
reportFileName="<%=report%>"
dbType="unknown"
dsName="ds1"
totalCountExp=""
pageCount="10"
cachePageNum="5"
/>
配置reportConfig.xml文件中alwaysReloadDefine为no,启用缓存。此项设置的目的是使得设置的缓存页数cachePageNum生效。
访问该页面,显示如下
点击下一页,从第一页翻到第六页,并观察后台打印信息:
[2011-04-25 10:13:22] runqianReportLogger : [DEBUG] - 现在计算报表autoBig.raq
[Server@1478a43]: [Thread[HSQLDB Server @1478a43,5,main]]: handleConnection(Socket[addr=/127.0.0.1,port=52685,localport=9001]) entered
[Server@1478a43]: [Thread[HSQLDB Server @1478a43,5,main]]: handleConnection() exited
[Server@1478a43]: [Thread[HSQLDB Connection @1f2e95f,5,HSQLDB Connections @1478a43]]: 5:trying to connect user SA
[Server@1478a43]: 5:SQLCLI:SQLPREPARE select count(*) from ( SELECT * FROM 订单 )
[Server@1478a43]: 5:SQLCLI:SQLEXECUTE:6
[Server@1478a43]: 5:SQLCLI:SQLFREESTMT:6
[2011-04-25 10:13:22] runqianReportLogger : [DEBUG] - 开始生成HTML......
[2011-04-25 10:13:22] runqianReportLogger : [DEBUG] - 生成HTML结束......
[2011-04-25 10:13:22] runqianReportLogger : [DEBUG] - 报表组生成开始。。。。。
[2011-04-25 10:13:22] runqianReportLogger : [DEBUG] - 报表组生成结束。。。。。。
[2011-04-25 10:13:56] runqianReportLogger : [DEBUG] - 现在计算报表autoBig.raq
[2011-04-25 10:13:56] runqianReportLogger : [DEBUG] - 开始生成HTML......
[2011-04-25 10:13:56] runqianReportLogger : [DEBUG] - 生成HTML结束......
[2011-04-25 10:13:59] runqianReportLogger : [DEBUG] - 现在计算报表autoBig.raq
[2011-04-25 10:13:59] runqianReportLogger : [DEBUG] - 开始生成HTML......
[2011-04-25 10:13:59] runqianReportLogger : [DEBUG] - 生成HTML结束......
[2011-04-25 10:14:02] runqianReportLogger : [DEBUG] - 现在计算报表autoBig.raq
[2011-04-25 10:14:02] runqianReportLogger : [DEBUG] - 开始生成HTML......
[2011-04-25 10:14:02] runqianReportLogger : [DEBUG] - 生成HTML结束......
[2011-04-25 10:14:05] runqianReportLogger : [DEBUG] - 现在计算报表autoBig.raq
[2011-04-25 10:14:05] runqianReportLogger : [DEBUG] - 开始生成HTML......
[2011-04-25 10:14:05] runqianReportLogger : [DEBUG] - 生成HTML结束......
[2011-04-25 10:14:08] runqianReportLogger : [DEBUG] - 现在计算报表autoBig.raq
[2011-04-25 10:14:08] runqianReportLogger : [INFO ] - 开始运算报表,首先取数......
[Server@1478a43]: [Thread[HSQLDB Server @1478a43,5,main]]: handleConnection(Socket[addr=/127.0.0.1,port=52724,localport=9001]) entered
[Server@1478a43]: [Thread[HSQLDB Server @1478a43,5,main]]: handleConnection() exited
[Server@1478a43]: [Thread[HSQLDB Connection @7b4ed7,5,HSQLDB Connections @1478a43]]: 6:trying to connect user SA
[Server@1478a43]: [Thread[HSQLDB Connection @1f2e95f,5,HSQLDB Connections @1478a43]]: 5:disconnected SA
[Server@1478a43]: 6:SQLCLI:SQLPREPARE SELECT * FROM 订单
[Server@1478a43]: 6:SQLCLI:SQLEXECUTE:7
[2011-04-25 10:14:08] runqianReportLogger : [DEBUG] - 下面开始打出sql
[2011-04-25 10:14:08] runqianReportLogger : [DEBUG] - ds1=SELECT * FROM 订单
[Server@1478a43]: 6:SQLCLI:SQLFREESTMT:7
[2011-04-25 10:14:08] runqianReportLogger : [INFO ] - 取数结束,开始运算
[2011-04-25 10:14:08] runqianReportLogger : [INFO ] - 计算结束:
[2011-04-25 10:14:08] runqianReportLogger : [DEBUG] - 开始生成HTML......
[2011-04-25 10:14:08] runqianReportLogger : [DEBUG] - 生成HTML结束......
观察中我们可以看到,当从第一页翻到第五页时,后台并没有打印取数sql,是因为从缓存取数的原因;当翻到第六页时,看到完整的取数sql,说明我们设置的缓存页数5(cachePageNum=”5”)生效。
- 润乾报表分页计算标签tobig使用
- 润乾报表性能管理之分页计算标签
- 润乾报表分页标签:显示第几页和共几页
- 润乾报表v4-填报分页自动计算页数
- 润乾报表分页
- 润乾报表分页
- 润乾报表分页
- 润乾报表autobig分页
- 润乾报表分页标签中totalCountExp的几种用法
- 润乾报表JSF FORM 标签中使用填报表解决方案
- 润乾报表报表按内容类别分页展现问题
- 润乾报表-数据类型、分页、统计图函数
- 润乾报表教程-集算报表优化计算过程
- 使用自定义标签分页
- 分页标签的使用
- 润乾报表 如何屏蔽自动计算
- 润乾报表V4复杂市场份额计算以及$运算符的使用
- 自动实现分页---分页标签"pg"使用
- 不能直接复制文件夹Eclipse到项目下噢噢噢噢
- office2010激活
- iOS中防止数组越界
- mysql 5.7 zip 文件在 windows下的安装教程详解
- 515. Find Largest Value in Each Tree Row
- 润乾报表分页计算标签tobig使用
- poj 2185 kmp
- zabbix添加任务计划和sshd文件修改key
- 起点
- 低秩矩阵的应用--背景建模
- jvm垃圾收集小记
- 自定义View Draw过程- 最易懂的自定义View原理系列(4)
- GDB 调试命令
- Linux内核管理原理