2017-06-13 123 views
0

只要存在值,SSRS矩阵表就是生成动态字段的好方法。使用SSRS动态字段

但是,有没有办法“总是”显示这些动态字段,即使它们不存在一个值?报告字段位置因数据可用性而异,用户必须手动在Excel中添加缺失列。

动态字段从3到最多30(至少现在基于值运行)。手动添加这些值会使报告难以维护。

回答

3

我为此处理的方式是在SQL中。我建立了一个我将永远想要的所有值的表格,我将该表格交叉连接到我的最终输出表格,并在需要存在的地方更新/插入值。这样我保证了行,并且最终保留矩阵中的列,即使它们最终为空。

这有道理吗?

+1

'LEFT JOIN'很适合这个。如果您想避免记录不符合预定义组合的情况,您还可以对结果使用“UNION”不同的值。 – StevenWhite

+0

这是有道理的。非常理想的方案。我宁愿在SQL中维护它,而不是在SSRS中。 – NonProgrammer

1

杰西的解决方案是一个很好的,但如果出于某种原因,你不能或不想通过在细胞迫使空值与这样的表达来改变你可以做到这一点在SSRS的SQL:

=iif(IsNothing(Fields!.xxx.Value)," ",Fields!.xxx.Value)