Fonctions du Générateur de rapports - fonction d’agrégationReport Builder Functions - Aggregate Function

Retourne un agrégat personnalisé de l'expression spécifiée, comme défini par le fournisseur de données.Returns a custom aggregate of the specified expression, as defined by the data provider.

Note

Vous pouvez créer et modifier des fichiers de définition de rapport (.rdl) paginés dans le Générateur de rapports et dans le Concepteur de rapports dans SQL Server Data Tools.You can create and modify paginated report definition (.rdl) files in Report Builder and in Report Designer in SQL Server Data Tools. Chaque environnement de création offre différentes possibilités pour créer, ouvrir et enregistrer des rapports et des éléments connexes.Each authoring environment provides different ways to create, open, and save reports and related items.

SyntaxeSyntax


Aggregate(expression, scope)  

ParamètresParameters

expressionexpression
Expression sur laquelle effectuer l'agrégation.The expression on which to perform the aggregation. Elle doit être une référence de champ simple.The expression must be a simple field reference.

portéescope
(Chaîne) Nom d’un dataset, d’un groupe ou d’une région de données qui contient les éléments de rapport auxquels appliquer la fonction d’agrégation.(String) The name of a dataset, group, or data region that contains the report items to which to apply the aggregate function. Scope doit être une constante de type chaîne et ne peut pas être une expression.Scope must be a string constant andcannot be an expression. Si le paramètre scope n'est pas spécifié, l'étendue actuelle est utilisée.If scope is not specified, the current scope is used.

Type de retourReturn Type

Le type de retour est déterminé par le fournisseur de données.Return type is determined by the data provider. La fonction retourne Nothing si le fournisseur de données ne prend pas en charge cette fonction ou si les données ne sont pas disponibles.Returns Nothing if the data provider does not support this function or data is not available.

NotesRemarks

La fonction Aggregate offre un moyen d'utiliser des agrégats calculés sur la source de données externe.The Aggregate function provides a way to use aggregates that are calculated on the external data source. La prise en charge de cette fonctionnalité est déterminée par l'extension de données.Support for this feature is determined by the data extension. Par exemple, l'extension pour le traitement des données SQL ServerSQL Server Analysis ServicesAnalysis Services récupère des ensembles de lignes aplatis d'une requête MDX.For example, the SQL ServerSQL Server Analysis ServicesAnalysis Services data processing extension retrieves flattened rowsets from an MDX query. Certaines lignes du jeu de résultats peuvent contenir des valeurs d'agrégation calculées sur le serveur de la source de données.Some rows in the result set can contain aggregate values calculated on the data source server. Elles sont connues sous le nom d' agrégats de serveur.These are known as server aggregates. Pour afficher les agrégats de serveur dans le concepteur de requêtes graphique pour Analysis ServicesAnalysis Services, vous pouvez utiliser le bouton Afficher les agrégations dans la barre d'outils.To view server aggregates in the graphical query designer for Analysis ServicesAnalysis Services, you can use the Show Aggregate button on the toolbar. Pour plus d’informations, consultez Interface utilisateur du Concepteur de requêtes MDX Analysis Services (Générateur de rapports).For more information, see Analysis Services MDX Query Designer User Interface (Report Builder).

Lorsque vous affichez la combinaison des valeurs d'agrégation et de dataset détaillées sur les lignes de détails d'une région de données d'un tableau matriciel, les agrégats de serveur ne sont en général pas inclus, car il ne s'agit pas de données de détail.When you display the combination of aggregate and detail dataset values on detail rows of a Tablix data region, server aggregates would not typically be included because they are not detail data. Toutefois, vous pouvez afficher toutes les valeurs récupérées pour le dataset et personnaliser la façon dont les données d'agrégation sont calculées et affichées.However, you may want to display all values retrieved for the dataset and customize the way aggregate data is calculated and displayed.

