自定义翻页,解决大数据内存溢出问题
本帖最后由 muyuxi 于 2014-7-30 15:39 编辑
作为一个刚刚接触FR不到3个月的菜鸟,在第一次接受公司安排任务的时候,就要求需要对一张近千万数据的表进行一些简单的数据查询,按照简单的报表查询后,预览,内置jetty服务器直接内存溢出。然后开始了漫漫的寻找解决之路。
---------------------------------------------------
以上作为废话,下面开始进入正题:
1.首先参考帮助文档中 多数据集实现层式报表(http://www.finereporthelp.com/help/1/7/9.html)可以实现不带条件的分页查询,然后基本上解决了内存溢出的问题。
2.查询参数的处理。
多数报表会有一个或者多个查询条件,上面的帮助文档中没有带查询参数,如何处理呢?好吧 偷偷的告诉你们,直接用jquery取值。
文本框jquery的取值js:$("input").val(); (控件名称一定要全部大写)
下拉框和日期选择框取值js: $("div div >input").val(); (控件名称一定要全部大写)
取值之后,在js中按照get或者post,将参数传递进去,然后就可以完美实现了。
3.导出excel功能
通过上面的两步操作后,用FR自带的导出功能只能导出页面上查询出来的这一页数据,我的解决方案是,自定义导出按钮(http://www.finereporthelp.com/help/4/1/0/4.html)+行引擎执行层式报表来解决。
最后上传一个自己做的一个简单demo14120
14120
(ps:由于楼主对access极其不了解,然后再查询过程中可能会有bug,请各位看官见谅,同时欢迎指正,补充)