Leçon 6 : Ajout d'un sous-rapport avec des paramètres

Nouveau : 17 juillet 2006

Les sous-rapports constituent un moyen d'incorporer des rapports dans un rapport principal. Contrairement aux rapports d'extraction qui ouvrent un rapport distinct dans la même fenêtre, un sous-rapport s'affiche comme élément de rapport dans le rapport principal. Même si n'importe quel rapport peut être un sous-rapport, généralement vous devez mettre en forme un rapport à utiliser comme sous-rapport afin d'améliorer la façon dont il apparaît dans le rapport principal.

Dans la prochaine leçon, vous allez ajouter le rapport ContactInformation au rapport Resellers Worldwide en tant que sous-rapport. Vous allez apprendre à ajouter le sous-rapport au tableau et à définir ses propriétés dans le rapport principal, et notamment à lier les paramètres du rapport principal à ceux du sous-rapport.

Pour ouvrir le projet Report Server Advanced Parameters Tutorial (Didacticiel sur les paramètres avancés)

  1. Dans SQL Server Business Intelligence Development Studio, ouvrez, s'il ne l'est déjà, le projet de serveur de rapports Advanced Parameters Tutorial (Didacticiel sur les paramètres avancés).

  2. Dans l'Explorateur de solutions, double-cliquez sur le rapport Resellers Worldwide. Le rapport s'ouvre en mode Mise en page.

Dans la procédure suivante, vous allez ajouter un paramètre à valeurs multiples ContactDisplayFields au rapport principal. Lorsque vous définissez les propriétés de paramètre sur le sous-rapport, vous liez le paramètre à valeurs multiples du rapport principal ContactDisplayFields au paramètre à valeurs multiples du sous-rapport FieldsToDisplay.

Pour ajouter un paramètre à valeurs multiples ContactDisplayFields

  1. En mode Mise en page, cliquez sur la surface de dessin. Les éléments de menu Rapport et Format apparaissent.

  2. Dans le menu Rapport, sélectionnez Paramètres du rapport. La boîte de dialogue Paramètres du rapport s'ouvre.

  3. Cliquez sur Ajouter. Un nouveau paramètre est créé avec des valeurs par défaut.

  4. Dans la section Propriétés, dans la zone de texte Nom, tapez ContactDisplayFields. Vérifiez que le type de données est String.

  5. Dans la zone de texte Demander, entrez les informations à afficher dans le sous-rapport :

  6. Sélectionnez l'option Autoriser une valeur vide.

  7. Sélectionnez l'option Valeurs multiples.

  8. Dans la section Valeurs disponibles, vérifiez que l'option Sans requête est bien sélectionnée et définissez les valeurs disponibles à l'aide du tableau suivant :

    Étiquette Valeur

    Phone

    Phone

    Email

    EmailAddress

    None

    <Vide>

  9. Dans la section Valeurs par défaut, sélectionnez Sans requête et collez l'expression suivante dans la zone de texte Valeur : EmailAddress.

  10. Cliquez sur OK.

  11. Cliquez sur Aperçu.

Comme vous avez fourni une liste des valeurs disponibles, la valeur Sélectionner tout a été automatiquement ajoutée à la liste déroulante du paramètre ContactDisplayFields.

Dans la procédure suivante, vous allez ajouter un paramètre à valeurs multiples Colors. Dans ce didacticiel, vous allez définir deux valeurs pour le paramètre à valeurs multiples Colors. Lorsque vous définissez les propriétés de paramètre pour le sous-rapport, vous liez une seule valeur du paramètre à valeurs multiples à chacun des paramètres du sous-rapport BackgroundColor et FontColor.

