2013-04-04 184 views
0

一个在我的架构尺寸的雪花模式是仿照作为一个雪花模式具有如下表结构:多层次

fact table -> criteria_value -> criteria -> Domain 

蒙德里安模式:

<Dimension type="StandardDimension" foreignKey="id_value" highCardinality="false" name="Researched Value"> 
    <Hierarchy name="Researched Value" hasAll="true" primaryKey="id_va" primaryKeyTable="criteria_value"> 
    <Join leftAlias="criteria_value" leftKey="id_va" rightAlias="criteria" rightKey="id_c"> 
     <Table name="criteria_value"> 
     </Table> 
     <Join leftAlias="criteria" leftKey="id_c" rightAlias="domain" rightKey="id_domain"> 
     <Table name="criteria" alias=""> 
     </Table> 
     <Table name="domain" alias=""> 
     </Table> 
     </Join> 
    </Join> 
    <Level name="Domain" table="domain" column="desc_d_Eng" type="String" uniqueMembers="true" levelType="Regular" hideMemberIf="Never"> 
    </Level> 
    <Level name="Criteria" table="criteria" column="desc_c_Eng" uniqueMembers="false"> 
    </Level> 
    <Level name="Value" table="criteria_value" column="desc_va_Eng" uniqueMembers="false"> 
    </Level> 
    </Hierarchy> 
</Dimension> 

的问题是,当在Mondrian Workbench中尝试使用MDX查询:

{[Researched Value].[Mobile services].operator} ON ROWS 

我可以看到相应的值 (“移动服务”和“经营者”是水平的“域”和“标准”分别

的首批成员,但试图例如当:

{[Researched Value].[Mobile services].internet} ON ROWS 

我:

Mondrian Error:MDX object '[Researched Value].[Mobile services].[internet]' not found in cube 'Recherche'

而“互联网”是“标准”级别的成员(但它不是第一个)

为什么我看不到我所有级别的成员?

回答

0

我认为您在MDX标识符中缺少关卡的名称。正确的语法是:

[Hierarchy Name].[Level Name].[Member Name] (.[Child Member Name]) 

试试这个:

{[Researched Value].[Criteria].[Internet]}