2014-07-23 58 views
0

我使用下面的MDX拉参数总是返回至少一个行:MDX - 即使没有数据可用

WITH 
    MEMBER [Measures].[Label] AS [Dim].[Hier].CURRENTMEMBER.NAME 
    MEMBER [Measures].[Value] AS [Dim].[Hier].CURRENTMEMBER.UNIQUENAME 

SELECT 
{ 
    [Measures].[Label] 
    , [Measures].[Value] 
} 
ON 0, 
    NONEMPTY([Dim].[Hier].children, [Measures].[Measure]) 
ON 1 
FROM [Cube] 
WHERE 
(
-- Criteria 
) 

有时候,选择某些筛选条件的查询结果为空集时。相反,我希望它在值和标签中都显示“N/A”。它在MDX中可行吗?还是应该使用SSRS计算成员对结果数据集中的行进行计数并替换?

回答

3

喜欢的东西:

WITH 
SET [MySet] AS NONEMPTY([Dim].[Hier].children, [Measures].[Measure]) 
MEMBER [Measures].[Label] AS [Dim].[Hier].CURRENTMEMBER.NAME 
MEMBER [Measures].[Value] AS [Dim].[Hier].CURRENTMEMBER.UNIQUENAME 
MEMBER [Dim].[Hier].[All(likely)].[N/A] AS 'N/A' 
SELECT 
{[Measures].[Label] , [Measures].[Value] } 
ON 0, 
IIF(count([MySet]) = 0, {[Dim].[Hier].[All(likely)].[N/A]}, [MySet]) 
ON 1 
FROM 
[Cube] 
WHERE 
(-- Criteria) 
+0

工程就像一个魅力,谢谢你的帮助。有没有,但是还有一种方法可以显示'N/A'值? – kyooryu

相关问题