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
Plan de sécurité Microsoft 365
Les attaquants savent comment prendre le contrôle de votre tenant Microsoft 365, et vous, savez-vous comment le reprendre en main ?
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Fuites de données : la France, 2ème pays le plus touché au monde début 2026
- Nomios accélère sur la cybersécurité industrielle avec un SOC renforcé et une Factory OT immersive
- Femmes et métiers de la tech : une attractivité réelle freinée par des stéréotypes persistants
- Reprendre le contrôle de son SI : la clé d’un numérique à la fois souverain et responsable
Articles les + lus
Femmes et métiers de la tech : une attractivité réelle freinée par des stéréotypes persistants
Moderniser le développement logiciel : de la fragmentation à l’intégration
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
À la une de la chaîne Tech
- Femmes et métiers de la tech : une attractivité réelle freinée par des stéréotypes persistants
- Moderniser le développement logiciel : de la fragmentation à l’intégration
- 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
