列分组中的SSRS分区问题

时间:2018-11-04 21:28:58

标签: sql sql-server reporting-services ssrs-2012 business-intelligence

问题:使用向下钻取时,无法在“子矩阵”上进行精确划分,只能用于总计,但不能用于细节级别。

报告:

Report

Visual Studio设计报告: enter image description here

现在我在“总数的百分比”部分中使用的当前SSRS表达式是:

= Code.SafeDivide(Fields!Orders.Value,Sum(Fields!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

数据结果如下:

enter image description here

现在,如果您看第一张图片并计算突出显示值的分度,我希望结果是72%,而不是6%。

有什么想法吗?也许我已经尝试了一些方法,但是似乎正在追逐我的尾巴,尽管这很简单。

1 个答案:

答案 0 :(得分:1)

您似乎需要传递一个总和而不是单个订单金额,然后告诉您现有的sum函数将整个组进行求和,例如我认为您的表情可能应该是这样的:

=Code.SafeDivide(Sum(Fields!Orders.Value), Sum(Fields!Orders.Value, 'Overall Group Name'))