Compartir a través de


Función Sum (Generador de informes y SSRS)

Devuelve la suma de todos los valores numéricos no NULL especificados por la expresión, que se evalúa en el contexto del ámbito especificado.

Nota:

Puede crear y modificar las definiciones de informe (.rdl) en el Generador de informes y en el Diseñador de informes en SQL Server Data Tools. Cada entorno de creación proporciona varias maneras de crear, abrir y guardar informes y elementos relacionados. Para obtener más información, vea Diseño de informes en Diseñador de informes y Report Builder (SSRS) en la Web en microsoft.com.

Sintaxis

  
Sum(expression, scope, recursive)  

Parámetros

expression
(Integer o Float). Expresión en la que se lleva a cabo la agregación.

scope
(String) (opcional). Nombre de un conjunto de datos, un grupo o una región de datos que contiene los elementos de informe a los que se va a aplicar la función de agregado. Si no se especifica el parámetro scope , se usa el ámbito actual.

recursive
(Tipo enumerado) Opcional. Simple (predeterminado) o RdlRecursive. Especifica si se debe realizar la agregación de forma recursiva.

Tipo de valor devuelto

Devuelve un valor Decimal para expresiones decimales y un valor Double para las demás expresiones.

Observaciones

El conjunto de datos especificado en la expresión debe tener el mismo tipo de datos. Si desea convertir datos de varios tipos de datos numéricos al mismo tipo de datos, use funciones de conversión como CInt, CDbl o CDec. Para obtener más información, vea Funciones de conversión de tipos.

El valor de scope tiene que ser una constante de cadena y no puede ser una expresión. Para los agregados exteriores o los que no especifican a otros agregados, scope debe hacer referencia al ámbito actual o a un ámbito de contenido. Para los agregados de agregados, los agregados anidados pueden especificar un ámbito secundario.

Expression puede contener las llamadas a las funciones de agregados anidados con las siguientes excepciones y condiciones:

  • Scope , para los agregados anidados, debe ser igual que el ámbito del agregado exterior, o ser contenido por él. Para todos los ámbitos distintos de la expresión, un ámbito debe estar en una relación secundaria con respecto a todos los otros ámbitos.

  • Scope , para los agregados anidados, no puede ser el nombre de un conjunto de datos.

  • La expresión no debe contener Firstfunciones , LastPrevious, o RunningValue .

  • Expression no debe contener a los agregados anidados que especifican recursive.

Para más información, consulte Funciones del generador de informes - referencia de funciones de agregado (Generador de informes y SSRS) y Ámbito de expresión para los totales, agregados y colecciones integradas (Generador de informes y SSRS).

Para más información sobre los agregados recursivos, consulte Creación de un grupo de jerarquía recursiva (Generador de informes y SSRS).

Ejemplo

Los dos ejemplos de código siguientes devuelven la suma de los totales para cada artículo del grupo o de la región de datos Order .

=Sum(Fields!LineTotal.Value, "Order")  
' or   
=Sum(CDbl(Fields!LineTotal.Value), "Order")  

Ejemplo

En una región de datos de matriz con la categoría y la subcategoría de grupos de filas anidadas, y el año y el cuatrimestre de grupos de columnas anidadas, en una celda que pertenezca a los grupos de columnas y filas más internos, la expresión siguiente se evalúa como el valor máximo de todos los trimestres para todas las subcategorías.

=Max(Sum(Fields!Sales.Value))  

Consulte también

Usar expresiones en informes (Generador de informes y SSRS)
Ejemplos de expresiones (Generador de informes y SSRS)
Tipos de datos en expresiones (Generador de informes y SSRS)
Ámbito de expresión para los totales, agregados y colecciones integradas (Generador de informes y SSRS)