SSRS - 在执行交替行颜色时忽略空值(在矩阵中)
SSRS - Ignore nulls when doing alternate row color (in matrix)
通常在矩阵列组之外,我会使用 =IIF(RowNumber(Nothing) Mod 2 = 0, "Transparent", "LightGrey") 来交替行颜色。
但是当使用矩阵列组时,相同的表达式会交替显示该组中的列而不是行,因此改用它
=IIF(Runningvalue(MAX(Fields!My_column.Value),CountDistinct,"my_column_group") mod 2,"Transparent", "LightGrey")
现在的问题是,当有 null 或空白值时,它会忽略它并且行颜色不会交替,如图所示
有没有办法在表达式中包含忽略 NULL 值的方法?
这有点乱,因为这意味着要添加一个新列然后设置宽度,这样您就看不到它了,但它确实有效。
- 在您的矩阵中,在您的行组中添加一个新列。
- 记下刚刚创建的文本框的名称或将其重命名为更好的名称(在我的例子中我称之为
bgCol
)
- 将此文本框的表达式设置为
=IIF(RowNumber(Nothing) Mod 2 = 0, Nothing, "LightGrey")
- 单击行 header 以选中整行并将背景颜色 属性 设置为
=ReportItems!bgCol.Value
(或任何新文本框的名称)
- 将列宽缩小到最小,这样您就看不到了。
通常在矩阵列组之外,我会使用 =IIF(RowNumber(Nothing) Mod 2 = 0, "Transparent", "LightGrey") 来交替行颜色。
但是当使用矩阵列组时,相同的表达式会交替显示该组中的列而不是行,因此改用它 =IIF(Runningvalue(MAX(Fields!My_column.Value),CountDistinct,"my_column_group") mod 2,"Transparent", "LightGrey")
现在的问题是,当有 null 或空白值时,它会忽略它并且行颜色不会交替,如图所示
有没有办法在表达式中包含忽略 NULL 值的方法?
这有点乱,因为这意味着要添加一个新列然后设置宽度,这样您就看不到它了,但它确实有效。
- 在您的矩阵中,在您的行组中添加一个新列。
- 记下刚刚创建的文本框的名称或将其重命名为更好的名称(在我的例子中我称之为
bgCol
) - 将此文本框的表达式设置为
=IIF(RowNumber(Nothing) Mod 2 = 0, Nothing, "LightGrey")
- 单击行 header 以选中整行并将背景颜色 属性 设置为
=ReportItems!bgCol.Value
(或任何新文本框的名称) - 将列宽缩小到最小,这样您就看不到了。