Référence aux fonctions d'agrégation (Générateur de rapports version 3.0 et SSRS)

Pour inclure des valeurs agrégées dans votre rapport, vous pouvez utiliser des fonctions d'agrégation intégrées dans des expressions. La fonction d'agrégation par défaut pour les champs de type numérique est SUM. Vous pouvez modifier l'expression et utiliser une fonction d'agrégation intégrée différente ou spécifier une étendue différente. L'étendue identifie le jeu de données à utiliser pour le calcul.

Les expressions de chaque élément de rapport sont évaluées à mesure que le processeur de rapports combine des données de rapport et la disposition de rapport. Lorsque vous consultez une page du rapport, vous affichez les résultats de chaque expression dans les éléments de rapport rendus.

La table suivante répertorie des catégories de fonctions intégrées que vous pouvez inclure dans une expression :

  • Fonctions d'agrégation intégrées

  • Restrictions sur les champs prédéfinis, les collections et les fonctions d'agrégation

  • Restrictions concernant les agrégats imbriqués

  • Calcul de valeurs d'exécution

  • Récupération de nombres de lignes

  • Recherche de valeurs d'un autre dataset

  • Récupération de valeurs dépendantes du tri

  • Récupération d'agrégats de serveurs

  • Récupération du niveau récursif

  • Test de l'étendue

Pour déterminer les étendues valides pour une fonction, consultez la rubrique de référence à la fonction en question Pour plus d'informations et d'exemples, consultez Présentation de l'étendue des expressions pour les totaux, les agrégats et les collections intégrées (Générateur de rapports version 3.0 et SSRS).

Notes

Vous pouvez créer et modifier des définitions de rapports (.rdl) dans le Générateur de rapports version 3.0 et dans le Concepteur de rapports, dans Business Intelligence Development Studio. Chaque environnement de création offre différentes possibilités pour créer, ouvrir et enregistrer des rapports et des éléments connexes. Pour plus d'informations, consultez Conception de rapports dans le Concepteur de rapports et le Générateur de rapports version 3.0 (SSRS) sur le site Web Microsoft.

Fonctions d'agrégation intégrées

Les fonctions intégrées suivantes calculent des valeurs résumées pour un jeu de données numériques non Null dans l'étendue par défaut ou l'étendue nommée.

Fonction

Description

Avg

Retourne la moyenne de toutes les valeurs numériques non Null spécifiées par l'expression, évaluée dans l'étendue donnée.

Count

Retourne le nombre de valeurs non Null spécifiées par l'expression, évaluée dans le contexte de l'étendue donnée.

CountDistinct

Retourne le nombre de toutes les valeurs non Null distinctes spécifiées par l'expression, évaluée dans le contexte de l'étendue donnée.

Max

Retourne la valeur maximale de toutes les valeurs numériques non Null spécifiées par l'expression, dans le contexte de l'étendue donnée. Vous pouvez utiliser cette fonction pour spécifier une valeur maximale d'axe de graphique afin de contrôler l'échelle.

Min

Retourne la valeur minimale de toutes les valeurs numériques non Null spécifiées par l'expression, dans le contexte de l'étendue donnée. Vous pouvez utiliser cette fonction pour spécifier une valeur minimale d'axe de graphique afin de contrôler l'échelle.

StDev

Retourne l'écart type de toutes les valeurs numériques non Null spécifiées par l'expression, évaluée dans l'étendue donnée.

StDevP

Retourne l'écart type de remplissage de toutes les valeurs numériques non Null spécifiées par l'expression, évaluée dans le contexte de l'étendue donnée.

Sum

Retourne la somme de toutes les valeurs numériques non Null spécifiées par l'expression, évaluée dans l'étendue donnée.

Union

Retourne l'union de toutes les valeurs de données spatiales non Null du type SqlGeometry ou SqlGeography spécifiées par l'expression, évaluées dans l'étendue donnée.

Var

Retourne la variance de toutes les valeurs numériques non Null spécifiées par l'expression, évaluée dans l'étendue donnée.

VarP

Retourne la variance de remplissage de toutes les valeurs numériques non Null spécifiées par l'expression, évaluée dans le contexte de l'étendue donnée.

Icône de flèche utilisée avec le lien Retour au débutRetour au début

Restrictions sur les champs prédéfinis, les collections et les fonctions d'agrégation

Le tableau suivant résume les restrictions dans les emplacements de rapport où vous pouvez ajouter des expressions qui contiennent des références aux collections intégrées globales.

