Reporting services 在多个列上运行总计的SSR?

Reporting services 在多个列上运行总计的SSR?,reporting-services,ssrs-2008,ssrs-tablix,cumulative-sum,Reporting Services,Ssrs 2008,Ssrs Tablix,Cumulative Sum,我正在创建一个SSRS报告,其中我有一个Tablix该Tablix的数据,如下所示 单参数-->平衡=100 firstamt SecondAmt ThirdAmt RunningTotal 10 15 20 145 02 05 01 153 -30 -20 -03 100 所以基本上我的RunningTotal

我正在创建一个SSRS报告,其中我有一个
Tablix
Tablix
的数据,如下所示

单参数-->平衡=100

firstamt   SecondAmt   ThirdAmt    RunningTotal 
  10         15           20          145
  02         05           01          153
 -30        -20          -03          100
所以基本上我的
RunningTotal
字段值应该是

    RunningTotal = Balance + firstAmt+SecondAmt+thirdAmt and then update
    Balance =  Balance + firstAmt+SecondAmt+thirdAmt (Or RunningTotal)
对于下一行,应使用
Balance=RunningTotal
然后计算下一行RunningTotal,依此类推。我尝试使用
自定义代码
运行值
,但仍然没有成功

任何帮助都会很好,谢谢。我的报表服务器也是2008

(如有疑问,请随时发表评论。)

我试着遵循自定义代码,但不起作用

 public dim finalRunningTotal as decimal = 0
 public function CalculateRunningTotal (totalAmount as decimal, CheckAmount as decimal,pstAmount as decimal) as decimal
     dim valueToReturn as decimal = finalRunningTotal + totalAmount + CheckAmount +pstAmount 
     finalRunningTotal = valueToReturn 
     return valueToReturn 
end function

下面是一个示例-使用如下表达式:

=RunningValue(Fields!FirstAmt.Value + Fields!SecondAmt.Value + Fields!ThirdAmt.Value
        , Sum
        , Nothing)
    + Parameters!Balance.Value
根据表格的设置方式,您可能需要将
Nothing
更改为不同的范围

在一个简单的例子中对我有效:

这里的例子如上所述

为了简化此过程,您可以向数据集添加一个计算字段,如下所示:

=Fields!FirstAmt.Value + Fields!SecondAmt.Value + Fields!ThirdAmt.Value
这使得
RunningValue
表达式更简单:

=RunningValue(Fields!MyCalculatedField.Value
        , Sum
        , Nothing)
    + Parameters!Balance.Value

您有三个金额,这总是三个(或一个固定的数字,无论如何)还是每次报表运行时金额的数量都在变化?金额将来自数据库,因此每次的值都不同,但三列相同columns@IanPreston基本上我想要一种方法来更新每一行的Balance参数,这样就可以使用Balance参数来表示所有三列的总和用于运行总计计算。Amt列的来源是什么?是否有任何方法可以计算源中的所有金额,并且只在报告中添加参数值?@AlexPeshik是的,我可以更新源以在一列中获取所有金额列的总和。我会尝试让您知道。没问题,很高兴它有帮助!