Ragged Hierarchy

Can Oracle OLAP (9.2 or higher) handle a ragged hierarchy?
eg: custom ownership chart
**\C100\
**\C100\C101\
**\C100\C101\102\
**\C100\C101\103\
**\C100\C101\103\104
**\C100\C101\103\104\105\106\107
**\C200\C201
**\C300\C301
**\C300\C301\C302
In other words, where a dimension may not have the same number of levels in its hierarchy? I guess more of a PC hierarchy than a LEVEL hierarcy?

Do you have a link to more info/examples of this?
I have a fact table with UNIT, ACCOUNT and TIME dimensions
UNIT, ACCOUNT are each P.C hierarchies that I had to turn into LVLs for dimensions like so.
LVL1 LVL2 LVL3 LVL4 LVL5
CBC 261
CBC BC
CBC BC NBA
CBC BC NBA 240
CBC BC MAD
CBC BC MAD 241
CBC BC MAD BLDGS
CBC BC MAD BLDGS 231
CBC BC MAD BLDGS 232
CBC BC MAD BLDGS 233
Accounts are done the same way
I created hierarchies
LVL1->LVL2->LVL3->LVL4->LVL5 etc for ACCOUNT and UNIT
I want to pre-aggregate at the lowest level for each dimension.
How does AW do it if some records at LVL5 are NULL?

