Ssrs 2008 Code.Grandtotal()变量在SSRS中的新页面上重置
我有一个复杂的表达式,它根据账单类型计算收入。基本上说,如果账单类型=进度,使用X计算;如果账单类型=NTE,使用Y计算;对于其他所有内容,使用Z。因为这是一个聚合,您不能简单地使用SSRS中的求和函数来求和总数。您需要使用自定义代码。我一直在使用我在Stack上发现的以下内容。见下文Ssrs 2008 Code.Grandtotal()变量在SSRS中的新页面上重置,ssrs-2008,ssrs-2012,Ssrs 2008,Ssrs 2012,我有一个复杂的表达式,它根据账单类型计算收入。基本上说,如果账单类型=进度,使用X计算;如果账单类型=NTE,使用Y计算;对于其他所有内容,使用Z。因为这是一个聚合,您不能简单地使用SSRS中的求和函数来求和总数。您需要使用自定义代码。我一直在使用我在Stack上发现的以下内容。见下文 Public Shared Dim grandTotal as Decimal Public Shared Dim costCenterTotal as Decimal Public Shared Dim wor
Public Shared Dim grandTotal as Decimal
Public Shared Dim costCenterTotal as Decimal
Public Shared Dim workerTotal as Decimal
Public Shared Function Initialize()
grandTotal = 0
costCenterTotal = 0
workerTotal = 0
End Function
Public Function AddTotal(ByVal b AS Decimal) AS Decimal
grandTotal = grandTotal + b
costCenterTotal = costCenterTotal + b
workerTotal = workerTotal + b
return b
End Function
Public Function GetWorkerTotal()
Dim ret as Decimal = workerTotal
workerTotal = 0
return ret
End Function
Public Function GetCostCenterTotal()
Dim ret as Decimal = costCenterTotal
costCenterTotal = 0
return ret
End Function
Public Function GetGrandTotal()
Dim ret as Decimal = grandTotal
grandTotal= 0
return ret
End Function
在主表达式中,我向表达式中添加了code.AddTotal()函数,在合计行中,我在列中使用了code.GetGrandTotal()函数
问题是,当我运行报告时,我在总计行中没有得到正确的总计。它似乎会根据我是否查看报告的每一页而变化,即使我查看了所有页面,总计也不正确。它似乎重置了。有人能告诉我我做错了什么吗。
谢谢 你在多页上重复总数吗?我认为它会在每次使用后重置,因为GrandTotal=0。也许试着删除那行。我会在你的SQL中重现计算结果。