使用Mondrian获取每个轴的MDX查询级别

时间:2013-03-31 07:18:58

标签: mdx mondrian

使用Mondrian,我想在每个轴的MDX查询中获得Level。

例如:

  

SELECT NON EMPTY {Hierarchize({[Product]。[Product Family] .Members})} ON COLUMNS

     

NON EMPTY CrossJoin([时间]。[季]。成员,[商店]。[商店名称]。成员)行“

     

FROM [Sales]

     

WHERE {Hierarchize({[Measures]。[Unit Sales]})}

预期结果如下:

专栏:[产品]。[产品系列]

行:[时间]。[季度],[商店]。[商店名称]

最近我使用了这段代码:

  

轴[I] .getSet()。的getType()。getLevel()

它适用于COLUMNS轴,但它不适用于ROWS轴。 我想这是由ROWS轴上的arity引起的,它大于1。

有没有办法在arity大于1的轴上获得等级?

感谢。

1 个答案:

答案 0 :(得分:0)

这个怎么样:

with
member [Product].[Product Family].[Row current member] as
[Time].[Quarter].currentmember.name + ', ' +
[Store].[Store Name].currentmember.name

然后在select子句中包含列轴中的成员:

SELECT NON EMPTY Hierarchize({[Product].[Product Family].Members,
                 [Product].[Product Family].[Row current member]}) ON COLUMNS

NON EMPTY CrossJoin([Time].[Quarter].Members, [Store].[Store Name].Members) ON ROWS

FROM [Sales]

WHERE {Hierarchize({[Measures].[Unit Sales]})}