Similar Messages

  • Failed validation as a non-ragged hierarchy

    After I define a TIME dimension and try to Maintain Dimension (Loading data at first time), it encounters error as below:
    An error has occurred on the server
    Error class: Express Failure
    Server error descriptions:
    INI: Error creating a definition manager, Generic at TxsOqConnection::generic<BuildProcess>
    INI: XOQ-01714: "TIME_TEST_HA.TIME_TEST_HA" failed validation as a non-ragged hierarchy, Generic at TxsOqStdFormCommand::execute
    at oracle.olapi.data.source.DataProvider.callGeneric(Unknown Source)
    at oracle.olapi.data.source.DataProvider.callGeneric(Unknown Source)
    at oracle.olapi.data.source.DataProvider.executeBuild(Unknown Source)
    at oracle.olap.awm.wizard.awbuild.UBuildWizardHelper$1.construct(Unknown Source)
    at oracle.olap.awm.ui.SwingWorker$2.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
    Here is the data from related table TIME_TEST:
    SELECT * FROM TIME_TEST;
    YEAR QUARTER MONTH DAY
    2008 4 11 5
    2008 1 2 6
    2008 4 10 7
    2009 1 1 1
    2009 1 1 5
    Any help will be appreciate!
    Thanks,
    Satine

    Hi Stuart,
    My OLAP version is 11.1.0.7, upgrading from 11.1.0.6.
    Here is the XML file for the dimension.
    <!DOCTYPE Metadata [
    <!ENTITY % BIND_VALUES PUBLIC "OLAP BIND VALUES" "OLAP METADATA">
    %BIND_VALUES;
    ]>
    <Metadata
    Version="1.1">
    <TimeDimension
    Name="DAD"
    ETViewName="DAD_VIEW"
    ETKeyColumnName="DIM_KEY"
    ETLevelColumnName="LEVEL_NAME"
    ETDimensionOrderColumnName="DIM_ORDER"
    ETHierarchyOrderColumnName="HIER_ORDER">
    <Hierarchy>
    <LevelHierarchy
    IsSkipLevel="False"
    IsRagged="False"
    Name="SAD"
    ETParentColumnName="PARENT"
    ETDepthColumnName="DEPTH"
    ETViewName="DAD_SAD_VIEW">
    <HierarchyLevel
    DimensionLevel="YEAR">
    <HierarchyLevelMap
    KeyExpression="TEST_TEST.&quot;YEAR&quot;"
    Query="TEST_TEST">
    <AttributeMap
    Name="DAD_YEAR_ID"
    Expression="TEST_TEST.&quot;YEAR&quot;">
    <Attribute
    Name="DAD_YEAR_ID"/>
    </AttributeMap>
    <AttributeMap
    Name="END_DATE"
    Expression="TO_DATE(&apos;2009-10-10&apos;, &apos;yyyy-mm-dd&apos;)">
    <Attribute
    Name="END_DATE"/>
    </AttributeMap>
    <AttributeMap
    Name="TIME_SPAN"
    Expression="200">
    <Attribute
    Name="TIME_SPAN"/>
    </AttributeMap>
    <AttributeMap
    Name="YEAR_END_DATE"
    Expression="TO_DATE(&apos;2009-10-10&apos;, &apos;yyyy-mm-dd&apos;)">
    <Attribute
    Name="YEAR_END_DATE"/>
    </AttributeMap>
    <AttributeMap
    Name="YEAR_TIME_SPAN"
    Expression="200">
    <Attribute
    Name="YEAR_TIME_SPAN"/>
    </AttributeMap>
    </HierarchyLevelMap>
    </HierarchyLevel>
    <HierarchyLevel
    DimensionLevel="QUARTER">
    <HierarchyLevelMap
    KeyExpression="TEST_TEST.&quot;QUARTER&quot;"
    Query="TEST_TEST">
    <AttributeMap
    Name="DAD_QUARTER_ID"
    Expression="TEST_TEST.&quot;QUARTER&quot;">
    <Attribute
    Name="DAD_QUARTER_ID"/>
    </AttributeMap>
    <AttributeMap
    Name="END_DATE"
    Expression="TO_DATE(&apos;2009-10-10&apos;, &apos;yyyy-mm-dd&apos;)">
    <Attribute
    Name="END_DATE"/>
    </AttributeMap>
    <AttributeMap
    Name="QUARTER_END_DATE"
    Expression="TO_DATE(&apos;2009-10-10&apos;, &apos;yyyy-mm-dd&apos;)">
    <Attribute
    Name="QUARTER_END_DATE"/>
    </AttributeMap>
    <AttributeMap
    Name="QUARTER_TIME_SPAN"
    Expression="200">
    <Attribute
    Name="QUARTER_TIME_SPAN"/>
    </AttributeMap>
    <AttributeMap
    Name="TIME_SPAN"
    Expression="200">
    <Attribute
    Name="TIME_SPAN"/>
    </AttributeMap>
    </HierarchyLevelMap>
    </HierarchyLevel>
    <HierarchyLevel
    DimensionLevel="MONTH">
    <HierarchyLevelMap
    KeyExpression="TEST_TEST.&quot;MONTH&quot;"
    Query="TEST_TEST">
    <AttributeMap
    Name="DAD_MONTH_ID"
    Expression="TEST_TEST.&quot;MONTH&quot;">
    <Attribute
    Name="DAD_MONTH_ID"/>
    </AttributeMap>
    <AttributeMap
    Name="END_DATE"
    Expression="TO_DATE(&apos;2009-10-10&apos;, &apos;yyyy-mm-dd&apos;)">
    <Attribute
    Name="END_DATE"/>
    </AttributeMap>
    <AttributeMap
    Name="MONTH_END_DATE"
    Expression="TO_DATE(&apos;2009-10-10&apos;, &apos;yyyy-mm-dd&apos;)">
    <Attribute
    Name="MONTH_END_DATE"/>
    </AttributeMap>
    <AttributeMap
    Name="MONTH_TIME_SPAN"
    Expression="200">
    <Attribute
    Name="MONTH_TIME_SPAN"/>
    </AttributeMap>
    <AttributeMap
    Name="TIME_SPAN"
    Expression="200">
    <Attribute
    Name="TIME_SPAN"/>
    </AttributeMap>
    </HierarchyLevelMap>
    </HierarchyLevel>
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="Sad">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="Sad">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="Sad">
    </Description>
    </LevelHierarchy>
    </Hierarchy>
    <DimensionLevel
    Name="YEAR"
    ETKeyColumnName="YEAR">
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="Year">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="Year">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="Year">
    </Description>
    <UniqueKeyAttribute
    Name="DAD_YEAR_ID"/>
    <VisibleAttribute
    Name="YEAR_END_DATE"/>
    <VisibleAttribute
    Name="YEAR_TIME_SPAN"/>
    <VisibleAttribute
    Name="YEAR_LONG_DESCRIPTION"/>
    <VisibleAttribute
    Name="YEAR_SHORT_DESCRIPTION"/>
    </DimensionLevel>
    <DimensionLevel
    Name="QUARTER"
    ETKeyColumnName="QUARTER">
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="Quarter">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="Quarter">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="Quarter">
    </Description>
    <UniqueKeyAttribute
    Name="DAD_QUARTER_ID"/>
    <VisibleAttribute
    Name="QUARTER_END_DATE"/>
    <VisibleAttribute
    Name="QUARTER_TIME_SPAN"/>
    <VisibleAttribute
    Name="QUARTER_LONG_DESCRIPTION"/>
    <VisibleAttribute
    Name="QUARTER_SHORT_DESCRIPTION"/>
    </DimensionLevel>
    <DimensionLevel
    Name="MONTH"
    ETKeyColumnName="MONTH">
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="Month">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="Month">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="Month">
    </Description>
    <UniqueKeyAttribute
    Name="DAD_MONTH_ID"/>
    <VisibleAttribute
    Name="MONTH_END_DATE"/>
    <VisibleAttribute
    Name="MONTH_TIME_SPAN"/>
    <VisibleAttribute
    Name="MONTH_LONG_DESCRIPTION"/>
    <VisibleAttribute
    Name="MONTH_SHORT_DESCRIPTION"/>
    </DimensionLevel>
    <Attribute>
    <BaseAttribute
    SQLDataType="DATE"
    ETAttributeColumnName="END_DATE"
    IsMultiLingual="False"
    PopulateLineage="False"
    IsVisibleForAll="True"
    Name="END_DATE">
    <Classification
    Value="STAR"/>
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="End Date">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="End Date">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="End Date">
    </Description>
    </BaseAttribute>
    </Attribute>
    <Attribute>
    <BaseAttribute
    SQLDataType="NUMBER"
    ETAttributeColumnName="TIME_SPAN"
    IsMultiLingual="False"
    PopulateLineage="False"
    IsVisibleForAll="True"
    Name="TIME_SPAN">
    <Classification
    Value="STAR"/>
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="Time Span">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="Time Span">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="Time Span">
    </Description>
    </BaseAttribute>
    </Attribute>
    <Attribute>
    <BaseAttribute
    SQLDataType="VARCHAR2(60)"
    ETAttributeColumnName="LONG_DESCRIPTION"
    IsMultiLingual="False"
    PopulateLineage="False"
    IsVisibleForAll="True"
    Name="LONG_DESCRIPTION">
    <Classification
    Value="STAR"/>
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="Long Description">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="Long Description">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="Long Description">
    </Description>
    </BaseAttribute>
    </Attribute>
    <Attribute>
    <BaseAttribute
    SQLDataType="VARCHAR2(60)"
    ETAttributeColumnName="SHORT_DESCRIPTION"
    IsMultiLingual="False"
    PopulateLineage="False"
    IsVisibleForAll="True"
    Name="SHORT_DESCRIPTION">
    <Classification
    Value="STAR"/>
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="Short Description">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="Short Description">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="Short Description">
    </Description>
    </BaseAttribute>
    </Attribute>
    <Attribute>
    <BaseAttribute
    SQLDataType="DATE"
    ETAttributeColumnName="YEAR_END_DATE"
    IsMultiLingual="False"
    PopulateLineage="True"
    AttributeGroupName="END_DATE"
    IsVisibleForAll="False"
    Name="YEAR_END_DATE">
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="Year End Date">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="Year End Date">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="Year End Date">
    </Description>
    </BaseAttribute>
    </Attribute>
    <Attribute>
    <BaseAttribute
    SQLDataType="NUMBER"
    ETAttributeColumnName="YEAR_TIME_SPAN"
    IsMultiLingual="False"
    PopulateLineage="True"
    AttributeGroupName="TIME_SPAN"
    IsVisibleForAll="False"
    Name="YEAR_TIME_SPAN">
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="Year Time Span">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="Year Time Span">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="Year Time Span">
    </Description>
    </BaseAttribute>
    </Attribute>
    <Attribute>
    <BaseAttribute
    SQLDataType="VARCHAR2(60)"
    ETAttributeColumnName="YEAR_LONG_DESCRIPTION"
    IsMultiLingual="False"
    PopulateLineage="True"
    AttributeGroupName="LONG_DESCRIPTION"
    IsVisibleForAll="False"
    Name="YEAR_LONG_DESCRIPTION">
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="Year Long Description">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="Year Long Description">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="Year Long Description">
    </Description>
    </BaseAttribute>
    </Attribute>
    <Attribute>
    <BaseAttribute
    SQLDataType="VARCHAR2(60)"
    ETAttributeColumnName="YEAR_SHORT_DESCRIPTION"
    IsMultiLingual="False"
    PopulateLineage="True"
    AttributeGroupName="SHORT_DESCRIPTION"
    IsVisibleForAll="False"
    Name="YEAR_SHORT_DESCRIPTION">
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="Year Short Description">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="Year Short Description">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="Year Short Description">
    </Description>
    </BaseAttribute>
    </Attribute>
    <Attribute>
    <BaseAttribute
    SQLDataType="DATE"
    ETAttributeColumnName="QUARTER_END_DATE"
    IsMultiLingual="False"
    PopulateLineage="True"
    AttributeGroupName="END_DATE"
    IsVisibleForAll="False"
    Name="QUARTER_END_DATE">
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="Quarter End Date">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="Quarter End Date">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="Quarter End Date">
    </Description>
    </BaseAttribute>
    </Attribute>
    <Attribute>
    <BaseAttribute
    SQLDataType="NUMBER"
    ETAttributeColumnName="QUARTER_TIME_SPAN"
    IsMultiLingual="False"
    PopulateLineage="True"
    AttributeGroupName="TIME_SPAN"
    IsVisibleForAll="False"
    Name="QUARTER_TIME_SPAN">
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="Quarter Time Span">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="Quarter Time Span">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="Quarter Time Span">
    </Description>
    </BaseAttribute>
    </Attribute>
    <Attribute>
    <BaseAttribute
    SQLDataType="VARCHAR2(60)"
    ETAttributeColumnName="QUARTER_LONG_DESCRIPTION"
    IsMultiLingual="False"
    PopulateLineage="True"
    AttributeGroupName="LONG_DESCRIPTION"
    IsVisibleForAll="False"
    Name="QUARTER_LONG_DESCRIPTION">
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="Quarter Long Description">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="Quarter Long Description">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="Quarter Long Description">
    </Description>
    </BaseAttribute>
    </Attribute>
    <Attribute>
    <BaseAttribute
    SQLDataType="VARCHAR2(60)"
    ETAttributeColumnName="QUARTER_SHORT_DESCRIPTIO"
    IsMultiLingual="False"
    PopulateLineage="True"
    AttributeGroupName="SHORT_DESCRIPTION"
    IsVisibleForAll="False"
    Name="QUARTER_SHORT_DESCRIPTION">
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="Quarter Short Description">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="Quarter Short Description">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="Quarter Short Description">
    </Description>
    </BaseAttribute>
    </Attribute>
    <Attribute>
    <BaseAttribute
    SQLDataType="DATE"
    ETAttributeColumnName="MONTH_END_DATE"
    IsMultiLingual="False"
    PopulateLineage="True"
    AttributeGroupName="END_DATE"
    IsVisibleForAll="False"
    Name="MONTH_END_DATE">
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="Month End Date">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="Month End Date">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="Month End Date">
    </Description>
    </BaseAttribute>
    </Attribute>
    <Attribute>
    <BaseAttribute
    SQLDataType="NUMBER"
    ETAttributeColumnName="MONTH_TIME_SPAN"
    IsMultiLingual="False"
    PopulateLineage="True"
    AttributeGroupName="TIME_SPAN"
    IsVisibleForAll="False"
    Name="MONTH_TIME_SPAN">
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="Month Time Span">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="Month Time Span">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="Month Time Span">
    </Description>
    </BaseAttribute>
    </Attribute>
    <Attribute>
    <BaseAttribute
    SQLDataType="VARCHAR2(60)"
    ETAttributeColumnName="MONTH_LONG_DESCRIPTION"
    IsMultiLingual="False"
    PopulateLineage="True"
    AttributeGroupName="LONG_DESCRIPTION"
    IsVisibleForAll="False"
    Name="MONTH_LONG_DESCRIPTION">
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="Month Long Description">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="Month Long Description">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="Month Long Description">
    </Description>
    </BaseAttribute>
    </Attribute>
    <Attribute>
    <BaseAttribute
    SQLDataType="VARCHAR2(60)"
    ETAttributeColumnName="MONTH_SHORT_DESCRIPTION"
    IsMultiLingual="False"
    PopulateLineage="True"
    AttributeGroupName="SHORT_DESCRIPTION"
    IsVisibleForAll="False"
    Name="MONTH_SHORT_DESCRIPTION">
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="Month Short Description">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="Month Short Description">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="Month Short Description">
    </Description>
    </BaseAttribute>
    </Attribute>
    <Attribute>
    <BaseAttribute
    SQLDataType="VARCHAR2(8)"
    ETAttributeColumnName="DAD_YEAR_ID"
    IsMultiLingual="False"
    PopulateLineage="False"
    IsVisibleForAll="False"
    Name="DAD_YEAR_ID">
    </BaseAttribute>
    </Attribute>
    <Attribute>
    <BaseAttribute
    SQLDataType="VARCHAR2(8)"
    ETAttributeColumnName="DAD_QUARTER_ID"
    IsMultiLingual="False"
    PopulateLineage="False"
    IsVisibleForAll="False"
    Name="DAD_QUARTER_ID">
    </BaseAttribute>
    </Attribute>
    <Attribute>
    <BaseAttribute
    SQLDataType="VARCHAR2(6)"
    ETAttributeColumnName="DAD_MONTH_ID"
    IsMultiLingual="False"
    PopulateLineage="False"
    IsVisibleForAll="False"
    Name="DAD_MONTH_ID">
    </BaseAttribute>
    </Attribute>
    <Organization>
    <AWPrimaryDimensionOrganization
    MVOption="NONE"
    HierarchyConsistencyRule="STAR_CONSISTENT"
    AddUniqueKeyPrefix="True">
    <MVCreationOptions
    RefreshOn="DEMAND"
    RefreshType="COMPLETE"
    EnableRewriteMV="False"
    UsingConstraintsClause="ENFORCED">
    </MVCreationOptions>
    <AttributeOrganization
    CreateIndex="False"
    Attribute="END_DATE">
    </AttributeOrganization>
    <AttributeOrganization
    CreateIndex="False"
    Attribute="TIME_SPAN">
    </AttributeOrganization>
    <AttributeOrganization
    CreateIndex="False"
    Attribute="LONG_DESCRIPTION">
    </AttributeOrganization>
    <AttributeOrganization
    CreateIndex="False"
    Attribute="SHORT_DESCRIPTION">
    </AttributeOrganization>
    <AttributeOrganization
    CreateIndex="False"
    Attribute="YEAR_END_DATE">
    </AttributeOrganization>
    <AttributeOrganization
    CreateIndex="False"
    Attribute="YEAR_TIME_SPAN">
    </AttributeOrganization>
    <AttributeOrganization
    CreateIndex="False"
    Attribute="YEAR_LONG_DESCRIPTION">
    </AttributeOrganization>
    <AttributeOrganization
    CreateIndex="False"
    Attribute="YEAR_SHORT_DESCRIPTION">
    </AttributeOrganization>
    <AttributeOrganization
    CreateIndex="False"
    Attribute="QUARTER_END_DATE">
    </AttributeOrganization>
    <AttributeOrganization
    CreateIndex="False"
    Attribute="QUARTER_TIME_SPAN">
    </AttributeOrganization>
    <AttributeOrganization
    CreateIndex="False"
    Attribute="QUARTER_LONG_DESCRIPTION">
    </AttributeOrganization>
    <AttributeOrganization
    CreateIndex="False"
    Attribute="QUARTER_SHORT_DESCRIPTION">
    </AttributeOrganization>
    <AttributeOrganization
    CreateIndex="False"
    Attribute="MONTH_END_DATE">
    </AttributeOrganization>
    <AttributeOrganization
    CreateIndex="False"
    Attribute="MONTH_TIME_SPAN">
    </AttributeOrganization>
    <AttributeOrganization
    CreateIndex="False"
    Attribute="MONTH_LONG_DESCRIPTION">
    </AttributeOrganization>
    <AttributeOrganization
    CreateIndex="False"
    Attribute="MONTH_SHORT_DESCRIPTION">
    </AttributeOrganization>
    <AttributeOrganization
    CreateIndex="False"
    Attribute="DAD_YEAR_ID">
    </AttributeOrganization>
    <AttributeOrganization
    CreateIndex="False"
    Attribute="DAD_QUARTER_ID">
    </AttributeOrganization>
    <AttributeOrganization
    CreateIndex="False"
    Attribute="DAD_MONTH_ID">
    </AttributeOrganization>
    <AW
    Name="&AW_NAME;"/>
    <DefaultBuild>
    <![CDATA[BUILD SPEC SYS_DEFAULT
      LOAD,
      COMPILE
    )]]>
    </DefaultBuild>
    </AWPrimaryDimensionOrganization>
    </Organization>
    <Description
    Type="Description"
    Language="ENGLISH"
    Value="Dad">
    </Description>
    <Description
    Type="LongDescription"
    Language="ENGLISH"
    Value="Dad">
    </Description>
    <Description
    Type="ShortDescription"
    Language="ENGLISH"
    Value="Dad">
    </Description>
    <TimeSpanAttribute
    Name="TIME_SPAN"/>
    <EndDateAttribute
    Name="END_DATE"/>
    <DefaultHierarchy
    Name="SAD"/>
    <ValueDescriptionAttribute
    Name="LONG_DESCRIPTION"/>
    <ShortValueDescriptionAttribute
    Name="SHORT_DESCRIPTION"/>
    </TimeDimension>
    </Metadata>
    You may want to have a test to change IsRagged="False" to IsRagged="True", then it woks well but the result is very stange.
    And I find if the hierarchy is only with levels: YEAR and Quarter, then you can maintain it, but, for sure, the YEAR2009,QUARTER1 will overwrite YEAR2008,QUARTER1. If defining the hierarchy with levels:YEAR,QUARTER,MONTH, then you can't maintain it. On my opinion, it may because the data in third level MONTH can't identified the right routine to the higher level QUARTER.
    Thanks,
    Satine

  • Ragged Hierarchy and Skip Level Hierarchy

    Hi all,
    I am confused with ragged and skip level hierarchy, as i read some documents related to obiee 11g.
    Will you please explain with an example the difference between ragged hierarchy and skip level hierarchy and also when to use these hierarchies?
    regards
    chandra kanth.

    Chandra Kanth,
    Hope this helps you
    http://blogs.simba.com/.a/6a00e3932f172e88340133f4d758b5970b-800wi
    Thanks,
    Saichand.v

  • Ragged hierarchy - cube 2008

    I'm trying to create ragged hierarchy with no success. I need to hide the middle level (level 3) and I put the same code and name to the level 3 as in Level 2 (which is higher). But I keep seen all the levels. I'm using "OnlyChildWithParentName"
    option and I'm connected with MDX Compatibility=2 (I don't know how to set this property in the other way) .
    Do you have a solution to my problem?

    Hi Tatyanaa,
    According to your description, you are trying to create ragged hierarchy with no success, right?
    Generally, if we want to turn a user hierarchy into a ragged hierarchy (perhaps to avoid using a parent child hierarchy) we need to use the HideMemberIf property on the user hierarchy. Here is a blog which describe Ragged Hierarchies, HideMemberIf and MDX Compatibility,
    please see:
    http://cwebbbi.wordpress.com/2009/11/11/ragged-hierarchies-hidememberif-and-mdx-compatibility/
    Regards,
    Charlie Liao
    TechNet Community Support

  • Ragged hierarchy design

    Hi.
    I'm trying to design the implementation of a department dimension that has a ragged hierarchy and I'm seeking advice on how to do this.
    I'd like to start a dialog on the community's experience and best demonstrated practices on how to do this.
    Has anyone done this successfully? If so, what did you learn in the process and what did you do to ensure success.
    Thanks.
    Dan

    Hi. Sorry for the long delay...Got pulled in another direction...
    So, I'm revisiting ragged hierarchies. I understand pushing down/replicating the levels. Some more back story. I used the OWB Create dimension expert to generate the dimension, mapping, etc for me and it worked well. However, it does not push down the levels. For example, I have a leaf at level 5, but need it to be pushed down into levels 6 - 8.
    Has anyone out there done this sort of work in OWB before, if so, can you offer advice, tips, tricks, diagrams, code, anything? I'm simply stuck at this point.
    Thanks for your time.
    Dan

  • Building hierarchy trees (ragged hierarchy) in OBIEE

    We want to build a hierarchy tree to drill into the different levels of our organization. (ragged hierarchy) In OBIEE Answers or like product is there a way to expand down the page in a tree format? I am looking for what others have done to display that UI drill down similar to how the Windows registry/file system expands. Building filters across the page will not work for us. Any thoughts would be greatly appreciated. Thanks.
    Edited by: jonloring on Jun 30, 2009 12:40 PM

    I did read it and was helpful, but I am trying to solve a UI formating problem. All the BI products seem to go across the page with filtering, not down the page in a tree format.

  • Query rewrite complains about ragged hierarchy when it does not exist

    Hi -
    I have a customer dimension with only one level. The lowest level of detai.
    When I enable the query rewrite I get an error (see below) about ragged or skipped level hierarchy in my customer dimension. I am trying to figure out what the issue is so I created a one level customer hierarchy (lowest level) and I still get the error.
    I do not understand how I can have a skipped/ragged hierarchy when my dimension is at the lowest level.
    I am using the lastest versions of AWM and 11G.
    Thanks in advance for any help you can provide,
    Frank
    Invalid Metadata Objects:
    Invalid Object "MYTEST.CUST_SALES": "XOQ-01957: The cube has REWRITE MVs and also contains either a ragged or skip-level hierarchy. The hierarchy is "MYTEST.CUST_DIM.STANDARD"."
    Edited by: bmwrider on Oct 16, 2009 9:01 AM

    Hi there,
    See this:- Error when trying to enable cube  MV query rewrite
    Thanks,
    Stuart Bunby
    OLAP Blog: http://oracleOLAP.blogspot.com
    OLAP Wiki: http://wiki.oracle.com/page/Oracle+OLAP+Option
    OLAP on OTN: http://www.oracle.com/technology/products/bi/olap/index.html
    DW on OTN : http://www.oracle.com/technology/products/bi/db/11g/index.html

  • Ragged hierarchy does not aggregate

    Hi,
    I have a dimension with ragged hierarchy of three levels:
    level 1-> level 2 -> level 3
    Some of the level 2 data do not have children (level 3). I mapped the dimension to cube with both level 2 and level 3 as required. Data is loaded into the cube but not those level 2 that have children.
    Any suggestions are appreciated.
    June

    I see two possible cases here.
    (1) The source data may be loaded for the level 2 members without children, but the subsequent SOLVE step gets rid of them again.
    (2) The source data is not loaded for the level 2 members in the first place.
    You say that there are no rejected records, so problem (2) doesn't seem likely. But you can check that easily enough using the following script. This will clear the cube and load the leaf data, but will not aggregate. Obviously you should change "my_cube" to the name of your cube and set the parallelism appropriately based on your system and the amount of data you have.
    exec dbms_cube.build('my_cube using (clear, load)', add_dimensions=>false, parallelism=>2)If there is still no data for the level 2 members after this, then you are having problem number (2). If the data is there, then it is problem (1). I will hold off from giving possible causes of (1) and (2) until we know which it is.

  • Ragged Hierarchy - aggregation problem

    I build dimension with Ragged Hierarchy as posted in [|http://oracleolap.blogspot.com/2008/01/olap-workshop-4-managing-different.html]
    in "*Skip, Ragged and Ragged-Skip Level Hiearchies*" section.
    I use scott schema for test
    _1- build dimension emp with 4 levels using this data_
    ==> these data come from relation between EMPNO and MGR columns of EMP table
    LVL1_CODE, LVL1_DESC, LVL2_CODE, LVL2_DESC, LVL3_CODE, LVL3_DESC, LVL4_CODE, LVL4_DESC
    7839, KING                              
    7839, KING     , 7566, JONES                    
    7839, KING, 7566, JONES, 7788, SCOTT          
    7839, KING, 7566, JONES, 7788, SCOTT, 7876, ADAMS
    7839, KING, 7566, JONES, 7902, FORD          
    7839, KING     , 7566, JONES, 7902, FORD, 7369, SMITH
    7839, KING     , 7698, BLAKE               
    7839, KING     , 7698, BLAKE, 7499, ALLEN          
    7839, KING     , 7698, BLAKE, 7521, WARD          
    7839, KING     , 7698, BLAKE, 7654, MARTIN          
    7839, KING     , 7698, BLAKE, 7844, TURNER          
    7839, KING     , 7698, BLAKE, 7900, JAMES          
    7839, KING     , 7782, CLARK               
    7839, KING     , 7782, CLARK, 7934 MILLER          
    _2- build cube salary cube using this data_
    EMPNO     SAL
    7369     800
    7499     1600
    7521     1250
    7566     2975
    7654     1250
    7698     2850
    7782     2450
    7788     3000
    7839     5000
    7844     1500
    7876     1100
    7900     950
    7902     3000
    7934     1300
    The total sum of salary on the top of hierarchy "KING" is 9,750$ and the correct value must be 29,025$.
    I Notice that, in any node in hierachy that has childern the value of salary sum is the summation of its chiildern only without its value.
    so what is the problem??

    EMPNO SAL
    7369 800
    7499 1600
    7521 1250
    7566 2975
    7654 1250
    7698 2850
    7782 2450
    7788 3000
    7839 5000
    7844 1500
    7876 1100
    7900 950
    7902 3000
    7934 1300I can see the above data and looks like you are loading some values at higher level i.e. for emp no 7566. In DWH you will be loading data at leaf level and OLAP engine does aggregation(solve) and store data at higher level. What you are seeing is correct as any node's value is equal to the sum of values of its children.
    Thanks,
    Brijesh

  • Ragged Hierarchy Snowflake Displays Dimension Key as Descriptor

    Hello All -
    I am having an issue with OWB 10gR2 and any help would be appreciated.
    I have created a Product Dimension using the "ROLAP" - "Manual" storage method which I've modeled as a snowflake to support our ragged hierarchy.
    I can create, validate, and view the data in the dimension and it is correct ... but the only level of my three levels (All Products, Products, Sub Products) to display the descriptor is the Sub Products level. The other two levels display the Surrogate ID - regardless of what settings I change.
    I know this might sound trivial but it does make a huge difference when you're working with a large number of product hierarchies or demonstrating to non-technical superiors.
    Thanks in advance for any assistance!

    I took a look at this thread, but I think you have a different issue than mine. My Snowflake dimension isn't implemented as MANUAL. I use the Snowflake option and it isn't a "ragged" hierarchy.
    In reality I do, but I "force" the levels to the maximum number. This lets me attach all facts at the base level and have a single grain. For example if I had a mix of 2 level and 3 level hierarchies, I repeat level 2 into level 3 for the 2 level items.
    I rarely use the data viewer, but I did see that if I use it on the table objects, I see my short descriptors. If I use it on the dimension objects it doesn't work - probably because I only implement relational objects.

  • Parent-Child Ragged hierarchy

    Hi
    I have a parent child ragged hisrarchy. I want to build level wise dimension to be able to report using crystal .
    The PC table I have is like
    Child     Parent
    A11      A1
    A12      A1
    A111    A11
    A112    A11
    A113    A11
    A121    A12
    A122    A12
    A1121  A112
    A1221  A122
    A1222  A122
    I want to solve this as a level based hierarchy using universe like:
    LEV1 LEV2 LEV3 LEV4
    A1 A12 A122 A1222
    A1 A12 A122 A1221
    A1 A11 A112 A1121
    A1 A12 A122
    A1 A12 A121
    A1 A11 A113
    A1 A11 A112
    A1 A11 A111
    A1 A12
    A1 A11
    Can somebody please put some light on this how can I achieve this?
    Thanks
    Atul

    Hi Atul,
    You can use a Derived Table that flatten the hierarchy.
    Here is a sample based on the example you provided, you just have to replace "child", "parent" and "myTable" strings by the corrseponding column and table names:
    SELECT DISTINCT
         Z.child,
         A.parent_1,
         A.child_1,
         A.parent_2,
         A.child_2,
         A.parent_3,
         A.child_3,
         Z.parent AS parent_4,
         Z.child AS child_4
    FROM myTable Z,
         SELECT DISTINCT
              A.parent_1,
              A.child_1,
              A.parent_2,
              A.child_2,
              Z.parent AS parent_3,
              Z.child AS child_3
         FROM myTable Z,
              SELECT DISTINCT
                   A.parent_1,
                   A.child_1,
                   Z.parent AS parent_2,
                   Z.child AS child_2
              FROM myTable Z,
                   SELECT DISTINCT
                        parent AS parent_1,
                        child AS child_1
                    FROM myTable
                    WHERE parent = 0 OR parent IS NULL
              ) A
              WHERE A.child_1 = Z.parent
         ) A
         WHERE A.child_2 = Z.parent
    ) A
    WHERE A.child_3 = Z.parent
    UNION
    SELECT DISTINCT
         A.child_3 AS child,
         A.parent_1,
         A.child_1,
         A.parent_2,
         A.child_2,
         A.parent_3,
         A.child_3,
         NULL AS parent_4,
         NULL AS child_4
    FROM myTable Z,
         SELECT DISTINCT
              A.parent_1,
              A.child_1,
              A.parent_2,
              A.child_2,
              Z.parent AS parent_3,
              Z.child AS child_3
         FROM myTable Z,
              SELECT DISTINCT
                   A.parent_1,
                   A.child_1,
                   Z.parent AS parent_2,
                   Z.child AS child_2
              FROM myTable Z,
                   SELECT DISTINCT
                        parent AS parent_1,
                        child AS child_1
                    FROM myTable
                    WHERE parent = 0 OR parent IS NULL
              ) A
              WHERE A.child_1 = Z.parent
         ) A
         WHERE A.child_2 = Z.parent
    ) A
    WHERE A.child_3 NOT IN (SELECT parent FROM myTable)
    UNION
    SELECT DISTINCT
         A.child_2 AS child,
         A.parent_1,
         A.child_1,
         A.parent_2,
         A.child_2,
         NULL AS parent_3,
         NULL AS child_3,
         NULL AS parent_4,
         NULL AS child_4
    FROM myTable Z,
         SELECT DISTINCT
              A.parent_1,
              A.child_1,
              Z.parent AS parent_2,
              Z.child AS child_2
         FROM myTable Z,
              SELECT DISTINCT
                   parent AS parent_1,
                   child AS child_1
               FROM myTable
               WHERE parent = 0 OR parent IS NULL
         ) A
         WHERE A.child_1 = Z.parent
    ) A
    WHERE A.child_2 NOT IN (SELECT parent FROM myTable)
    UNION
    SELECT DISTINCT
         A.child_1 AS child,
         A.parent_1,
         A.child_1,
         NULL AS parent_2,
         NULL AS child_2,
         NULL AS parent_3,
         NULL AS child_3,
         NULL AS parent_4,
         NULL AS child_4
    FROM myTable Z,
         SELECT DISTINCT
              parent AS parent_1,
              child AS child_1
          FROM myTable
          WHERE parent = 0 OR parent IS NULL
    ) A
    WHERE A.child_1 NOT IN (SELECT parent FROM myTable)
    Regards,
    Didier

  • Skipped and ragged level hierarchy in OBIEE11g

    Hi
    I tried creating aboth skipped and ragged hierarchy in OBIEE 10g
    It works fine without error
    SO I have doubt why they have introduced this concept in OBIEE 11g, Is there any more feture about this
    Please help me

    @Abdul : can you please let us know how you have implemented skip level hierarchy in 10g..
    actually we need to implement it ,didn't find anything in google search ...
    thanks In advance

  • Parent Child Hierarchy Issue in OBIEE 11g

    Hi All,
    I am in OBIEE 11G v6. I have a sales fact table where the grain is one sale. So I have one row for every sale done.
    Now I have a ragged employee hierarchy like this with David at the root node.
    David >>Richard>>Sean
    David >>James
    Also, I have a role dimension which gives me what role each employee has performed on a sale. Only one employee can be associated with one sale. This is the way Roles have been asssigned
    David = Manager
    Richard = Off1
    Sean = Off2
    James = Off2
    Both Sean and James can have same Roles. Now I have created a parent child hierarchy for my employee dimension and the closure table. Defined the member key, ancestor key relationship in the parent child setting etc.
    Now in the report when I pull the parent child hierarchy and the sales_amount in the report, it comes out perfect with all the ragged hierarchy resolved. But the issue comes when I try to limit the report on Role = Off2. It gives me an error saying " The layout of this view combined with the data, selection , drills resulted in no data. Undo drill and view prompt values". Basically what i want is to be able to select any role type and then my hierarchy should be adjusted to show me that data. Like when I select Off2, I want to see David at the Top level and Sean and James under him because they are both Off 2 and David is their manager.
    Is that possbile? Also, am I getting this error because when I select Off2 though it gets Sean and James but since David is not Off2, I don't get the data?
    I hope I was able to explain the issue, any help on this would be greatly appreciated.
    Thanks
    Ronny

    So basically this means that if I build a parent child hierarchy on table A having the stucture like
    --David (Manager)
    -----James (Off1)
    --------Bill (Off2)
    and in my sales fact table for let's say today, I have only rows for Bill (Off2) because he is the only officer who did the sales today. Now when I will join my fact table to parent child hierarchy table A I will NOT get any data ? because there is no James who is the parent of Bill. So obiee need to have parent pulled off in the data (ANCESTOR) to be able to roll up the child.(IS_LEAF = 1)
    I testes this and if my data only contains only rows for Bill (or I limit on ROLE = Off2) then it won't show the hierarchy. The query which OBIEE fires is to look for either ANCESTOR_KEY = NULL OR (DISTANCE = 1 AND ANCESTOR KEY IN (Bill). Therefore it doesn't I am wondering then what is the use of builiding the parent child hierarchy when we need to pull in all the ancestors (like in this case James for bill and David for james) because in real scenarios there can be cases wherein we would want to filter the data based on other dimensions to which the parent child hierarchy joins ?

  • Data loaded all level in a hierarchy and need to aggregate

    I am relatively new to Essbase and I am having problems with the aggregation of cube.
    Cube outline
    Compute_Date (dense)
         20101010 ~
         20101011 ~
         20101012 ~
    Scenario (dense)
    S1 ~
    S2 ~
    S3 ~
    S4 ~
    Portfolio (sparse)
    F1 +
    F11 +
    F111 +
    F112 +
    F113 +
    F12 +
    F121 +
    F122 +
    F13 +
    F131 +
    F132 +
    Instrument (sparse)
    I1 +
    I2 +
    I3 +
    I4 +
    I5 +
    Accounts (dense)
    AGGPNL ~
    PNL ~
    Porfolio is a ragged hierarchy
    Scenario is a flat hierrachy
    Instrument is a flat hierarchy
    PNL values are loaded for instruments at different points in the portfolio hierarchy.
    Then want to aggregate the PNL values up the portfolio hierarchy into AGGPNL, which is not working the loaded PNL values should remain unchanged.
    Have tried defining the following formula on AGGPNL, but this is not working.
    IF (@ISLEV (folio,0))
    pnl;
    ELSE
    pnl + @SUMRANGE("pnl",@RELATIVE(@CURRMBR("portfolio"),@CURGEN("portfolio")+1));
    ENDIF;
    using a calc script
    AGG (instrument);
    AGGPNL;
    Having searched for a solution I have seen that essbase does implicit sharing when a parent has a single child. This I can disable but this is not the sole cause of my issues I think.

    The children of F11 are aggregated, but the value which is already present at F11 is over wriiten and the value in F11 is ignored in the aggregation.^^^That's the way Essbase works.
    How about something like this:
    F1 +
    ===F11 +
    ======F111 +
    ======F112 +
    ======F113 +
    ======F11A +
    ===F12 +
    ======F121 +
    ======F122 +
    ===F13 +
    ======F131 +
    ======F132 +
    Value it like this:
    F111 = 1
    F112 = 2
    F113 = 3
    F11A = 4
    Then F11 = 1 + 2 + 3 + 4 = 10.
    Loading at upper levels is something I try to avoid whenever possible. The technique used above is incredibly common, practically universal as it allows the group level value to get loaded as well as detail and agg up correctly. Yes, you can load to upper level members, but you have hit upon why it isn't all that frequently done.
    NB -- What you are doing is only possible in BSO cubes. ASO cube data must be at level 0.
    Regards,
    Cameron Lackpour

  • Error when drill down with essbase hierarchy

    Hi ,
    I am displaying one bar chart with, one Ragged hierarchy dimension "Region" ( structure : total region - > India , US -> India south , US south -> chennai , California) and "revenue" (measure) .
    Sometime's the drill down is happening smoothly (region - > sub region - > city) but sometimes its throwing below error :
    Error Codes: OAMP2OPY:QIKSHNQU
    DXE compiler error. Coordinate in target list must match to*coordinate in group by list. Source name:*
    GroupbyAndCoorTableCompiler::run. XML: <sawxd:expr*xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"**xmlns:sawxd="com.siebel.analytics.web/expressiondxe/v1.1"**xmlns:sawq="com.siebel.analytics.web/querydxe/v1.1"**xsi:type="sawq:groupbyField" refCoorID="5"/>*
    FYI , I have a product prompt attached with this graph . i.e , when user selects "total product" and drilling down its
    working perfectly but when selects "network products" its throwing the mentioned error .
    OBIEE version used : 11.1.1.6.2 (Build 120604.0813 BP1 64-bit)
    essbase version used : 11.1.2.1
    Thanks
    sayak

    I have created one report using Essbase cubes in OBIEE11G and when I am archiving the same report at one local server and unarchiving it at some other server then at the other server I am facing this error.
    Any replies will indeed be helpful.

Maybe you are looking for