Expressions (Générateur de rapports version 3.0 et SSRS)

Les expressions sont couramment utilisées dans un rapport pour récupérer, calculer, afficher, regrouper, trier, filtrer, paramétrer et mettre en forme les données. De nombreuses propriétés d'élément de rapport peuvent avoir la valeur d'une expression. Les expressions vous aident à contrôler le contenu, la conception et l'interactivité de votre rapport. Les expressions sont écrites dans Microsoft Visual Basic, enregistrées dans la définition de rapport et évaluées par le processeur de rapports lorsque vous exécutez le rapport.

Contrairement aux applications telles que Microsoft Office Excel, où vous utilisez des données directement dans une feuille de calcul, dans un rapport, vous utilisez des expressions qui représentent des espaces réservés pour les données. Pour consulter les données réelles des expressions évaluées, vous devez afficher un aperçu du rapport. Lorsque vous exécutez le rapport, le processeur de rapports évalue chaque expression au moment de combiner les données de rapport et les éléments de disposition du rapport tels que les tableaux et les graphiques.

Lorsque vous concevez un rapport, de nombreuses expressions relatives aux éléments de rapport sont définies automatiquement. Par exemple, lorsque vous faites glisser un champ du volet de données vers une cellule de tableau sur l'aire de conception du rapport, la zone de texte prend la valeur d'une expression simple pour le champ. Dans l'illustration suivante, le volet Données du rapport affiche les champs de dataset ID, Name, SalesTerritory, Code et Sales. Trois champs ont été ajoutés à la table : [Name], [Code] et [Sales]. La notation [Name] sur l'aire de conception représente l'expression sous-jacente =Fields!Name.Value.

Mode Conception : données et disposition du rapport ; volet Aperçu

Lorsque vous affichez un aperçu du rapport, le processeur de rapports combine la région de données de table avec les données effectives de la connexion de données, puis affiche une ligne dans la table pour chaque ligne du jeu de résultats.

Pour entrer manuellement des expressions, sélectionnez un élément dans l'aire de conception, puis utilisez les menus contextuels et boîtes de dialogue pour définir les propriétés de l'élément. Lorsque vous voyez le bouton (fx) ou la valeur <Expression> dans une liste déroulante, vous savez que vous pouvez affecter à la propriété une expression. Pour plus d'informations, consultez Procédure : ajouter une expression (Générateur de rapports version 3.0 et SSRS).

Pour plus d'informations et pour obtenir des exemples, consultez les rubriques suivantes :

