我在ssrs中有一个表格,如下所示。按系统将其分组,并按如下所示分类。我需要在每次分组后计算差异,如下所示 计算的差异=初始-过滤-最终=0。如何从表格中获取这些值,并在每次分组后显示出来,如下所示
Source 100
Initial 100
Filtered 10
Final 90
计算差异=初始-过滤-最终= 0
Source 200
Initial 200
Filtered 30
Final 170
计算差异=初始-过滤-最终= 0
答案 0 :(得分:0)
假设数据集列称为myCaption(对于描述部分)和myValue(对于数字部分),则可以编写如下表达式。
=SUM( Fields!myValue.Value *
SWITCH(Fields!myCaption.Value = "Initial", 1,
Fields!myCaption.Value = "Filtered" OR Fields!myCaption.Value = "Final", -1,
True,0
)
)
这只是获取详细信息行myValue
并将其乘以以下任意一个:
1
(如果标题是“ Initial”); -1
(如果标题是“已过滤”或“最终”);或0
(如果还有其他内容)。然后,它只是对结果求和。
答案 1 :(得分:0)
只需在表中添加另一行(在最终位置之后),然后将以下表达式添加到文本框中即可。这里重要的是将范围添加到计算中,因此系统知道您要访问分组级别的值:
=(Fields!Initial.Value, "SystemGroupingName") - (Fields!Filtered.Value, "SystemGroupingName") - (Fields!Final.Value, "SystemGroupingName")
=(100 ) - (10 ) - (90 )
如果字段值不是数字,则需要在每个字段周围放置CDbl()
。