Compartir a través de


Funciones del Generador de informes: función CountDistinct en un informe paginado (Generador de informes)

Se aplica a: Generador de informes de Microsoft (SSRS) Power BI Report Builder Diseñador de informes en SQL Server Data Tools

Devuelve un recuento de todos los valores no NULL distintos especificados por la expresión en un informe paginado, que se evalúa en el contexto del ámbito especificado.

Nota:

Puede crear y modificar los archivos de definición de informes paginados (.rdl) en el Generador de informes de Microsoft, en Power BI Report Builder y en el Diseñador de informes de SQL Server Data Tools.

Sintaxis

  
CountDistinct(expression, scope, recursive)  

Parámetros

expression
(Variante) 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 (valor predeterminado) o RdlRecursive. Especifica si se debe realizar la agregación de forma recursiva.

Tipo de valor devuelto

Devuelve un Integer.

Observaciones

El valor de scope debe 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.

  • Expression no debe contener las funciones First, Last, Previouso 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

El ejemplo de código siguiente muestra una expresión que calcula el número de valores no NULL únicos de Size para el ámbito predeterminado y para un ámbito de grupo primario. La expresión se agrega a una celda de una fila que pertenece al grupo secundario GroupbySubcategory. El grupo primario es GroupbyCategory. La expresión muestra los resultados para GroupbySubcategory (el ámbito predeterminado) y, después, para GroupbyCategory (el ámbito de grupo primario).

Nota:

Las expresiones no deben contener retornos de carro ni saltos de línea reales; en el código de ejemplo se han incluido para posibilitar la compatibilidad con los representadores de documentación. Si copia el ejemplo siguiente, quite los retornos de carro de todas las líneas.

="Distinct count (Subcategory): " & CountDistinct(Fields!Size.Value) &   
"Distinct count (Category): " & CountDistinct(Fields!Size.Value,"GroupbyCategory")