Pour ajouter un paramètre à valeurs multiples Colors

  1. En mode Mise en page, dans le menu Rapport, sélectionnez Paramètres du rapport. La boîte de dialogue Paramètres du rapport s'ouvre.

  2. Cliquez sur Ajouter. Un nouveau paramètre est créé avec des valeurs par défaut.

  3. Dans la section Propriétés, dans la zone de texte Nom, tapez Colors. Vérifiez que le type de données est String.

  4. Remplacez la demande existante par le texte suivant : Choisissez les couleurs d'arrière-plan et de police :.

  5. Sélectionnez l'option Valeurs multiples.

  6. Désactivez la case à cocher Autoriser une valeur vide.

  7. Dans la section Valeurs disponibles, vérifiez que l'option Sans requête est bien sélectionnée. Laissez vide le tableau de valeurs.

  8. Dans la section Valeurs par défaut, sélectionnez Sans requête et collez les deux valeurs suivantes dans les zones de texte Valeur : #C9DEF6 et SlateBlue.

    Vous devez définir deux valeurs pour ce paramètre. La première valeur du tableau doit être passée au sous-rapport comme couleur d'arrière-plan. La seconde valeur du tableau doit être passée au sous-rapport comme couleur de police.

    Dans cet exemple, la valeur de la couleur d'arrière-plan est le code couleur hexadécimal RVB #C9DEF6, la couleur de police est la couleur Web SlateBlue.

  9. Cliquez sur OK.

  10. Cliquez sur Aperçu.

    Comme aucun ensemble de valeurs disponibles n'a été défini pour le paramètre Colors, aucune valeur Sélectionner tout n'apparaît dans sa liste déroulante.

Dans la procédure suivante, vous allez préparer une place dans le tableau afin d'ajouter l'élément de rapport du sous-rapport. Vous allez ajouter une seconde ligne à l'en-tête de groupe du tableau. Vous allez fusionner les colonnes afin que la ligne ne comporte que deux zones de texte, l'une étant assez large pour afficher le sous-rapport. Puis, vous allez définir la visibilité de cette ligne d'en-tête afin d'obtenir le comportement attendu pour la valeur du paramètre ShowSalesDetails: garantir la visibilité de cette ligne de détails des informations sur le contact quand le paramètre a la valeur true.

Pour ajouter une nouvelle ligne à l'en-tête de groupe du tableau et fusionner ses zones de texte

  1. Cliquez à l'intérieur du tableau. Les poignées du tableau apparaissent.

  2. Cliquez avec le bouton droit sur la ligne d'en-tête du groupe. Le contenu de la zone de texte commence par =Fields!Store.Value. Sélectionnez Insérer une ligne en dessous. Une deuxième ligne d'en-tête apparaît.

  3. La ligne étant toujours sélectionnée, depuis la liste déroulante de la taille de la police de la barre d'outils du rapport, sélectionnez 8.

    Pour réduire l'espace autour d'un sous-rapport, réduisez la ligne qui contiendra le sous-rapport. L'élément de rapport du sous-rapport se développera comme nécessaire, mais ne se réduira pas.

  4. Sélectionnez les zones de texte des colonnes 2, 3 et 4. Cliquez avec le bouton droit et choisissez Fusionner les cellules. Il y a maintenant deux zones de texte dans la nouvelle ligne d'en-tête.

  5. La nouvelle ligne de table étant sélectionnée, dans la fenêtre Propriétés, faites défiler l'écran jusqu'à Visibility et développez le nœud. Définissez Hidden avec =Not Parameters!ShowSalesDetails.Value.

