我有一份现有的SSRS报告,显示了报告顶部的一些总体计数。报告数据如下:
column1 column2
A1 true
- true
B5 false
A1 true
- false
C3 false
我需要的是column1中的项目的不同计数,但包括带有“ - ”的所有行。因此,此示例数据的结果应为5,将“A1”行计为1。问题在于,这需要在报表本身的表达式或某种方法中完成。我无法更改数据集查询。
我试过:= COUNTDISTINCT(Fields!column1.Value)但是将“ - ”行计为一行。
是否可以添加另一个数据集并为查询现有数据集的数据集开发查询?不确定是否可以这样做。
答案 0 :(得分:1)
这对我来说没问题:
=CountDistinct(IIf(Fields!column1.Value = "-", Nothing, Fields!column1.Value))
+ Sum(IIf(Fields!column1.Value = "-", 1, 0))
我为这两种情况使用了两个聚合IIf
表达式。
第一个是CountDistinct
针对所有非-
行,第二个是所有-
行的计数。
对于所有-
行并且没有-
行,似乎工作正常。
在评论后修改
如果您在Tablix之外使用此表达式,则可能需要指定聚合的范围:
=CountDistinct(IIf(Fields!column1.Value = "-", Nothing, Fields!column1.Value), "MyDataSet")
+ Sum(IIf(Fields!column1.Value = "-", 1, 0), "MyDataSet")