Pour développer des expressions complexes ou des expressions qui utilisent du code personnalisé ou des assemblys personnalisés, il est recommandé de recourir au Concepteur de rapports dans Business Intelligence Development Studio. Pour plus d'informations, consultez Code personnalisé et références d'assembly dans les expressions dans le Concepteur de rapports (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.

Dans cet article

Présentation des expressions simples et complexes

Présentation des symboles de préfixe dans les expressions simples

Écriture d'expressions complexes

Validation d'expressions

Dans cette section

Présentation des expressions simples et complexes

Les expressions commencent par un signe égal (=) et sont écrites en langage Microsoft Visual Basic. Les expressions peuvent se composer d'une combinaison de constantes, d'opérateurs et de références à des valeurs prédéfinies (champs, collections et fonctions) ainsi qu'à du code externe ou personnalisé.

Vous pouvez utiliser des expressions pour spécifier la valeur de nombreuses propriétés d'élément de rapport. Les propriétés les plus usuelles sont les valeurs des zones de texte et du texte de l'espace réservé. En règle générale, si une zone de texte contient une seule expression, celle-ci représente la valeur de la propriété de la zone de texte. Si une zone de texte contient plusieurs expressions, chaque expression représente la valeur du texte de l'espace réservé dans la zone de texte.

Par défaut, les expressions s'affichent sur l'aire de conception du rapport sous la forme d'expressions simples ou complexes.

  • Simple   Une expression simple contient une référence unique à un élément unique dans une collection intégrée, par exemple un champ de dataset, un paramètre ou un champ prédéfini. Sur l'aire de conception, une expression simple apparaît entre parenthèses. Par exemple, [FieldName] correspond à l'expression sous-jacente =Fields!FieldName.Value. Les expressions simples sont créées automatiquement lorsque vous créez la mise en page du rapport et que vous faites glisser des éléments du volet Données du rapport vers l'aire de conception. Pour plus d'informations sur les symboles qui représentent les différentes collections intégrées, consultez Présentation des symboles de préfixe dans les expressions simples.

  • Complexe   Une expression complexe contient des références à plusieurs références intégrées, opérateurs et appels de fonction. Une expression complexe apparaît sous la forme <<Expr>> lorsque la valeur d'expression inclut plusieurs références simples. Pour consulter l'expression, pointez sur cette dernière et utilisez l'info-bulle. Pour modifier l'expression, ouvrez-la dans la boîte de dialogue Expression.

L'illustration suivante montre des expressions simples et complexes classiques pour des zones de texte et du texte d'espace réservé.

Afficher le format par défaut sur l'aire de conception du rapport

Pour afficher des exemples de valeurs à la place du texte pour les expressions, appliquez la mise en forme à la zone de texte ou au texte de l'espace réservé. L'illustration suivante montre l'aire de conception du rapport de manière à afficher les exemples de valeurs :

Afficher des valeurs d'aperçu sur l'aire de conception du rapport

Pour plus d'informations, consultez Mise en forme du texte et des espaces réservés (Générateur de rapports version 3.0 et SSRS).

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

Formules de modèle de rapport

Lorsque vous concevez une requête pour un dataset qui utilise un modèle de rapport comme source de données, vous avez la possibilité de créer des formules. Les formules sont des calculs effectués sur les valeurs d'un rapport qui sont basées sur des données d'un modèle de rapport.

Pour plus d'informations, consultez Utilisation de formules dans les requêtes de modèle de rapport (Générateur de rapports version 3.0 et SSRS).

Retour au début

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

Présentation des symboles de préfixe dans les expressions simples

Les expressions simples utilisent des symboles pour indiquer si la référence est une référence à un champ, un paramètre, une collection intégrée ou la collection ReportItems. Le tableau suivant présente des exemples de texte affiché et de texte d'expression :

Élément

Exemple de texte affiché

Exemple de texte d'expression

Champs de dataset

[Sales]

[SUM(Sales)]

[FIRST(Store)]

=Fields!Sales.Value

=Sum(Fields!Sales.Value)

=First(Fields!Store.Value)

Paramètres du rapport

[@Param]

[@Param.Label]

=Parameters!Param.Value

=Parameters!Param.Label

Champs prédéfinis

[&ReportName]

=Globals!ReportName.Value

Caractères littéraux utilisés pour le texte affiché

\[Sales\]

[Sales]

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

Écriture d'expressions complexes

Les expressions peuvent inclure des références à des fonctions, des opérateurs, des constantes, des champs, des paramètres, des éléments provenant de collections intégrées, ainsi que des références à du code personnalisé incorporé ou à des assemblys personnalisés.

Notes

Pour développer des expressions complexes ou des expressions qui utilisent du code personnalisé ou des assemblys personnalisés, il est recommandé de recourir au Concepteur de rapports dans SQL Server Business Intelligence Development Studio. Pour plus d'informations, consultez Code personnalisé et références d'assembly dans les expressions dans le Concepteur de rapports (SSRS).

La table suivante répertorie les types de références que vous pouvez inclure dans une expression :

Références

Description

Exemple

Constantes

Décrit les constantes auxquelles vous pouvez accéder de manière interactive pour les propriétés qui requièrent des valeurs constantes ; par exemple les couleurs de police.

="Blue"

Opérateurs

Décrit les opérateurs que vous pouvez utiliser pour combiner des références dans une expression. Par exemple, l'opérateur & est utilisé pour la concaténation de chaînes.

="The report ran at: " & Globals!ExecutionTime & "."

Collections intégrées

Décrit les collections intégrées que vous pouvez inclure dans une expression ; par exemple, Fields, Parameters et Variables.

=Fields!Sales.Value

=Parameters!Store.Value

=Variables!MyCalculation.Value

Fonctions de rapport et d'agrégation intégrées

Décrit les fonctions intégrées, telles que Sum ou Previous, auxquelles vous pouvez accéder à partir d'une expression.

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

Code personnalisé et références d'assembly dans les expressions dans le Concepteur de rapports (SSRS)

Explique comment vous pouvez accéder aux classes CLR intégrées Math et Convert, à d'autres classes CLR, à des fonctions de la bibliothèque d'exécutables Visual Basic ou à des méthodes d'un assembly externe.

Explique comment vous pouvez accéder à du code personnalisé qui est incorporé dans votre rapport ou que vous compilez et installez en tant qu'assembly personnalisé à la fois sur le client de rapports et sur le serveur de rapports.

=Sum(Fields!Sales.Value)

=CDate(Fields!SalesDate.Value)

=DateAdd("d",3,Fields!BirthDate.Value)

=Code.ToUSD(Fields!StandardCost.Value)

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

Validation d'expressions

Lorsque vous créez une expression pour une propriété d'élément de rapport spécifique, les références que vous pouvez inclure dans l'expression dépendent des valeurs que la propriété d'élément de rapport peut accepter et de l'étendue dans laquelle la propriété est évaluée. Par exemple :

  • Par défaut, l'expression [Sum] calcule la somme des données qui se trouvent dans l'étendue au moment où l'expression est évaluée. Pour une cellule de tableau, l'étendue dépend des membres du groupe de lignes et de colonnes. Pour plus d'informations, 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).

  • Pour une propriété Font, la valeur doit être celle du nom d'une police.

  • La syntaxe de l'expression est validée au moment du design. La validation de l'étendue de l'expression se produit lorsque vous publiez le rapport. Lorsque la validation dépend des données effectives, les erreurs ne peuvent être détectées qu'au moment de l'exécution. Certaines de ces expressions produisent le message d'erreur #Error dans le rapport rendu. Pour faciliter l'identification des problèmes liés à ce type d'erreur, vous devez utiliser le Concepteur de rapports dans Business Intelligence Development Studio. Le Concepteur de rapports fournit une fenêtre Sortie qui indique des informations supplémentaires sur ces erreurs.

Pour plus d'informations, consultez Référence dans une expression (Générateur de rapports version 3.0 et SSRS).

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