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 la información sobre el diseño de informes en el Generador de informes y el Administrador de informes (SSRS) en el sitio web 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 devuelto

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

Comentarios

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 debe ser una constante de cadena y no puede ser una expresión. Para los agregados exteriores o los agregados 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.

  • Expression no debe contener las funciones First, Last, Previous o RunningValue.

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

Para obtener más información, vea Referencia a las 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 obtener más información acerca de los agregados recursivos, vea Crear grupos 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")

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))

Vea también

Referencia

Ejemplos de expresiones (Generador de informes y SSRS)

Conceptos

Usar expresiones en informes (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)