Pour ajouter un sous-rapport à un rapport principal

  1. Dans l'Explorateur de solutions, cliquez sur le rapport ContactInformation.rdl et faites-le glisser vers la seconde zone de texte de la ligne d'en-tête, à côté de la zone de texte Contact Information.

  2. Cliquez avec le bouton droit sur la zone de sous-rapport grise, puis sélectionnez Propriétés. La boîte de dialogue Propriétés du sous-rapport s'ouvre.

  3. Cliquez sur l'onglet Paramètres, puis cliquez dans la première zone de texte Nom du paramètre. La liste déroulante s'affiche avec les quatre paramètres définis pour le rapport ContactInformation. Utilisez le tableau suivant pour définir les paramètres du sous-rapport.

    Nom du paramètre Valeur du paramètre

    ContactID

    =Fields!StoreContactID.Value

    FieldsToDisplay

    =Parameters!ContactDisplayFields.Value

    BackgroundColor

    =Parameters!Colors.Value(0)

    FontColors

    =Parameters!Colors.Value(1)

  4. Cliquez sur OK.

  5. Cliquez sur la poignée de ligne de la nouvelle ligne d'en-tête de groupe. Dans la fenêtre Propriétés, faites défiler l'écran jusqu'à Height et définissez la valeur à 0,01 ou à la valeur minimale que vous pouvez définir comme hauteur de ligne pour éliminer les espaces superflus.

  6. La propriété Height d'un élément de rapport du sous-rapport définit dans le rapport principal la hauteur minimale. L'élément de rapport du sous-rapport se développe pour accueillir le rapport auquel il est lié.

  7. Cliquez dans la zone grise du sous-rapport. Dans la fenêtre Propriétés, faites défiler l'écran jusqu'à Width et définissez la valeur à 3 ou à la largeur dont vous avez besoin pour correspondre à celle de la définition du sous-rapport.

    Pour éliminer l'espace non souhaité, la largeur de l'élément du sous-rapport doit être inférieure ou égale à celle du sous-rapport telle qu'elle apparaît dans sa définition. Le sous-rapport s'étendra dans le rapport principal en fonction des besoins, mais ne rétrécira pas.

  8. Affichez l'aperçu du rapport. Sélectionnez différentes valeurs pour FieldsToDisplay et vérifiez que le sous-rapport affiche vos sélections.

    Comme il existe désormais huit paramètres définis, la barre d'outils du rapport se retrouve quelque peu encombrée. Pour masquer la barre d'outils en mode aperçu, cliquez sur le bouton Afficher ou masquer la zone de paramètres de la barre d'outils du rapport.

Dans la procédure suivante, vous allez définir le paramètre Colors en tant que paramètre interne. Les paramètres internes peuvent être utilisés comme variables internes au rapport ; vous pouvez définir leurs valeurs via la barre d'outils du rapport, par exemple.

Pour définir un paramètre de rapport comme interne

  1. Dans le menu Rapport, sélectionnez Paramètres du rapport. La boîte de dialogue Paramètres du rapport s'ouvre.

  2. Dans la liste Paramètres, sélectionnez Colors.

  3. Dans la fenêtre Propriétés, sélectionnez l'option Interne.

    L'affectation de la valeur « Interne » à un paramètre signifie que ce paramètre n'apparaît que dans la définition du rapport. Lorsque vous publiez le rapport sur le serveur, vous ne pouvez pas gérer ce paramètre depuis le serveur de rapports. La barre d'outils du rapport n'affichera pas d'invite pour ce paramètre et si vous utilisez ce rapport comme sous-rapport, le paramètre ne figure pas dans la liste des paramètres de sous-rapport d'un rapport principal.

  4. Cliquez sur OK.

  5. (Facultatif) Cliquez sur Aperçu. Aucune invite ne s'affiche sur la barre d'outils pour le paramètre Colors.

Dans la leçon 8, après avoir publié le rapport sur le serveur de rapports, vous masquerez plusieurs paramètres du rapport Resellers Worldwide pour offrir un aspect moins encombré.

Étapes suivantes

Dans cette leçon, vous avez ajouté avec succès une ligne supplémentaire à l'en-tête de groupe du tableau, fusionné des cellules et ajouté un sous-rapport avec des paramètres à une cellule. Vous avez défini la visibilité sur cette ligne en fonction de la valeur du paramètre de rapport ShowSalesDetails. Dans la prochaine leçon, vous allez ajouter un paramètre à l'exemple de rapport AdventureWorks existant « Territory Sales Drilldown ». Voir Leçon 7 : Création d'un rapport d'extraction.

Voir aussi

Autres ressources

Utilisation de paramètres dans Reporting Services
Utilisation des éléments de rapport

Aide et Informations

Assistance sur SQL Server 2005