Я создал измерение с родительско-дочерней иерархией следующим образом:
<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.
Например: у меня есть строка с идентификатором 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
Я не хочу использовать всех родителей ребенка, чтобы получить его детей.
Пожалуйста, помогите мне.