使用其显示名称获取属性过滤器?

时间:2012-08-27 09:50:23

标签: ssas mdx analysis cubes

我正在尝试使用Date过滤器来设计MDX查询,这是一个层次结构属性。现在,我需要将属性过滤器值放在“where”子句中。当我拖放属性时说 - '2012 ',它会转换为其他格式,如'[Date]。[Fiscal Hierarchy]。[Year]。& [2.012E9]',而在左窗格显示中它显示为'YR 2012'..

如何控制此转化?我不确定它在什么基础上转换这个属性?...

我需要根据用户选择在程序中动态构建MDX查询。当用户选择“2012”时,如何确定它是'2.012E9'?或者有没有办法改变MDX中的过滤条件,这样我就可以在不使用[2.012E9]字符串的情况下实现这一点?

提前致谢..

 SELECT 
[Subjects].[Name] on Rows,

[Student].Name  ON COLUMNS 
FROM Cube    
where 
 [Date].[Fiscal Hierarchy].[Season].&[**2.0121E9**]

-- But the left side pane(Cube browser) shows the attribute as 'YEAR 2012'

2 个答案:

答案 0 :(得分:2)

每个成员都有unique namedisplay name。 在左侧窗格中,您会看到display name。在Mdx查询中,使用了成员的密钥(请参阅MSDN)。

如果您想更改唯一名称,则必须更改密钥。

答案 1 :(得分:1)

我可以通过更改这样的查询来完成此操作:

选择 [主题]。[名称]在行上,

[学生]。列上的名字 来自立方体 哪里   [日期]。[财政层级]。[季节]。[2012年]