2017-07-28 2 views
0

J'ai une situation où j'ai une valeur nulle entrant dans une colonne et cette valeur doit être remplacée par une autre valeur.Remplacement d'un champ nul dans mdx

mdx actuel

select 
non empty { [measures.[Color count]} on columns 
,non empty { [ColorColor].[Color].[Color].allmembers} 
Dimention properties 
member caption 
,member_unique_name 
on rows 
from [Colors] 

Résultats actuels

Color  Color Count 
null  1 
Red  1 
Blue  1 
Purple 1 
Black  1 

Résultats escomptés

Color  Color Count 
Silver 1 
Red  1 
Blue  1 
Purple 1 
Black  1 

Fondamentalement, je dois remplacer le nul avec la couleur "argent". De plus, le null doit être remplacé dans mdx et non dans ssrs.

Répondre

1

En utilisant WITH MEMBER vous pouvez créer un nouvel élément, en lui donnant le nom que vous voulez, et lui dire d'obtenir ses valeurs de l'élément NULL. Ensuite, vous pouvez masquer les éléments que vous ne voulez pas en utilisant le deuxième argument de la fonction EXCEPT.

with member [ColorColor].[Color].[Color].[MyNewName] 
AS [ColorColor].[Color].[Color].[null] 
select 
non empty { [measures.[Color count]} on columns 
,non empty { 
[ColorColor].[Color].[Color].[MyNewName], 
EXCEPT({[ColorColor].[Color].[Color].allmembers},{[ColorColor].[Color].[Color].[null]}) 
} 
Dimention properties 
member caption 
,member_unique_name 
on rows 
from [Colors]