FineReport填报分页设置
1. 问题描述
进行FineReport数据填报时,如果数据量过大,由于前端浏览器的性能限制,如果将数据全部展现出来,速度会非常的慢,影响用户体验,这时候大家就会想,填报是否能像分页预览一样进行分页呢,实现只加载当前页,从而提高性能,下面我们就来介绍填报分页的制作与浏览过程,在op=write下,使用__cutpage__=v参数(即在url后增加&__cutpage__=v)来启用填报横向不分页纵向分页。
2. 示例
下面我们以1000行数据为例,每页显示200行,分5页显示。
2.1 数据准备
新建数据集ds1:SELECT top 1000 * FROM 订单明细。
ds2:SELECT * FROM 产品。
2.2 模板设计
如下图所示,在模板主体中拖曳数据列至C2~O2单元格,并设置标题:
2.3 过滤
数据列来源于2个数据集,需要在单元格中设置过滤条件,双击E2单元格,选择过滤,条件设置为产品id等于单元格D2,如下图:
注:数据列中来自于ds1的数据列的父格需设置为C2,来自于ds2的数据列的父格需设置为E2。
2.4 分页设置
形如分页预览中的每页显示固定行数,填报分页也如此设置,如下图,在C2单元格中添加一个条件属性:
2.5 重复标题行、冻结行列设置
由于上面的报表主体中包含的数据列比较多,并且数据量也比较大,则在web端查看报表时,需要设置重复标题行,并且冻结行列,使查看报表时,仍然能知道该行数据的意义。
重复标题行
选中标题行,右键,选择设置重复标题行。
冻结行列
点击菜单栏的模板>重复与冻结设置,在填报冻结栏里面讲第一行以及第三列冻结起来,如下图:
2.6 报表样式设计
给FineReport报表设置样式,如下图:
2.7 效果查看
点击填报预览,在URL后面添加参数__cutpage__=v,即可启用填报分页,查看效果:
在线查看模板效果请点击Cutpage.cpt
注:填报分页状态下,翻页前,如果修改了当前页的数据,需先保存该页面内容,即传输到服务器端进行保存,那么下次再查看该页内容时,页面显示内容即为编辑后的内容,在保存的过程中,不允许编辑,保存不是提交,报表会自动保存。
另:__cutpage__参数前后都有2个下划线。
FineReport填报分页设置的更多相关文章
- Web报表工具FineReport填报界面键盘操作
对于一张填报数据较多的报表,需要用户频繁地操作鼠标.而FineReport填报界面除去按钮类型的控件,其余可以完全使用键盘而不需要用鼠标操作,对于用户而言,这将极大的节省信息录入的时间. 这里我们对填 ...
- yii2 关联查询,分页设置
1.MODEL 如关联user table public function getUser(){ return$this->hasOne(User::className(),['i ...
- Django之admin管理数据库,cookie验证及分页设置
一.admin管理数据库 1)models.py创建class类表 class Book(models.Model): name=models.CharField(max_length=) price ...
- Django中的session和cookie及分页设置
cookie Cookie的由来 大家都知道HTTP协议是无状态的. 无状态的意思是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接影响,也不 ...
- 使用abcpdf分页设置的问题
如果需要在分页时不对模块进行截断,请为相应模块添加打印样式“page-break-inside: avoid” 如果需要在指定位置进行强制分页,请添加:“<div style="pag ...
- MyBatis limit分页设置
错误的写法: <select id="queryMyApplicationRecord" parameterType="MyApplicationRequest&q ...
- Django分页设置
1. """ 分页组件使用示例: obj = Pagination(request.GET.get('page',1),len(USER_LIST),request.pa ...
- django中的分页设置
1.在控制台中的展示 from django.core.paginator import Paginator iter = 'abcdefghijklmn' inator = Paginator(it ...
- RDLC打印或导出Word的 分页设置 页边距和页面大小
RDLC 导出Word的时候发现,Word的尺寸和页边距有问题,查了MSDN看到这样一段话 Page Sizing When the report is rendered, the Word page ...
随机推荐
- NetBeans+Xdebug调试php代码
本文目录 : Xdebug的工作原理 Xdebug扩展的配置 NetBeans的配置 调试实例 本文小结 参考文档 Xdebug:是PHP的调试器和分析器(Debugger and Profiler ...
- 不知道Linux的mysql的root密码
用了好几次了这个方法.记一下: 1.停止Mysql /etc/init.d/mysql stop 或者(根据安装配置的位置不同,而不同) /etc/init.d/mysqld stop 2.进入Mys ...
- 关机和重启Linux命令
常用命令: shoutdown -h 10 十分钟后关机 shoutdown -r 10 十分钟重启 shoutdow -h now 立刻关机 shoutdow -r now 立刻重启 不安全的 ...
- C/C++遍历目录下的所有文件(Windows篇,超详细)
注: 1. 本文讨论的是怎么用Windows API遍历目录下的所有文件.除Windows API,还有一种Windows/Linux通用的方式,使用<io.h>. 2. 本文部分翻译自M ...
- 让Chrome看不了WWDC直播的HLS技术详解
Requirements: Live streaming uses Apple's HTTP Live Streaming (HLS) technology. HLS requires an iPho ...
- android设计,图标等概述
作者:郦橙 锦妖 链接:https://www.zhihu.com/question/36813390/answer/87029428 著作权归作者所有,转载请联系作者获得授权. 简单复制,用于记录, ...
- python3实现TCP协议的简单服务器和客户端
利用python3来实现TCP协议,和UDP类似.UDP应用于及时通信,而TCP协议用来传送文件.命令等操作,因为这些数据不允许丢失,否则会造成文件错误或命令混乱.下面代码就是模拟客户端通过命令行操作 ...
- js中替换字符串(replace方法最简单的应用)
replace方法的语法是:stringObj.replace(rgExp, replaceText) 其中stringObj是字符串(string),reExp可以是正则表达式对象(RegExp)也 ...
- Laravel踩坑笔记——illuminate/html被抛弃
起因 在使用如下代码的时候发生报错 {!! Form::open() !!} 错误信息 [Symfony\Component\Debug\Exception\FatalErrorException] ...
- mac+phpstorm增加xdebug调试
一.版本信息 mac 10.10.5 phpstorm 10.0.3 xdebug 版本需要与phpstorm匹配,匹配地址 点我匹配 点我查看所有版本 提示:不确定xdebug版本的,把php ...