2017-08-22 2 views
1

je dois renommer les en-têtes de dimension dans le tableau de résultat par exemple, je peux changer les noms de mesure comme suit:Renommer la dimension en-têtes dans MDX requêtes

WITH Member x AS [Measures].[Num of Project] 
SELECT 
NON Empty {x} ON COLUMNS, 
NON Empty {[DimensionName].[HierarchyName].[LevelName]} on ROWS 
FROM [CubeName] 

Et ce retour de requête MDX une table comme résultat dans le serveur d'analyse de comme l'interface que:

|---------------------|------------------| 
|  LevelName  |   x  | 
|---------------------|------------------| 
|  Member 1  |   34  | 
|---------------------|------------------| 
|  Member 2  |   12  | 
|---------------------|------------------| 
         . 
         . 
         . 

Mais je dois renommer les noms de niveau de dimension affichée par exemple, je veux renommer « levelName » au « niveau 1 » comme nom affiché dans les en-têtes de table. J'ai essayé la requête MDX suivante:

WITH Member x AS [Measures].[Num of Project] 
SELECT 
NON Empty {x} ON COLUMNS, 
NON Empty {[DimensionName].[HierarchyName].[LevelName]} as [Level 1] on ROWS 
FROM [CubeName] 

Mais cela ne fonctionne pas et ne pas excepter l'erreur. 'LevelName' est toujours affiché dans l'en-tête du tableau, pas 'Level 1'. J'ai besoin de cela dans Adomd Connection pour distinguer les dimensions les unes des autres pour certains calculs. Je ne trouve aucune réponse nulle part. Je suis nouveau dans MDX, j'espère que je peux expliquer mon problème clairement.

Répondre

0

Vous pouvez faire la même chose pour une dimension que vous l'avez fait pour la mesure. Par exemple, vous pouvez faire quelque chose comme ça (vous devrez peut-être faire quelques changements pour adapter à votre cas)

WITH Member [Measures].[x] AS [Measures].[Num of Project] 
    Member [Measures].[Level 1] AS [DimensionName].[HierarchyName].CurrentMember.membervalue 
SELECT 
NON Empty {[Measures].[x], [Measures].[Level 1]} ON COLUMNS, 
NON Empty {[DimensionName].[HierarchyName].[LevelName]} on ROWS 
FROM [CubeName] 

Comme vous pouvez le remarquer, cela ne renomme pas l'en-tête de la dimension (qui devrait normalement être fait par l'outil de création de rapports), il créera une nouvelle colonne dans votre ensemble de données avec l'en-tête souhaité.

+0

Cela fonctionne s'il est supprimé deuxième mot clé 'WITH'. Il y a une petite erreur de syntaxe. Mais merci pour la solution. –

+0

Heureux que cela a aidé. S'il vous plaît marquer une solution si elle a résolu votre problème plus ou moins. – BICube