历史版本15 :每页固定行数页内合计 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 描述编辑

有这样的一种报表,需要先按组分页,组内每页显示固定的行数,再分别进行页内合计、组内合计、总合计,分别如下效果:
页内合计:
222
组内合计:
222
总合计:
222
这样的报表直接通过普通的分页无法实现,FineReport报表中通过分页函数来实现这种特定的报表。

2. 解决方案编辑

方法一:在条件属性中设置行前分页。
方法二:在其他属性中设置行前分页。

3. 方法一编辑

3.1 打开报表
打开报表%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\Pagination\按组分页.cpt
修改报表样式如下:
3.2 分组设置
在A5单元格中,输入公式:=ds1.group(int(($$group_result_sequence-1)/5)),从上到下扩展,左父格设置为A4,B5父格设置为A5(即默认)。
说明:该公式整体的意思是在父格货主地区组内,将订单记录每5条归为一组,公式的值为小组号,从0开始。若希望每个地区下每n条订单记录归为一组,公式修改为=ds1.group(int(($$group_result_sequence-1)/n))即可。
3.3 汇总设置
1)页内合计
地区下每一小组订单记录就为一页,页内汇总即对每一小组进行汇总。
设置页合计A6单元格左父格为A5,在E6单元格中输入公式=sum(E5),便对每一小组进行合计了。
2)组内合计
对每个货主地区进行汇总,设置组合计A7单元格左父格为A4,在E7单元格中输入公式=sum(E5)即可。
3)总合计
所有数据都扩展完后进行总计,不需要设置父格,直接在E8单元格中输入公式=sum(E5)即可。
3.4 分页设置
此时预览模板,每一小组还是显示在一页上面,因此需要设置分页。
右击A5单元格选择条件属性,添加分页,选择行前分页,条件类型选择普通,操作符里面选择不等于0,即每个地区下从第二小组开始行前分页,如下图设置:
3.5 保存与预览
保存模板。分页预览,其效果如上。模板效果在线查看请点击分组分页合计.cpt
已完成模板可参考%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\Pagination\分组分页合计.cpt
3.6 页码设置
模板以货主地区来进行分页,每页5行,这时想要知道这是某个地区的第几页和这个地区共有几页,那么该怎么办呢?
在报表下方设置两个表示页码的公式,D10单元格为={A5}+1,表示某地区当前页数,E10单元格为="/" + count(A5),表示获取该地区的页码有几页,如下图所示:

D10、E11的单元格左父格均设置为A4。
注:由于重复结尾行的影响,设置页码后需将A8、E8单元格的父格设置为A11,第11行为空白编辑行。
保存后预览,即可看到当前地区的页码数:
222
注:也可以通过页码公式进行页码的显示,可参考根据分组设置页码
3.7 移动端预览效果

222

222

4. 方法二编辑

4.1 打开报表
打开报表%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Advanced\Pagination\重复标题行.cpt
4.2 报表样式设计
修改报表样式如下:

添加A6页合计,A7组合计,A8总合计。
4.3 页合计设置重复结尾行
选中第六行,鼠标选中左边的行序号,右击设置重复结尾行。
4.4 汇总设置
1)订单ID
A5单元格(订单ID)设置左父格为A4
2)页合计
设置页合计A6单元格左父格为默认,在D6单元格中输入公式=sum({D5}),便对每一页进行合计。
3)组内合计
对每个货主地区进行汇总,设置组合计A7单元格左父格为A4,在D7单元格中输入公式=sum(D5)
4)总合计
所有数据都扩展完后进行总计,不需要设置父格,直接在D8单元格中输入公式=sum(D5)
4.5 分页设置
设置A1单元格的左父格为货主地区所在单元格,即A4。
在每组开始前分页,右击A1单元格,选择其他,在分页下勾选行前分页,如下图:
4.6 保存与预览
保存模板,分页预览,预览效果如下:

222

注:该方法不能对每页显示的行数进行设置。

注:该方法页合计不支持条件属性。

4.7 移动端预览效果

222