带组过滤器的 RDLC 矩阵总计

RDLC matrix totals with group filters

我有一个矩阵,结果如下:

有一个 TOP N 过滤器应用于列组。我想计算 Rest 列的正确值。目前我的代码 return 所有 Rest 都为 0,因为我正在计算 Total-Sum(Value, "RowGroupName") 并且它似乎确实考虑了过滤后的 colgr4colgr5。有什么建议吗?

您需要在表达式中使用自定义代码

在您的报告中添加以下自定义代码

Dim Total = 0

Function SetRestValue (Byval v AS Double) AS Double

Total = Total + v
Return v

End function

Function GetRestValue () AS Double
Dim temp AS Double

temp = Total
Total = 0
Return temp

End Function

代码使用了两个函数: SetRestValue 执行并计算可见(未过滤)单元格的总数

GetRestValue returns 可见单元格总计,以便从整行总计中扣除,并将总计设置为零。

现在在你的矩阵上:

将矩阵值设置为以下表达式 =Code.SetRestValue(Sum(Fields!value.Value))

将其余列表达式设置为= SUM(Fields!value.Value) - Code.GetRestValue()