选择维度中的其他层次结构

时间:2012-05-22 07:37:42

标签: mdx mondrian

我已经搜索了错误消息和各种其他关键字,但还没有 发现任何类似于我自己的问题,我可以应用它。

在我的架构中,我有以下维度:

<Dimension name="Chip">
  <Hierarchy hasAll="true" primaryKey="chip_id">
    <Table name="chip"/>
    <Level name="Reference Designator" column="ux" type="Integer"/>
    <Level name="Pad" column="pad" type="Integer"/>
    <Level name="Chip" column="chip" type="Integer"/>
  </Hierarchy>
  <Hierarchy name="Flash Pack Hierarchy" hasAll="true" primaryKey="chip_id">
    <Table name="chip"/>
    <Level name="Flash Pack" column="fp" type="Integer"/>
    <Level name="Pad" column="pad" type="Integer"/>
    <Level name="Chip" column="chip" type="Integer"/>
  </Hierarchy>
  <Hierarchy name="Bank Hierarchy" hasAll="true" primaryKey="chip_id">
    <Table name="chip"/>
    <Level name="Bank" column="bank" type="Integer"/>
    <Level name="Chip" column="chip" type="Integer"/>
  </Hierarchy>
</Dimension>

和立方体:

<Cube name="Chip Facts">
  <Table name="chip_facts"/>
  <DimensionUsage name="Machine" source="Machine" foreignKey="machine_id"/>
  <DimensionUsage name="Card" source="Card" foreignKey="card_id"/>
  <DimensionUsage name="Chip" source="Chip" foreignKey="chip_id"/>
  <DimensionUsage name="Failure" source="Failure" foreignKey="failure_id"/>
</Cube>

我可以查询:

select
  [Chip].[Reference Designator].members on columns
from [Chip Facts]

但不是:

select
  [Chip].[Flash Pack].members on columns
from [Chip Facts]

我明白了:

  

引起:mondrian.olap.MondrianException:Mondrian错误:MDX对象&#39; [芯片]。[Flash Pack]&#39;没有在立方体&#39; Chip Facts&#39;

中找到

如何选择其他层次结构?

3 个答案:

答案 0 :(得分:0)

也许:

select [Chip].[Flash Pack Hierarchy].[Flash Pack].members on 0 from [Chip Facts]

答案 1 :(得分:0)

第一个层次结构没有名称,这是默认层次结构。 第二层次结构是[Flash Pack Hierarchy],名称是必需的。

答案 2 :(得分:0)

语法mondrian Olap cube

select {[Measures.qty1],..} on rows,
{[dimension.heirrarchy].members} on columns
from cube