Reporting ServicesReporting Services détecte l’utilisation de la fonction Aggregate dans les expressions de votre rapport pour déterminer s’il convient d’afficher les agrégats de serveur sur les lignes de détails. detects the use of the Aggregate function in expressions in your report in order to determine whether to display server aggregates on detail rows. Si vous incluez Aggregate dans une expression d'une région de données, les agrégats de serveur peuvent apparaître uniquement sur les lignes du total de groupe ou du total général, mais pas sur les lignes de détails.If you include Aggregate in an expression in a data region, server aggregates can only appear on group total or grand total rows, not on detail rows. Si vous souhaitez afficher les agrégats de serveur sur les lignes de détails, n'utilisez pas la fonction Aggregate .If you want to display server aggregates on detail rows, do not use the Aggregate function.

Vous pouvez modifier ce comportement par défaut en changeant la valeur de l'option Interpréter les sous-totaux comme des lignes de détails dans la boîte de dialogue Propriétés du dataset .You can change this default behavior by changing the value of the Interpret subtotals as details option on the Dataset Properties dialog box. Lorsque cette option a la valeur True, toutes les données, y compris les agrégats de serveur, apparaissent comme données de détail.When this option is set to True, all data, including server aggregates, appears as detail data. Lorsque cette option a la valeur False, les agrégats de serveur apparaissent comme totaux.When set to False, server aggregates appear as totals. Le paramètre de cette propriété affecte toutes les régions de données liées à ce dataset.The setting for this property affects all data regions that are linked to this dataset.

Note

Tous les groupes conteneurs de l’élément de rapport qui fait référence à Aggregate doivent disposer de références de champ simples pour leurs expressions de groupe, par exemple [FieldName].All containing groups for the report item that references Aggregate must have simple field references for their group expressions, for example, [FieldName]. Vous ne pouvez pas utiliser Aggregate dans une région de données qui utilise des expressions de groupe complexes.You cannot use Aggregate in a data region that uses complex group expressions. Pour l’extension pour le traitement des données SQL ServerSQL Server Analysis ServicesAnalysis Services , votre requête doit inclure des champs MDX de type LevelProperty (et non MemberProperty) pour prendre en charge l’agrégation à l’aide de la fonction Aggregate.For the SQL ServerSQL Server Analysis ServicesAnalysis Services data processing extension, your query must include MDX fields of type LevelProperty (not MemberProperty) to support aggregation using the Aggregatefunction.

Expression peut contenir des appels aux fonctions d'agrégation imbriquées avec les exceptions et conditions suivantes :Expression can contain calls to nested aggregate functions with the following exceptions and conditions:

Comparaison des fonctions Aggregate et SumComparing the Aggregate and Sum Functions

La fonction Aggregate diffère des fonctions d'agrégation numériques comme Sum , car la fonction Aggregate retourne une valeur calculée par le fournisseur de données ou l'extension pour le traitement des données.The Aggregate function differs from numeric aggregate functions like Sum in that the Aggregate function returns a value that is calculated by the data provider or data processing extension. Les fonctions d'agrégation numériques comme Sum retournent une valeur calculée par le processeur de rapports sur un jeu de données du dataset déterminé par le paramètre scope .Numeric aggregate functions like Sum return a value that is calculated by the report processor on a set of data from the dataset that is determined by the scope parameter. Pour plus d’informations, consultez les expressions d’agrégation répertoriées dans Informations de référence sur les fonctions d’agrégation (Générateur de rapports et SSRS).For more information, see the aggregate functions listed in Aggregate Functions Reference (Report Builder and SSRS).

ExempleExample

L'exemple de code suivant affiche une expression qui récupère un agrégat de serveur pour le champ LineTotal.The following code example shows an expression that retrieves a server aggregate for the field LineTotal. L'expression est ajoutée à une cellule d'une ligne qui appartient au groupe GroupbyOrder.The expression is added to a cell in a row that belongs to the group GroupbyOrder.

=Aggregate(Fields!LineTotal.Value, "GroupbyOrder")  

Voir aussiSee Also

Utilisation d’expressions dans les rapports (Générateur de rapports et SSRS) Expression Uses in Reports (Report Builder and SSRS)
Exemples d’expressions (Générateur de rapports et SSRS) Expression Examples (Report Builder and SSRS)
Types de données dans les expressions (Générateur de rapports et SSRS) Data Types in Expressions (Report Builder and SSRS)
Étendue des expressions pour les totaux, les agrégats et les collections intégrées (Générateur de rapports et SSRS) Expression Scope for Totals, Aggregates, and Built-in Collections (Report Builder and SSRS)