Emplacement dans le rapport

Champs

Paramètres

ReportItems

PageNumber

TotalPages

DataSource

DataSet

Variables

RenderFormat

En-tête de page

Pied de page

Oui

Oui

Un au plus

Remarque 1

Oui

Oui

Oui

Oui

Corps

Oui

Remarque 2

Oui

Seuls les éléments dans l'étendue active ou une étendue contenante

Remarque 3

Non

Oui

Oui

Oui

Paramètre de rapport

Non

Seuls les premiers paramètres dans la liste

Remarque 4

Non

Non

Non

Non

Non

Champ

Oui

Oui

Non

Non

Non

Non

Non

Paramètre de requête

Non

Oui

Non

Non

Non

Non

Non

Expression de groupe

Oui

Oui

Non

Non

Oui

Non

Non

Expression de tri

Oui

Oui

Non

Non

Oui

Oui

Remarque 5

Non

Expression de filtre

Oui

Oui

Non

Non

Oui

Oui

Remarque 6

Non

Code

Non

Oui

Remarque 7

Non

Non

Non

Non

Non

Report.Language

Non

Oui

Non

Non

Non

Non

Non

Variables

Oui

Oui

Non

Non

Oui

Étendue active ou contenante

Non

Agrégats

Oui

Oui

Uniquement dans l'en-tête de page/le pied de page

Uniquement dans les agrégats d'élément de rapport

Oui

Non

Non

Fonctions de recherche

Oui

Oui

Oui

Non

Oui

Non

Non

  • Remarque 1. ReportItems doit exister dans la page de rapport rendue, sinon sa valeur est Null. Si la visibilité d'un élément de rapport dépend d'une expression qui prend la valeur False, l'élément de rapport n'existe pas dans la page.

  • Remarque 2. Si une référence de champ est utilisée dans une étendue de groupe et que cette référence n'est pas incluse dans l'expression de groupe, la valeur du champ n'est pas définie, sauf s'il existe une seule valeur dans l'étendue. Pour spécifier une valeur, utilisez la fonction First ou Last et l'étendue du groupe.

  • Remarque 3. Les expressions qui incluent une référence à ReportItems peuvent spécifier des valeurs pour d'autres éléments ReportItems dans la même étendue de groupe ou dans une étendue de groupe contenante.

  • Remarque 4. Les valeurs de propriété des premiers paramètres peuvent être Null.

  • Remarque 5. Dans les tris Membres uniquement. Utilisation impossible dans les expressions de tri de la région de données.

  • Remarque 6. Dans les filtres Membres uniquement. Utilisation impossible dans la région de données ou les expressions de filtre de dataset.

  • Remarque 7. La collection Parameters n'est pas initialisée tant que le bloc de code n'a pas été traité afin que les méthodes ne puissent pas être utilisées pour contrôler des paramètres lors de l'initialisation.

  • Remarque 8. Le type de données de tous les agrégats à l'exception de Count et CountDistinct doit être le même, ou Null, pour toutes les valeurs.

Icône de flèche utilisée avec le lien Retour au débutRetour au début

Restrictions concernant les agrégats imbriqués

Le tableau suivant résume les restrictions concernant les fonctions d'agrégation qui peuvent spécifier d'autres fonctions d'agrégation comme agrégats imbriqués.

Contexte

RunningValue

RowNumber

First

Last

Previous

Sum et autres fonctions Presort

Agrégats ReportItem

Fonctions de recherche

Fonction d'agrégation

Valeur d'exécution

Non

Non

Non

Non

Oui

Non

Oui

Non

First

Last

Non

Non

Non

Non

Oui

Non

Non

Non

Previous

Oui

Oui

Oui

Non

Oui

Non

Oui

Non

Sum et autres fonctions Presort

Non

Non

Non

Non

Oui

Non

Oui

Non

Agrégats ReportItem

Non

Non

Non

Non

Non

Non

Non

Non

Fonctions de recherche

Oui

Oui

Remarque 1

Oui

Remarque 1

Oui

Remarque 1

Oui

Remarque 1

Oui

Remarque 1

Non

Non

Fonction d'agrégation

Non

Non

Non

Non

Non

Non

Non

Non

  • Remarque 1. Les fonctions d'agrégation sont autorisées uniquement à l'intérieur de l'expression Source d'une fonction Lookup si cette dernière n'est pas contenue dans un agrégat. Les fonctions d'agrégation ne sont pas autorisées à l'intérieur des expressions Destination ou Result d'une fonction Lookup.

