A l’évidence, l’approche consistant à changer la valeur dans la requête et à modifier le rapport dans l’onglet Layout chaque fois que vous souhaitez examiner une autre catégorie n’est pas des plus habiles. Voyons comment obtenir un nom de champ qui ne change pas, même si l’auteur du rapport souhaite
Création d’un rapport intégrant les mesures au niveau des lignes (2)
modifier la catégorie ou choisir une marque, un produit ou n’importe quel autre niveau dans la dimension Product. Nous verrons plus loin comment paramétrer cette valeur. Pour établir un nom fixe concernant le champ dans le rapport, il faut créer un membre calculé MDX. Dans MDX, vous effectuez cette opération en utilisant la clause WITH MEMBER d’une requête.
Le listing 4 montre comment modifier la requête du listing 3 en vue d’employer un membre calculé. Lors de la création du membre calculé [Product].[ Prod], le rapport verra désormais systématiquement un membre avec ce nom, indépendamment de la valeur tapée dans la clause AS de l’expression. Cela signifie que l’auteur peut changer la valeur du rapport à tout moment sans avoir à modifier ce dernier dans l’onglet Layout. L’ajout du membre calculé prépare également la voie à l’ajout d’un paramètre à la requête, ce que nous illustrerons un peu plus loin. Outre le fait qu’elle se préoccupe de la dimension Product, la requête spécifie deux mesures : Store Sales et Store Cost. Il est possible d’énumérer n’importe quel nombre de mesures et, quel que soit le nombre ajouté, la liste Fields de l’onglet Layout affichera une seule valeur : Measures_MeasuresLevel.
Indépendamment du nombre de mesures retourné, la fenêtre Fields présente seulement ce champ unique et la matrice croît automatiquement pour afficher toutes les mesures renvoyées par la requête MDX, avec une mesure par ligne. Pour concevoir cet exemple de rapport, vous utilisez un contrôle de matrice dans Reporting Services, comme l’illustre la figure 1. Vous placez les valeurs Time dans la zone de texte Columns et vous pouvez ajouter plusieurs niveaux de temps et définir le groupe afin que les utilisateurs puissent développer et réduire les données. Ensuite, vous ajoutez le champ Measures_MeasuresLevel à la zone de texte Rows.
Enfin, vous ajoutez le champ Product_Prod à la zone de texte Data. Notez qu’il vous faut modifier la formule par défaut située dans la zone de texte Data, afin qu’elle ne commence pas par la fonction First, mais par la fonction Sum. La fonction First dans la zone de texte Rows est acceptable car elle retourne simplement le nom de chaque mesure, pas sa valeur.
Cela peut vous sembler étrange de placer le membre calculé [Product].[Prod] dans la zone de texte Data, mais n’oubliez pas que Reporting Services aplatit le cellset en rowset et que les valeurs numériques sont alors placées dans ce que l’instruction MDX affiche sur l’axe Columns. Par conséquent, le fait de placer le champ Product_ Prod dans la zone de texte Data de la matrice fait apparaître les nombres corrects et les noms des mesures remplissent la zone de texte Rows.
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
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
