如何在SSRS Report中实现每页2横3纵徽章布局并解决记录重复问题
问题原因
你遇到的同记录重复渲染问题核心为两处配置错误:
- 列表控件未正确绑定行级上下文,未开启多列渲染模式时,每个布局单元会默认遍历全量数据集
- 未设置每页固定条数的分组规则,分页逻辑无法正确触发
解决方法
步骤1:开启列表多列渲染配置
- 选中已创建的列表框,右键选择Tablix属性
- 切换到「列」选项卡,按需求配置:
- 列数:
2 - 列间距:按徽章边距需求设置,推荐值为
0.2cm - 列方向:选择「水平」(该配置为核心,开启后会优先横向填充,再纵向换行)
- 列数:
- 切换到「常规」选项卡,确认「数据集名称」已绑定到你的目标数据集,不要选择其他数据集
步骤2:配置每页6条记录的分组分页规则
- 右键点击行组面板中的「详细信息」组,选择「组属性」
- 切换到「分页符」选项卡,勾选「在组的各实例之间」,同时勾选「每页显示的组实例数」,输入值为
6 - 切换到「常规」选项卡,添加组表达式:
=Ceiling(RowNumber(Nothing)/6),确认后保存 - 选中列表详细信息行内的所有文本框,确认字段绑定表达式为
=Fields!对应字段名.Value,不要额外加First/Last等聚合函数,避免所有行都取同一条记录
步骤3:调整布局尺寸适配整页
- 打开「报表属性」,确认页面大小与边距,按以下公式计算单个徽章尺寸:
- 单个徽章高度 = (页面可用高度 - 2倍行间距) / 3
- 单个徽章宽度 = (页面可用宽度 - 列间距) / 2
- 将列表内的单个徽章单元格调整到计算后的尺寸,避免超出页面导致布局错位
配置完成后点击预览,即可实现每页2列3行、共6个徽章的布局,无重复记录,翻页后自动加载下一批数据。
内容的提问来源于stack exchange,提问作者Jayson Larner
相关产品推荐
相关产品推荐

