> Tech > Développement et réduction de regroupements multiples

Développement et réduction de regroupements multiples

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

Quand j'ai commencé à  utiliser Reporting Services, j'avais de nombreuses questions sur la manière d'obtenir les fonctionnalités souhaitées. Je me suis posé la première question lorsque j'ai commencé à  ajouter de l'interactivité aux rapports. Les clients se tournent fréquemment vers moi pour des rapports qui affichent des données récapitulatives, mais

Développement et réduction de regroupements multiples

avec une possibilité de les développer ou de les explorer, afin
de visualiser les détails sans avoir à  exécuter des rapports
supplémentaires. Dans Reporting Services, vous pouvez atteindre
ce niveau d’interactivité au moyen d’une valeur de
propriété standard appelée Visibility, qui masque ou affiche
les détails des enregistrements ou de sections entières d’un
rapport. Les utilisateurs contrôlent la visibilité lors du rendu
du rapport. Toutefois, j’avais un problème lié à  un aspect
concernant la création de ce type de rapport interactif : les
utilisateurs ne pouvaient pas développer ou réduire plus
d’une section agrégée (à  savoir, regroupée) à  la fois. Par
exemple, un rapport utilisant un regroupement par zones
géographiques et comportant plusieurs régions, telles que
Nord-est et Sud-ouest, obligeait les utilisateurs à  développer
et réduire chaque région une par une pour afficher et masquer
les enregistrements sous-jacents, une tâche pouvant
être longue. Le problème a été exacerbé lorsque les utilisateurs
ont souhaité imprimer le rapport développé. Il leur fallait
développer chacune des régions avant d’imprimer le rapport
complet. Ma solution a été d’employer un paramètre
intitulé Expand_All qui développe ou réduit automatiquement
chaque regroupement.
Pour illustrer cette fonctionnalité, prenons un exemple
de rapport d’exploration détaillée proposé par Reporting
Services et intitulé Territory Sales Drilldown. Ce rapport est
situé dans le répertoire d’installation de base de Reporting
Services (: Program Files\Microsoft SQL ServerMSSQL\Reporting Services\Samples\Reports). Ouvrez une
copie du rapport dans Visual Studio .NET et enregistrez-la en
tant que nouveau rapport intitulé Territory Sales Drilldown
Parameters. Celui-ci ne comporte aucun paramètre par défaut.
Pour ajouter le paramètre Expand_All au rapport, sélectionnez
dans le menu Report l’option Report Parameters,
puis fournissez les diverses informations requises dans la
boîte de dialogue qui apparaît. Concernant le nom du paramètre,
saisissez Expand_All (les noms de paramètres ne peuvent
pas contenir d’espaces). Concernant le prompt, tapez
Expand All. Définissez le type de données Boolean avec une
valeur par défaut non interrogée False, afin qu’au moment
du rendu, les éléments du rapport soient configurés de telle
sorte que le paramètre Expand_All contrôle leur caractère
développé ou masqué initial.
Maintenant que vous avez défini le paramètre, vous pouvez
l’associer à  une expression dans le rapport. L’environnement
de conception de Reporting Services offre de nombreuses
possibilités d’utilisation des expressions. Par
exemple, pour les propriétés de rapport qui les prennent en
charge, vous pouvez employer des expressions avec des valeurs de paramètres afin de définir lesdites propriétés.
Dans le cas du paramètre Expand_All, vous pouvez employer
la valeur d’exécution du paramètre (True or False) dans une
expression afin de développer ou de réduire tous les regroupements
du rapport en une seule fois. J’utilise l’expression
simple suivante pour contrôler la visibilité des regroupements
dans le rapport Territory Sales Drilldown Parameters :

=IIF(Parameters!Expand_All.Value
= False,True,False)

Lorsque vous appliquez cette expression
aux propriétés de visibilité des lignes Detail
et SalesPerson, les utilisateurs peuvent changer
la visibilité (basculement d’affichage) appliquée
au rapport en fonction de la valeur
du paramètre. La fonction IIF de l’expression
évalue la valeur par défaut du paramètre
Expand_All ; si la valeur est False, la propriété masquée
aura la valeur True et le rapport s’affichera sous sa forme réduite
à  l’ouverture.
Il vous reste un dernier détail à  configurer : vous devez
vous assurer que l’image de basculement de l’affichage se
présente correctement sous la forme d’un signe plus (+)
lorsque les détails du rapport sont réduits et d’un signe
moins (-) lorsque les détails sont développés. Vous pouvez
recourir à  la même expression que celle employée pour
contrôler la visibilité des regroupements afin de contrôler
l’affichage initial de l’image de basculement. La propriété de
cette image existe sur le champ auquel elle fait référence :
dans ce cas, les champs SalesPerson et OrderNumber contiennent
la propriété en question. Pour définir la propriété
InitialToggleState, cliquez avec le bouton droit de la souris
sur le champ SalesPerson, sélectionnez Properties, puis cliquez
sur Advanced pour ouvrir la boîte de dialogue
Advanced Properties. Sélectionnez ensuite l’onglet Visibility
illustré à  la figure 1 pour utiliser une expression destinée à 
s’assurer que l’image de basculement correspond à  la sélection
de l’utilisateur. Notez qu’initialement, la section
Visibility de l’onglet est définie à  Visible. Cela s’explique par
le fait que j’ai défini précédemment toute la ligne, et non uniquement
les champs SalesPerson et OrderNumber, de telle
sorte qu’elle soit masquée. Je vais utiliser le paramètre de
propriété Visibility du champ individuel afin de contrôler
uniquement l’aspect initial de l’image de basculement.
Après avoir sélectionné les paramètres appropriés au niveau
de l’onglet Visibility, vous pouvez effectuer le rendu du
rapport en mode de prévisualisation. Comme le montre la figure
2, les utilisateurs contrôlent désormais pleinement les
possibilités de développement des éléments du rapport et
l’image de basculement se présente sous la forme d’un caractère
moins (-), indiquant ainsi que les détails relatifs auxdits
éléments sont développés.

Téléchargez cette ressource

Préparer l’entreprise aux technologies interconnectées

Préparer l’entreprise aux technologies interconnectées

Avec la « quatrième révolution industrielle », les environnements hyperconnectés entraînent de nouveaux risques en matière de sécurité. Découvrez, dans ce guide Kaspersky, comment faire face à cette nouvelle ère de vulnérabilité.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010