2012-07-16 60 views
0


我遇到了一個問題,它真的讓我感到害怕。順便說一下,我是Mdx的新手,並使用olap4j Api來構建MDX查詢。我的問題是與根元素,以下是代碼片段:使用olap4j獲取Mdx中維度的根級別Api

 Query myQuery = new Query("Generated Query", sales); // where sales is an object of type cube. 
QueryDimension productDimension = myQuery.getDimension("Product"); 

所以,現在我有一個維度產品的對象使用。當我將productDimension添加到軸時,我希望像這樣的[Product].[All Products]這樣的東西成爲MdxQuery的一部分。我可以硬編碼[All Products],但如果dimensionName傳遞的不是產品,比如說存儲它將是一個問題。所以我想要的是,是否有可能通過olap4j動態獲取某些名稱,如[所有產品]或[所有商店]或[確定度量值],這相當於[所有度量值]。

PS:這是一種方法,它接受維度名稱並返回維度的第一個成員,如[Product]。[所有產品]如果產品已通過或[Measures]。[所有度量/某些度量值] if措施已通過。

回答

1

我能弄清楚如何獲得根元素要獲得像所有產品或基本上所有成員的名字,然後我需要做一些事情,如下圖所示的一些事情:

說,我想要的一切成員名稱爲productDimension然後[產品類型維對象],

Member allMember = productDimension.getDimension().getDefaultHierarchy().getRootMembers().get(0); 

    productDimension.include(Selection.Operator.MEMBER, allMember); 

通過這樣做allMember將MDX查詢的一部分。