SSRS中基于同一数据集分组的两个Tablix分页面展示实现方法
嘿,这个需求在SSRS里其实挺常见的,我给你几个靠谱的实现方案,你可以根据自己的数据集情况来选:
方法一:利用分组+分页符(最推荐,适合已有分组的数据集)
如果你的数据集已经按Loan/Saving完成分组,用这个方法最省心:
- 先在报表里新增一个父分组,分组依据就是区分贷款/储蓄的字段(比如叫
RecordType,值是Loan或Saving)。 - 把两个不同格式的Tablix分别放到这个父分组的组头区域里,然后给每个Tablix加筛选器:Loan的Tablix只保留
RecordType = 'Loan'的数据,Saving的Tablix只保留RecordType = 'Saving'的数据。 - 关键操作来了:右键点击父分组的组节点(在报表左侧的「分组」面板里),选择「分组属性」,切换到「分页」标签页,勾选「在组的实例之间分页」,还可以顺便勾选「在组的开头分页」,确保第一个类别也从新页面起头。
- 预览报表就能看到,贷款和储蓄的报表各自占单独一页啦。
方法二:直接给Tablix添加分页符(适合独立数据集)
如果你的贷款和储蓄数据是两个独立的数据集,或者不想用分组,直接给Tablix加分页符更简单:
- 把两个Tablix按顺序放到报表设计界面上(上下排列)。
- 右键点击第一个Tablix(比如贷款的那个),选择「Tablix属性」,切换到「分页」标签页,勾选「在之后添加分页符」。
- 这样预览时,贷款报表在第一页,储蓄报表会自动跳到第二页。要是想让储蓄报表也强制从新页开始,也可以给它勾选「在之前添加分页符」,不过一般第一个加「之后」就足够了。
方法三:子报表方案(适合格式差异极大的复杂场景)
如果贷款和储蓄的报表格式完全不一样,甚至已经是单独设计好的报表,用子报表更灵活:
- 先分别把贷款报表、储蓄报表设计完成,保存成独立的rdl文件。
- 在主报表里添加两个「子报表」控件,分别关联刚才的两个子报表,同时配置好数据源和参数(如果需要传递参数的话)。
- 给第一个子报表设置分页符:右键点子报表→「子报表属性」→「分页」→勾选「在之后添加分页符」,这样两个子报表就会各自占一页。
最后给你个小技巧:如果想让每个页面的标题对应贷款/储蓄类别,可以在父分组的组头里加个文本框,绑定类别字段,这样每个页面的标题会自动匹配对应的内容哦~
内容的提问来源于stack exchange,提问作者sabet bin mukter
相关产品推荐
相关产品推荐

