如何在SSRS报告中实现动态数据集

时间:2016-09-01 08:37:45

标签: ssrs-2012 ssrs-tablix

我有以下场景:一个.rdl文件,存储过程作为数据源。此存储过程接受两个参数:@ProcedureName nvarchar(max)@Parameters xml。存储过程的功能是使用给定的XML参数调用另一个存储过程(很可能在不同的数据库上)。因此,实质上,每个执行的存储过程将返回它自己的数据集。

如何在不指定列的情况下创建使用数据集的Tablix /矩阵,因为列需要在运行时生成?

1 个答案:

答案 0 :(得分:0)

不幸的是,SSRS没有“AutoGenerateColumns”式功能,并且在设计时解决了许多问题。所以简短的回答是你不能。

设计器在保存时检查字段引用,并且不会通过引用不在数据集的字段列表中的字段进行保存。如果生成报告定义后字段不再存在,则它将在报告中显示为静态空白值。表达式也会这样做,即使该字段处于未评估的部分。因此,如果删除字段B,则此表达式仍会受到影响:

=IIF(1=1,Fields!A.Value,Fields!B.Value)

这意味着您不能使用条件分组表达式作为变通方法,即使您有可能返回的列的详尽列表。