我需要在报表生成器上使用这个:
我的表中的详细信息行包含一个带有表达式的列:
=sum(Fields!one.Value) / sum(Fields!two.Value) 我想对该列求和,但得到的结果不是比率之和,而是总和之比。
例如:
sum(Fields!one.Value) sum(Fields!two.Value) ratio
3 6 0.5
3 6 0.5
6 12 0.5
最后一行是总数。
我希望右下角的值是其上方值的总和(即 1.0),而不是其左侧值的比率。我尝试将总和计算为:
sum( sum(Fields!one.Value) / sum(Fields!two.Value) ).我需要的答案是 1 (0.5 + 0.5)。但这给出了 0.5
大家有什么想法吗?
我复制并粘贴了同样的问题:Summing a columns in SSRS 因为我也有同样的情况,而他们的想法行不通
您可以使用自定义代码来计算比率总计
Add the following custom code to your report
Public Dim ratio_total
Public Function CalculateRatio ( ratio As Double) As Double
ratio_total = ratio_total + ratio
Return ratio
End Function
该函数获取当前比率值,更新总计并返回比率值
现在在您的详细信息中将比率表达式设置为 somethink
=Code.CalculateRatio(Sum(Fields!one.Value) / Sum(Fields!two.Value))
在您的比率总计上将表达式设置为
= Code.ratio_total
***** 更新 *****
您可以使用基于总数的表达式,如您提到的帖子的答案中所示。
=SUM(Sum(Fields!one.Value,"group1") / Sum(Fields!one.Value,"group1"))
您需要设置正确的范围才能使表达式发挥作用