14

我在 SSRS 2008 中有一个 Tablix,我有一个有时有数据有时没有数据的列。如果没有行有数据,我想隐藏该列。

所以这将隐藏第 2 列:

Column 1     Column 2     Column 3     Column 4
1                            3            4
2                            3            4

这不会隐藏第 2 列:

Column 1     Column 2     Column 3     Column 4
1                            3            4
2               2            3            4

有没有办法在 SSRS 2008 中做到这一点?

谢谢!

4

6 回答 6

10

非常老的帖子,但我在使用 SSAS 多维数据集时找到了更好的解决方案。由于所有聚合都已在 SSAS 中进行,因此您可以简单地检查层次结构的父级别是否具有值。

这是相应地完成的:

=IsNothing(Fields!Field.Value)

SSRS 不需要求和或 if 语句。因为该函数的计算结果为trueor false,并且因为表达式正在评估是否隐藏列(即True隐藏它),这正是您在公式中所需要的。

于 2014-08-22T15:29:47.423 回答
9

如果您的字段包含值而不是数字,则以下内容应该可以隐藏列中每一行只有 NULL 值的列。

将此代码作为表达式放在要评估的每一列的列可见性对象中

=IIF(Count(Fields!<NAMEofCOLUMN>.Value) = Cint(0), True, False)
于 2013-09-11T21:00:09.487 回答
3

在设计上,

转到列,右键单击并选择“列可见性”

选择showhide基于表达式并给出表达式为:

=iif(Fields!column_name.Value=Nothing,True,False)
于 2016-01-06T11:37:20.063 回答
1

我怀疑你必须要有创造力。例如,运行查询以获取列的非空行数。然后将计数结果用作列的可见性属性表达式的一部分。即如果计数大于零...显示。

这可能会有所帮助

Reporting Services - 根据报表参数隐藏表格列

于 2012-05-11T20:24:00.383 回答
1

选择 Tablix 中的所有列并将可见性 - 隐藏属性设置为:

=IIF(Fields!ColumnSample.Value = Nothing, True, False)
于 2012-05-14T20:02:10.007 回答
0

您可以根据表达式探索 tablix 的列可见性属性:如果没有,则将条件评估为 Nothing。

按照链接:

SSRS 2008 列可见性表达式评估为真,列不可见

于 2012-05-14T12:31:51.750 回答