列分组中的 SSRS 部门问题
SSRS Division issue in column grouping
问题:使用向下钻取时无法在 "sub-matrix" 上准确划分,适用于总计但不适用于详细级别。
报告:
Visual Studio 报告设计:
现在我在“总计百分比”部分中使用的当前 SSRS 表达式是:
=Code.SafeDivide(字段!Orders.Value , Sum(字段!Orders.Value))
嵌入式代码是来自此 post 的推荐:
Public Function SafeDivide(ByVal Numerator As Decimal, ByVal Denominator As Decimal) As Decimal
If Denominator = 0 Then
Return 0
End If
Return (Numerator / Denominator)
End Function
数据结果如下:
现在,如果您查看第一张图片并计算突出显示值的除法,我预计结果是 72% 而不是 6%。
有什么想法吗?也许我已经尝试了一些东西,但似乎我在追我的尾巴,虽然这会很简单。
看来您需要传入总和而不是单个订单金额,然后告诉现有的求和函数对整个组求和,例如我想你的表情大概应该是这样的:
=Code.SafeDivide(Sum(Fields!Orders.Value), Sum(Fields!Orders.Value, 'Overall Group Name'))
问题:使用向下钻取时无法在 "sub-matrix" 上准确划分,适用于总计但不适用于详细级别。
报告:
Visual Studio 报告设计:
现在我在“总计百分比”部分中使用的当前 SSRS 表达式是:
=Code.SafeDivide(字段!Orders.Value , Sum(字段!Orders.Value))
嵌入式代码是来自此 post 的推荐:
Public Function SafeDivide(ByVal Numerator As Decimal, ByVal Denominator As Decimal) As Decimal
If Denominator = 0 Then
Return 0
End If
Return (Numerator / Denominator)
End Function
数据结果如下:
现在,如果您查看第一张图片并计算突出显示值的除法,我预计结果是 72% 而不是 6%。
有什么想法吗?也许我已经尝试了一些东西,但似乎我在追我的尾巴,虽然这会很简单。
看来您需要传入总和而不是单个订单金额,然后告诉现有的求和函数对整个组求和,例如我想你的表情大概应该是这样的:
=Code.SafeDivide(Sum(Fields!Orders.Value), Sum(Fields!Orders.Value, 'Overall Group Name'))