如何设置parameter选中全部值时,各检验报告可独立运行
多检验类型批量生成独立报告实现方案
问题根因
你遇到的仅展示单类检验内容的异常,并非多值参数过滤逻辑失效,而是单表格未做按检验类型的分组渲染:单表格默认只会读取数据集第一行的检验类型值绑定表头,也不会自动拆分展示多组检验数据。
具体实现步骤
- 修正多值参数过滤配置
如果是SQL层面过滤,语句要使用IN操作符适配多值参数:
如果是在数据集属性中配置过滤,操作符必须选择In,值设置为SELECT * FROM 检验结果表 WHERE 检验类型 IN (@检验类型参数)=Parameters!检验类型参数.Value,不要误写为仅取第一个选中值的=Parameters!检验类型参数.Value(0)。 - 新增列表控件实现按检验类型拆分报告
替换原有单表格的布局,改用列表控件作为容器:- 拖入列表控件并绑定到你的检验数据集
- 右键列表对应的行组,打开行组属性,分组依据选择「检验类型」字段,勾选组间分页即可实现每类检验单独生成一页独立报告
- 将原有表头、检验结果表格整体移入列表控件内部,表头引用的检验类型字段会自动绑定当前分组的对应值,不会再出现仅显示单一类型的问题
- 可选优化配置
若需要导出Excel时每类检验生成独立Sheet,可在行组属性的「分页」选项中,将分页名称设置为=Fields!检验类型.Value,导出时会自动按检验类型命名Sheet。
若不需要分页、要在同一页面依次展示所有选中检验类型的报告,只需去掉行组的组间分页勾选即可。
内容的提问来源于stack exchange,提问作者David Lopez
相关产品推荐
相关产品推荐