Icône de flèche utilisée avec le lien Retour au débutRetour au début

Calcul de valeurs d'exécution

Les fonctions intégrées suivantes calculent des valeurs d'exécution pour un jeu de données. RowNumber est semblable à RunningValue en ce sens qu'il retourne la valeur d'exécution d'un compte qui s'incrémente pour chaque ligne de l'étendue contenante. Le paramètre d'étendue de ces fonctions doit spécifier une étendue contenante, laquelle contrôle le moment où le compte redémarre.

Fonction

Description

RowNumber

Retourne un nombre évolutif du nombre de lignes pour l'étendue spécifiée. La fonction RowNumber redémarre le comptage à 1, et non à 0.

RunningValue

Retourne un agrégat cumulé de toutes les valeurs numériques non Null spécifiées par l'expression, évaluée pour l'étendue donnée.

Icône de flèche utilisée avec le lien Retour au débutRetour au début

Récupération de nombres de lignes

La fonction intégrée suivante calcule le nombre de lignes d'une étendue donnée. Utilisez-la pour compter toutes les lignes, y compris celles contenant des valeurs Null.

Fonction

Description

CountRows

Retourne le nombre de lignes dans l'étendue spécifiée, y compris celles contenant des valeurs Null.

Icône de flèche utilisée avec le lien Retour au débutRetour au début

Recherche de valeurs d'un autre dataset

Les fonctions de recherche suivantes récupèrent des valeurs à partir d'un dataset spécifié.

Fonction

Description

Fonction Lookup

Retourne une valeur à partir d'un dataset pour une expression spécifiée.

Fonction LookupSet

Retourne un ensemble de valeurs à partir d'un dataset pour une expression spécifiée.

Fonction Multilookup

Retourne le jeu de valeurs de première correspondance pour un ensemble de noms à partir d'un dataset contenant des paires nom/valeur.

Icône de flèche utilisée avec le lien Retour au débutRetour au début

Récupération de valeurs dépendantes du tri

Les fonctions intégrées suivantes retournent la première valeur, la dernière valeur ou la valeur précédente dans une étendue donnée. Ces fonctions dépendent de l'ordre de tri des valeurs de données. Utilisez ces fonctions pour, par exemple, rechercher les première et dernière valeurs d'une page afin de créer un en-tête de page de type dictionnaire. Utilisez Previous pour comparer une valeur d'une ligne avec la valeur de la ligne précédente dans une étendue spécifique pour, par exemple, rechercher des valeurs d'une année sur l'autre en pourcentage dans une table.

Fonction

Description

First

Retourne la première valeur dans l'étendue donnée de l'expression spécifiée.

Last

Retourne la dernière valeur dans l'étendue donnée de l'expression spécifiée.

Previous

Retourne la valeur ou la valeur d'agrégation spécifiée pour l'instance précédente d'un élément dans l'étendue spécifiée.

Icône de flèche utilisée avec le lien Retour au débutRetour au début

Récupération d'agrégats de serveurs

La fonction intégrée suivante récupère des agrégats personnalisés du fournisseur de données. Par exemple, un type de la source de données Analysis Services vous permet d'extraire des agrégats calculés sur le serveur de source de données pour une utilisation dans un en-tête de groupe.

Fonction

Description

Aggregate

Retourne un agrégat personnalisé de l'expression spécifiée, comme défini par le fournisseur de données.

Icône de flèche utilisée avec le lien Retour au débutRetour au début

Test de l'étendue

La fonction intégrée suivante teste le contexte actuel d'un élément de rapport pour voir s'il est membre d'une étendue spécifique.

Fonction

Description

InScope

Indique si l'instance en cours d'un élément se trouve dans l'étendue spécifiée.

Icône de flèche utilisée avec le lien Retour au débutRetour au début

Récupération du niveau récursif

La fonction intégrée suivante récupère le niveau actuel lorsqu'une hiérarchie récursive est traitée. Utilisez le résultat de cette fonction avec la propriété Padding dans une zone de texte pour contrôler le niveau de retrait d'une hiérarchie visuelle pour un groupe récursif. Pour plus d'informations, consultez Création de groupes de hiérarchies récursives (Générateur de rapports version 3.0 et SSRS).

Fonction

Description

Level

Retourne le niveau de profondeur actuel d'une hiérarchie récursive.

Icône de flèche utilisée avec le lien Retour au débutRetour au début