我会尽量通过过度简化报告结构来尽可能地解释这个问题.报告一包含1个名为ResourceCenter的组,然后包含一行总计.总计实际上是一个组,但分组是在SQL中完成的,并在详细信息组中显示.报告看起来像这样:
Report 1
ResourceCenter 1
Total1 11
Total2 4
Total3 8
ResourceCenter2
Total1 12
Total2 11
Total3 6
Run Code Online (Sandbox Code Playgroud)
从这份报告中,我需要深入研究另一个包含多个多值参数的报告.对于钻取,我可以为除EmployeeNumber之外的所有内容使用单个值.为此,我需要能够将EmployeeNumbers列表传递给报表2中的多值参数.当前,任何DataSet或参数中的EmployeeNumbers都不存在,但它们基于ResourceCenter.因此,如果用户运行了报告1并单击了ResourceCenter 1,我需要能够以报告2正确处理它的方式将与ResourceCenter 1关联的EmployeeNumbers列表传递给报告2中的多值参数.
注意:我应该补充一点,我创建了两个接受ResourceCenter输入的SQL函数,然后返回一个员工列表.一个是表值函数,它返回一列EmployeeNumbers.另一个是标量值函数,它将EmployeeNumbers作为逗号分隔值返回.然后我有一些自定义代码在后台运行SQL函数并返回列表.我没有取得任何成功返回SSRS可以使用的数据集,但我已经能够使标量值函数"工作",因为我可以在虚拟报告上创建一个字段并查看输出.不过,我没有幸运获得报告2来接受以逗号分隔的列表.