Utilisation des attributs d’un cube dans SSRS

L’utilisation des attributs de membres d’un cube SSAS dans un rapport SSRS ne se fait pas de manière transparente.

En effet, alors que les attributs sont visibles dans l’éditeur graphique de source de données SSAS de Reporting Services, ils ne sont pas sélectionnables.

Pour y avoir accès dans un rapport, il est nécessaire de basculer en mode Requête MDX, et de modifier sa requête de la manière suivante:

SELECT

 NON EMPTY { [Measures].[...]} ON COLUMNS,
 NON EMPTY { ([Dimension].[Hierarchy].[Level].ALLMEMBERS * [Dimension].[Hierarhcy].[Level].ALLMEMBERS * ... ) }
 DIMENSION PROPERTIES MEMBER_CAPTION, MEMBER_UNIQUE_NAME, [Dimension].[Hierarchy].[Level].[Attribute]
 ON ROWS

FROM    [Cube]
WHERE  ...

Les mots clefs DIMENSION PROPERTIES permettent de passer les valeurs des attributs directement dans le résultat de la requête MDX, les rendant accessibles dans l’onglet mise en page de SSRS.

Ainsi, dans le rapport, la syntaxe à utiliser sera :

Fields!######("Nom de l'attribut")

Sources: Braulio Malaga (Avanade) / MSDN

Besoin d’amour

Voici deux nouveaux articles intéressants de Jamie Thomson (SSIS Junkie) qui valent largement d’être relayés ici.

Tout d’abord une requête SQL qui génère la liste des index sur une base. Pratique pour optimiser une requête quand on développe sur une base inconnue.

Ensuite, plus qu’un simple article, c’est une réflexion sur l’amour, ou le manque d’amour, que porte Microsoft aux développeurs BI comparés aux développeurs .NET. Je ne peux qu’être complétement d’accord avec lui sur ce point, surtout en ce moment où je suis noyé dans SSRS et son comportement mystique.

Dernièrement, le seul effort de guerre manifeste de Microsoft en BI c’est de faire du neuf avec PowerPivot et le DAX.

D’une part c’est pénible pour l’existant, alors que nous sommes encore bloqués par des bugs repérés il y a 5 ans (voir les dates des articles techniques que je link dans ce blog). C’est à se demander s’il y a encore des gens qui bossent sur les expression languages et le MDX à Redmond! Certainement pas Mosha en tout cas…

D’autre part quand on a vécu la débâcle de PerformancePoint il y a 2 ans, ça peut faire peur de ré-investir dans une nouvelle techno sortie de nulle part comme PowerPivot. Heureusement pour elle qu’elle est vachement plus sexy que PPS!

Il ne reste qu’à croiser les doigts en espérant que des efforts seront faits pour la prochaine version de SQL Server. Et quand je parle d’efforts, j’espère un peu plus que des bords ronds pour les tâches de SSIS.

Pour ceux coincés en 2005

Pour ceux coincés en SSRS 2005, je rappelle qu’on peut vivre avec une Matrix, sans trop perdre sa santé d’esprit, en utilisant la fonction InScope().

Deux articles expliquent très bien comment faire, le premier par Jorg Klein, le second par Luke Hayler. Voici d’ailleurs son super schéma directement ici:

SSRS InScope par Luke Hayler

On peut se servir de cette fonction pour changer la méthode d’agrégation ou forcer des valeurs aux niveaux des totaux, ou encore pour changer la mise en forme et paramétrer la navigation en fonction du niveau de granularité.

Pour ceux qui profitent de 2008 et des Tablix… merci de ne pas trop se moquer. C’est cool. On apprécie.

Bienvenu à Todd McDermid!

La honte sur moi, j’avais oublié Todd McDermid dans le blogroll BI, à droite du site là –>

Pour rappel, c’est un poid lourd de SSIS sur la net, il est l’auteur de nombreux composants additionnels sur le CodePlex, dont le SCD Kimball, il est également MVP SQL Server.

Ne vous inquiétez pas, maintenant tout est réparé. Je l’ai ajouté à mes flux RSS, je surveille ses nouveaux articles et pour me rattraper je ferais bientôt une petite compilation de ses meilleurs articles.

Pour les gros joueurs

Chris Webb nous avertit dans cet article de la sortie d’un whitepaper qui porte sur l’intérêt du mode de stockage ROLAP dans SSAS pour les cubes qui pèsent plusieurs téras. C’est rédigé par l’équipe de SQL CAT, et ça se télécharge ici. Personnellement je n’ai jamais eu l’opportunité de bosser sur ce genre de volumétrie, ça m’a l’air plutôt éclatant!

Tant qu’on y est, j’ai également récupéré le lien d’un e-book pour apprendre le PowerShell. C’est écrit par Tobias Weltner, MVP PowerShell, et ça se télécharge là. Je n’ai pas encore eu le temps de le lire, mais ça m’a été recommandé donc je forward!