我有一个问题,真的杀了我。 BTW我是Mdx的新手,并使用olap4j Api构建MDX查询。我的问题在于根元素,以下是代码片段:
Query myQuery = new Query("Generated Query", sales); // where sales is an object of type cube.
QueryDimension productDimension = myQuery.getDimension("Product");
所以现在我有一个使用尺寸Product的对象。当我将[Product].[All Products]
添加到轴时,我希望像productDimension
这样的东西成为MdxQuery的一部分。我可以对[All Products]
进行硬编码,但如果传递的dimensionName不是Product,那么说Stores就是个问题。所以我想要的是,是否可以获取某些东西得到像[所有产品]或[所有商店]或[明确的措施]这样的名称,它等同于[All Measures]动态使用olap4j?
PS:这是一个方法,它接受维度名称并返回维度的第一个成员,如[Product]。[All Products]如果产品通过或[Measures]。[所有度量/一些度量]如果度量通过。
答案 0 :(得分:1)
我能够弄清楚如何获得根元素要获得像All Products或基本上所有成员名称的东西,那么我需要做一些事情,如下所示:
说,我想要productDimension的所有成员名称[产品的Dimension类型的对象]然后,
Member allMember = productDimension.getDimension().getDefaultHierarchy().getRootMembers().get(0);
productDimension.include(Selection.Operator.MEMBER, allMember);
通过这样做,allMember将成为Mdx查询的一部分。