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
Sécuriser Microsoft 365 avec une approche Zero-Trust
Découvrez comment renforcer la cyber-résilience de Microsoft 365 grâce à une approche Zero-Trust, une administration granulaire et une automatisation avancée. La technologie Virtual Tenant de CoreView permet de sécuriser et simplifier la gestion des environnements complexes, tout en complétant vos stratégies IAM, y compris dans les secteurs réglementés.
Les articles les plus consultés
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- Une baie de stockage c’est quoi ?
- Cybersécurité Active Directory et les attaques de nouvelle génération
- Et si les clients n’avaient plus le choix ?
- N° 2 : Il faut supporter des langues multiples dans SharePoint Portal Server
Les plus consultés sur iTPro.fr
- Sekoia.io : l’alternative européenne qui s’impose dans la cybersécurité
- Redéfinir la confiance à l’ère de l’IA agentique : les entreprises sont-elles prêtes pour le SOC autonome ?
- IA Agentique : la vraie rupture c’est la gouvernance humaine
- Les défaillances des pipelines de données pèsent lourdement sur la performance des grandes entreprises
Articles les + lus
Analyse Patch Tuesday Mars 2026
Une nouvelle ère de la modernisation du mainframe
Communes, entreprises ? Non, face au RGAA 5, l’IA seule ne rendra pas vos sites accessibles
DevX Summit EMEA : les développeurs au cœur de la révolution de l’IA
Adapter la sécurité OT aux réalités de l’industrie
À la une de la chaîne Tech
- Analyse Patch Tuesday Mars 2026
- Une nouvelle ère de la modernisation du mainframe
- Communes, entreprises ? Non, face au RGAA 5, l’IA seule ne rendra pas vos sites accessibles
- DevX Summit EMEA : les développeurs au cœur de la révolution de l’IA
- Adapter la sécurité OT aux réalités de l’industrie
