SSRS 动态仪表

SSRS Dynamic Gauges

我有一份报告,其中包含以网格形式排列的许多仪表。根据用于 运行 报告的参数,每个仪表引用的数据行是不同的。为实现这一点,我对每个仪表分别进行编码,以引用数据集中的特定行号。例如,"position" 1,1(第一行,第一列)中的仪表引用了 "RowNumber" 1 并使用查找函数查找驱动仪表所需的相应数据。 "position" 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”、“3”等,然后在表达式中引用该名称,这意味着我只需要更改 name 然后其他一切都会自动调整。

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

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

然后您可以基于此数据集和引用创建一个包含单行的 tablix

Fields!RownNum.Value