Avec Reporting Services, il est facile de créer des rapports et de passer des paramètres à ces derniers. Avant de créer un rapport d’extraction personnalisé, vous devez connaître les valeurs des dimensions provenant du cube. Vous serez alors en mesure d’appliquer le filtre correct pour écarter les valeurs NULL des
Création du rapport
résultats.
La première étape de la création d’une extraction personnalisée consiste à utiliser Visual Studio .NET pour créer un nouveau rapport Reporting Services et définir les champs qu’il contiendra. La deuxième étape vise à créer les paramètres à passer au rapport. Dans cet exemple, vous devez créer des paramètres pour le projet et la date. Concernant la hiérarchie Date, il convient de créer une valeur pour chaque niveau (Year, Quarter, Month et Day) car une extraction est possible à ces différents niveaux. De même, si vous aviez une hiérarchie Project, il faudrait créer un paramètre pour chacun de ses niveaux.
Les valeurs NULL sont importantes car si vous êtes au niveau supérieur d’une hiérarchie, il faut passer une valeur NULL au rapport afin de pouvoir obtenir tous les enregistrements. Par exemple, si vous êtes au niveau All de la dimension Date et si vous souhaitez afficher les données pour toutes les années, vous allez passer une valeur NULL au lieu d’une valeur de date. Comme nous le verrons lors de la création de l’action, cette dernière doit déterminer le niveau d’exploration de l’utilisateur. S’il s’agit du niveau Month dans la dimension Date, l’action passera la valeur du mois dans un paramètre Month et le paramètre Day aura la valeur NULL. Heureusement, l’action passe ces valeurs aux paramètres dans Reporting Services et l’utilisateur n’a pas besoin de faire quoi que ce soit pour cela.
Si vous envisagiez de créer un paramètre pour l’année seulement, la requête initiale pourrait ressembler au code du listing 1. Notez le contrôle excessif pour NULL. Lorsque vous créez les paramètres de rapport, il est essentiel d’activer les cases à cocher « Allow null value » et « Allow blank value », comme l’illustre la figure 7. Dans cet exemple, les paramètres Year et Proj doivent avoir les deux cases à cocher activées. Ne vous souciez pas du paramètre Meas, nous allons l’aborder dans un instant.
Vous noterez que la dernière ligne de la requête est une valeur codée en dur, CompPhase IS NOT NULL. Vous voulez utiliser cette valeur uniquement lorsque l’utilisateur a fait une exploration sur CompCount. Ainsi, vous devez déterminer la mesure employée par l’utilisateur pour l’exploration détaillée et ajuster cette condition finale en conséquence. A première vue, une simple instruction CASE dans la clause WHERE semblerait être la solution, mais pour que cela fonctionne dans Reporting Services, il a fallu déplacer la requête dans une procédure stockée. Une approche simple consiste à passer un paramètre et à utiliser une instruction IF pour sélectionner l’instruction SELECT correcte. Pour la commutation, il faut passer la mesure courante de l’action dans un paramètre à Reporting Services. Par conséquent, vous allez créer un paramètre intitulé Meas et, dans ce cas, ne le laissez pas accepter des valeurs NULL ou des valeurs vides. Le code du listing 2 gère une extraction sur CompCount ou BidCount et inclut la clause WHERE appropriée.
Notez que dans ce code, le paramètre Meas détermine quelle instruction SELECT est retenue. Si vous aviez plus de deux champs d’extraction possibles, vous devriez ajouter plusieurs instructions IF afin de tous les vérifier. Par ailleurs, ne définissez pas « Allow null value » ou « Allow blank value » pour le paramètre Meas. Faites-en un paramètre obligatoire qui doit être passé à partir d’Analysis Services avec chaque appel au rapport. L’action que vous créez ensuite passera les paramètres d’Analysis Services à Reporting Services.
L’exécution de ce rapport dans sa version actuelle donne les résultats illustrés à la figure 8. Vous pouvez indiquer une valeur « comp » ou « bid » pour Meas et vous obtenez le résultat correct. Vous êtes désormais prêt à créer dans le cube Analysis Services une action qui passe les paramètres appropriés au rapport.
Téléchargez cette ressource
Microsoft 365 Tenant Resilience
Face aux failles de résilience des tenants M365 (configurations, privilèges, sauvegarde). Découvrez 5 piliers pour durcir, segmenter et surveiller vos environnements afin de limiter l’impact des attaques. Prioriser vos chantiers cyber et améliorer la résilience de vos tenants Microsoft 365.
Les articles les plus consultés
- Cybersécurité Active Directory et les attaques de nouvelle génération
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
- Afficher les icônes cachées dans la barre de notification
- Les 6 étapes vers un diagnostic réussi
Les plus consultés sur iTPro.fr
- Communication d’entreprise : la voix s’impose à nouveau comme canal critique à l’ère de l’IA
- Réforme de la facturation électronique : une préparation largement théorique
- Le futur de la cryptographie post-quantique
- Couchbase lance AI Data Plane pour industrialiser l’IA agentique
Articles les + lus
Couchbase lance AI Data Plane pour industrialiser l’IA agentique
Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
Computex 2026 : 5 signaux forts à retenir
La chaîne d’approvisionnement, point de rupture récurent du SI
Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
À la une de la chaîne Tech
- Couchbase lance AI Data Plane pour industrialiser l’IA agentique
- Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
- Computex 2026 : 5 signaux forts à retenir
- La chaîne d’approvisionnement, point de rupture récurent du SI
- Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
