我正在尝试显示分组在一起的记录的总数。
我使用的是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。
请告知。
答案 0 :(得分:0)
您可以更改GetTotal()以在调用时重置totalBalance变量以显示组总数
Public Function GetTotal()
Dim bal AS integer
bal = totalBalance
totalBalance = 0
return bal
End Function
由于此更改,您还应为总计创建一个单独的变量,该变量将在AddTotal()
函数中更新,并创建一个将返回其值的GetGrandTotal()
函数。
此外,由于您已将变量声明为公开,因此您可以直接显示它们而无需=Code.totalBalance