SSRS按组显示总计

时间:2017-07-27 07:59:40

标签: reporting-services

我正在尝试显示分组在一起的记录的总数。 我使用的是Report Properties -> Code

下的代码
Dim public totalBalance as Integer 
Dim public Cnt as Integer 
Public Function AddTotal(ByVal balance AS Integer ) AS Integer 
                totalBalance = totalBalance + balance 
Cnt=Cnt+1 
                return balance 

End Function 

Public Function GetTotal() 
                return totalBalance
End Function


[Expression A is =Code.AddTotal(sum(DateDiff(dateinterval.Second, Lookup(Fields!dg_InteractionId.Value, Fields!Id.Value, Fields!StartDate.Value, "DataSet1"), Lookup(Fields!dg_InteractionId.Value, Fields!Id.Value, Fields!EndDate.Value, "DataSet1")))/CountRows())

While Expression B is =Code.GetTotal() 

如您所见,顶部组的总数1651是正确的,但第二组2597的总数不正确,因为它包括第一组的总数。对于第二组总数,所需的正确结果是946。

请告知。

screenshot of table rows

screenshot of table numbers

1 个答案:

答案 0 :(得分:0)

您可以更改GetTotal()以在调用时重置totalBalance变量以显示组总数

Public Function GetTotal() 
Dim bal AS integer
   bal = totalBalance
   totalBalance = 0
   return bal
End Function

由于此更改,您还应为总计创建一个单独的变量,该变量将在AddTotal()函数中更新,并创建一个将返回其值的GetGrandTotal()函数。

此外,由于您已将变量声明为公开,因此您可以直接显示它们而无需=Code.totalBalance

等功能