Résultat du tableau croisé dynamic Excel par rapport au résultat de la requête MDX exécutée

J'exécute une requête MDX récupérée à partir de Excel PivotTable connecté à un cube OLAP dans SQL Server Management Studio. J'ai récupéré la requête MDX en utilisant SQL Profiler tout en l'actualisant dans Excel.

Je suis juste en faisant glisser dans un atsortingbut de dimension dans la boîte "Lignes" de tableau croisé dynamic. Excel me montre tous les identifiants des clients en les plaçant pour chaque ligne (comme le ferait une simple sélection en T-SQL). Cela correspond à ce que j'attendais.

J'ai remarqué que pendant qu'Excel affiche l'atsortingbut de dimension sélectionné sur Lignes, l'utilisation de la requête MDX récupérée dans le studio de gestion l'affiche dans Colonnes.

La requête MDX que je reçois de SQL Profiler est:

SELECT NON EMPTY Hierarchize ( { DrilldownLevel ( { [CustomerDimension].[CustomerId].[All] } , , , INCLUDE_CALC_MEMBERS ) } ) DIMENSION PROPERTIES PARENT_UNIQUE_NAME , HIERARCHY_UNIQUE_NAME ON COLUMNS FROM [DWH] CELL PROPERTIES VALUE , FORMAT_STRING , LANGUAGE , BACK_COLOR , FORE_COLOR , FONT_FLAGS 

Quelqu'un peut-il expliquer pourquoi?

Parce que vous n'avez pas demandé plus d'un Axis . Et COLUMNS est l' alias pour Axis ( 0 ). Pour vous, il peut être plus facile de lire datatables dans un affichage "Lignes". Pour Excel, ce qui count, ce sont les informations sur chaque Axe.

Je voudrais append une information supplémentaire pour vous aider dans votre exploration MDX.

Extension de tableau croisé dynamic Olap

Je ne suis en aucun cas affilié à cette extension, mais c'est vraiment utile.

MODIFIER:

Vous pouvez définir votre axe (0) sous la forme d'un SET { } vide et afficher vos clients dans l'axe ROWS .

 SELECT { } on 0, [CustomerDimension].[CustomerId].[All].CHILDREN ON 1 FROM [DWH]