按组分页
教学视频
目标
按组进行分页,就是将数据根据其分组来进行分页,每个分组都位于一页,效果如下图所示:
在上面的例子当中,员工表信息根据学历进行分组展示,为了看的更清晰,我们将学历信息放在第一行,下面放置当前有当前学历的所有用户信息,在设置了分组分页后,每个分组都单独成为一页。
这种效果实现起来比较容易,首先是制作一张由学历进行分组的报表,然后设置好学历所在单元格的行前分页属性即可。
实现
1.制作分组报表
创建一个包含employee表数据的数据集,报表中保留两列,两行。第一行两个单元格合并,将employee数据集的degree字段放在A1单元格中;第二行A2单元格绑定employee_id字段,B2单元格绑定employee_name字段;并设置A2单元格的左父格为A1,效果如下图所示:
保存预览报表,可以看到如下效果:
将A2单元格的左父格设置为A1,那就意味着A2单元格将跟随A1单元格一起向下迭代,同时A2单元格的数据将受A1单元格条件限制。
2.设置分页
因为我们希望实现的效果是每个分组都能独立成一页,页每一页都是从A1单元格开始,所以设置分页要放在A1单元格上。选中A1单元格,在右侧的属性面板中切换到其它属性页签,勾选其中的当前单元格所在行行前分页,如下图所示:
保存预览就可以看到我们想要实现的效果。
勾选单元格的当前单元格所在行行前分页属性后,在生成报表进行分页时一旦遇到这个单元格所在行,同时当前行之前又存在其它行,那么引擎就会将当前行放在下一页进行展示。
在勾选此属性的情况下如果当前单元格位于第一行,因为引擎在根据此属性进行分页时会判断当前行之前是否有其它行存在,所以最终结果的第一行不会被处理,引擎只会根据后续生成的行进行分页。