返回在给定作用域中计算的,由表达式指定的所有非 Null 数值的运行聚合。
注释
可以在报表生成器和 SQL Server Data Tools 中的报表设计器中创建和修改报表定义(.rdl)。 每个创作环境提供了创建、打开和保存报表和相关项的不同方法。 有关详细信息,请参阅 microsoft.com Web 上的 报表设计器和报表生成器(SSRS)中设计报表 。
语法
RunningValue(expression, function, scope)
参数
expression
要对其执行聚合的表达式,例如, [Quantity]
。
函数
(Enum
) 要应用于表达式的聚合函数的名称,例如 Sum
。 此函数不能是RunningValue
、RowNumber
或Aggregate
。
作用域
(String
) 一个字符串常量,该常量是数据集、数据区域或组的名称或 null(Nothing
在 Visual Basic 中),用于指定要在其中计算聚合的上下文。
Nothing
指定最外部的上下文,通常是报表数据集。
返回类型
由 function 参数中指定的聚合函数确定。
注解
每个新范围实例中,RunningValue
的值重置为 0。 如果指定组,则会在更改组表达式时重置该运行值。 如果指定数据区域,则会为该数据区域的每个新实例重置该运行值。 如果指定数据集,则不会在整个数据集中重置该运行值。
RunningValue
不能在筛选器或排序表达式中使用。
为其计算运行值的数据集必须具有相同的数据类型。 若要将具有多个数值数据类型的数据转换为同一数据类型,请使用转换函数,例如 CInt
, CDbl
或 CDec
。 有关详细信息,请参阅 Type Conversion Functions(类型转换函数)。
Scope 不能是表达式。
Expression 可以包含对嵌套聚合函数的调用,但具有以下例外和条件:
嵌套聚合的作用域必须与外部聚合的作用域相同,或者包含在外部聚合的作用域中。 对于表达式中的所有非重复作用域,一个作用域必须相对所有其他作用域处于子关系中。
嵌套聚合的作用域不能为数据集的名称。
表达式不能包含
First
、Last
或Previous
RunningValue
函数。Expression 不得包含用于指定 recursive的嵌套聚合。
若要计算行数的运行值,请使用 RowNumber
。 有关详细信息,请参阅 RowNumber 函数(报表生成器和 SSRS)。
有关详细信息,请参阅聚合函数引用(报表生成器和 SSRS)和总计、聚合和内置集合的表达式作用域(报表生成器和 SSRS)。
有关递归聚合的详细信息,请参阅创建递归层次结构组(报表生成器和 SSRS)。
例子
下面的代码示例提供了最外层作用域(数据集)中名为 Cost
的字段的运行总和。
=RunningValue(Fields!Cost.Value, Sum, Nothing)
下面的代码示例提供了名为 Score
的数据集中名为 DataSet1
的字段的运行总和。
=RunningValue(Fields!Score.Value,sum,"DataSet1")
下面的代码示例提供了最外层作用域中名为 Traffic Charges
的字段的运行总和。
=RunningValue(Fields!Traffic Charges.Value, Sum, Nothing)
另请参阅
在报表中使用表达式(报表生成器和 SSRS)
表达式示例(报表生成器和 SSRS)
表达式中的数据类型(报表生成器和 SSRS)
总计、聚合和内置集合的表达式作用域(报表生成器和 SSRS)