2

我创建了一个具有父子层次结构的维度,如下所示 -

<Dimension type="StandardDimension" visible="true" foreignKey="ContextID" 
       highCardinality="false" name="Learning Context">
  <Hierarchy name="Learning Context Level" allMemberName="All Contexts" 
       hasAll="true" primaryKey="ID">
    <Table name="LearningContext">
    </Table>
    <Level name="ID" visible="true" column="ID" type="Numeric" 
       uniqueMembers="true" levelType="Regular" hideMemberIf="Never" 
       parentColumn="ParentID">
    </Level>
  </Hierarchy>
</Dimension>

问题是,当我想得到一个孩子的孩子时,我必须把它的父母也放在 mdx 查询中。

例如 - :我有一行 id 为 5,我想看他们的孩子。现在我的 mdx 查询是..

select
    Descendants([Learning Context.Learning Context Level].&[5],
             [Learning Context.Learning Context Level].[ID], SELF_AND_AFTER) on 0
from
    StudentActivity

其中说:

Mondrian Error:MDX object '[Learning Context.Learning Context Level].&[5]' not 
found in cube 'StudentActivity'

但是当我执行以下查询时......它工作正常。

select
    Descendants([Learning Context.Learning Context Level].&[1].&[2].&[3].&[5], 
             [Learning Context.Learning Context Level].[ID], SELF_AND_AFTER) on 0
from
    StudentActivity

我不想用一个孩子的所有父母来得到它的孩子。

请帮帮我。

4

1 回答 1

0

如果使用父子层次结构,则必须准备并使用闭包表

于 2016-08-02T11:51:50.447 回答