La solution que nous allons créer doit masquer les ancêtres indésirables lors du rendu du rapport, sans affecter le modèle de données. Nous pouvons atteindre notre but au moyen d’une combinaison de fonctionnalités de Reporting Services et d’Analysis Services. La technique pour masquer les ancêtres du membre sélectionné par l’utilisateur
Solution
comporte les trois parties distinctes suivantes, toutes référencées à partir de la définition du rapport :
1. Création et référencement d’un ensemble de données (Dataset) qui utilise MDX pour fournir la propriété de numéro de niveau du paramètre de rapport sélectionné.
2. Création d’un bloc de code Visual Basic (VB) qui compare le niveau de membre à afficher au niveau de membre du paramètre sélectionné par l’utilisateur.
3. Application de la propriété Visibility pour les groupes de lignes afin de mettre en pratique le bloc de code VB.
Création du Dataset pour le numéro de niveau du paramètre
Nous pouvons utiliser du code MDX « brut » pour définir un nouveau Dataset dans Reporting Services. Il est possible d’entrer le code MDX en mode éditeur de requête générique, ce qui nous permet d’avoir non seulement les valeurs d’affichage (CAPTION et UNIQUENAME), mais de fournir aussi la propriété LEVEL.ORDINAL, laquelle sera ensuite référencée par le code VB. L’éditeur de requête générique est disponible dans un nouveau Dataset en cliquant sur le bouton Design Mode en haut de l’onglet Data dans la définition RDL. Ce bouton bascule le mode Dataset. Nous entrons le code MDX (il est saisi directement dans le volet de requête de données de l’onglet Data de la définition RDL), lequel fournit la propriété LEVEL.ORDINAL du paramètre sélectionné par l’utilisateur. Le Dataset, nommé DS Properties, est créé par le code MDX illustré au listing 1 et est référencé dans le projet Reporting Services complet.
Insertion du bloc de code VB comparant le niveau de membre affiché et le niveau de membre du paramètre sélectionné par l’utilisateur.
Le bloc de code VB que nous allons insérer dans la définition du rapport est une fonction qui compare le niveau de hiérarchie du paramètre sélectionné par l’utilisateur au niveau de ligne courant dans le rapport. Le niveau de ligne du rapport correspond au niveau dans la hiérarchie qui limite notre solution aux hiérarchies régulières. L’algorithme, que vous pouvez voir sur le listing 2, compare le niveau de hiérarchie du paramètre sélectionné par l’utilisateur (intLevel) au niveau de ligne (intRowLevel) et retourne « False » lorsque le niveau de paramètre est inférieur au niveau de ligne ; sinon il retourne « True ». Pour entrer le code personnalisé dans une définition de rapport, sélectionnez Report, Report Properties dans le menu au niveau de l’environnement de développement Reporting Services, à savoir dans BIDS (Business Intelligence Development Studio). Cliquez sur l’onglet Code et entrez le code VB, comme le montre la figure 3.
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
Les plus consultés sur iTPro.fr
- Forum INCYBER : le cybercrime change d’échelle, l’Europe cherche sa riposte
- IA : ne déléguez pas votre cœur de métier à une boîte noire
- Identité de l’IA : 4 priorités pour anticiper plutôt que subir la régulation
- Sauvegarder les données ne suffit plus : il faut refonder le poste de travail
Articles les + lus
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
Coder vite, mais coder juste : trouver l’équilibre à l’ère de l’IA
Mixité dans la Tech : en 2026, un choix de souveraineté stratégique
À la une de la chaîne Tech
- 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
- Coder vite, mais coder juste : trouver l’équilibre à l’ère de l’IA
- Mixité dans la Tech : en 2026, un choix de souveraineté stratégique
