SSRS动态量表

时间:2017-04-28 05:36:36

标签: reporting-services ssrs-2008 ssrs-2008-r2

我有一份报告,其中包含许多以网格排列的仪表。每个计量引用的数据行根据用于运行报告的参数而不同。为此,我单独编码每个仪表以引用数据集中的特定行号。例如,仪表位于"位置" 1,1(第一行,第一列)引用了" RowNumber" 1并使用查找功能查找驱动仪表所需的相应数据。仪表位于"位置" 1,2引用了" RowNumber" 2等等。

我的问题:有没有办法避免硬编码这些引用?例如,这是位置1,1:

中仪表的标签表达式
=LOOKUP(1,fields!RowNumber.Value,fields!TestCase.Value,"main")

正如您所看到的," 1"是硬编码的。我希望学习一种表达方式更像的方法:

=LOOKUP([gaugeReference!SomeAttribute],fields!RowNumber.Value,fields!TestCase.Value,"main")

...因此,在仪表可重复使用中使用所有表达式,不再需要硬编码。我最初希望我可以命名仪表" 1"," 2",#34; 3"等,然后在表达式中引用该名称,这意味着我只需要更改名称,然后其他所有内容都会自动调整。

1 个答案:

答案 0 :(得分:1)

如果它只是您需要的行号(假设列将始终根据其位置引用相同的数据)那么可能更容易创建包含每行记录的数据集,例如

SELECT 1 as RowNum UNION SELECT 2 UNION SELECT 3 UNION SELECT 4... UNION SELECT 10等。

然后,您可以根据此数据集和参考

创建一个包含单行的Tablix

Fields!RownNum.Value