OBIEE Parent-Child Dimension with multiple hierarchies

Is it possible to have in a parent-child dimension multiple hierarchies? I want to have the same botom childs to aggregate to different parrents. example.
Account Dimension
HR1-total
HR1-parrent1
CHILD1
HR1-parrent2
CHILD2
HR2-total
HR2-parrent1
CHILD1
CHILD2
Thanks in advance.

No, it is not possible to have multiple hiearchies in a PC logical dimension.
The concept of the Parent-Child (PC) hierarchy is completely different from the level-based hierarchy. Specifically the PC hierarchy expects a predefined / architected table with corresponding PC column/value structuring with or without attributes.
Short story even shorter it is not possible.
Longer...
In the RPD the BMM actually prevents you from adding a new logical level, child level, or parent level when you have selected that the logical dimension be a parent child logical dimension with Parent-Child hierarchy.
On another note...
Have you tried architecting/building your PC source table so that it represents the roll-up and bottom child-levels like you are seeking? That is, that same member in the child column more than once having a separate parent value. That should be doable.
That was a great question, please award points if this answered your question or it was helpful.
Cheers,
Christian
http://www.artofbi.com

Similar Messages

  • SSM7.5 - Dimension with Multiple Hierarchies

    Hi all,
    I'm facing here one problem in the SSM front-end when I'm trying to use one the possibilities that PAS database offers, in this case the use of a dimension with multiple hierarchies.
    As you can see in this image, the dimension is created in PAS and works without problems in the dataview.
    Hierarchy one:
    [http://img121.imageshack.us/img121/334/pas1y.jpg]
    Hierarchy two:
    [http://img831.imageshack.us/img831/2586/pas2.jpg]
    In the SSM front-end, when I try to use that dimension, by default appears the first hierarchy:
    [http://img826.imageshack.us/img826/4043/hier3.jpg]
    In the dimensional selector the dimension appears fine for the first hierarchy:
    [http://img30.imageshack.us/img30/3103/hier1.jpg]
    But when I select the second hierarchy...
    [http://img34.imageshack.us/img34/1722/hier2.jpg]
    The Internet Explorer crashes and close all the open windows. This happens in the scorecard and also in the reports.
    Is not possible to use dimensions with multiple hierarchies in SSM? Did anyone had this problem before?
    Thanks in advance
    Pedro
    Edited by: Pedro S. Costa on Sep 13, 2010 11:03 AM

    Hi Shashi,
    first of all, thanks for your answer.
    But I don't understand when you say that "we cannot have two hierarchies on the same dimensions"?!?!?
    I already have some years of experience with PAS database and it's not the first time I create a dimension with more than one hierarchy. I use also that in a productive system (before this SSM front-end) without problems. And in this latest version of PAS (version 7.5.6) it's still possible to use that feature. As you can see in my initial post, I put two screen shots of the dimension with two hierarchies in PAS dataview, and works fine, without problems in the drill-down/up.
    From PAS online help:
    HIERARCHY is a Dimension command that defines the members and levels that comprise a particular hierarchy level within a dimension. It also allows multiple consolidation structures that stem from a central root of inputs. Use hierarchies when the input members are consolidated into more than one output member. When a dimension has hierarchies, members can have more than one path for rolling up into output levels. If a dimension has only one hierarchy, no HIERARCHY statement is necessary.
    Based on this, I create my example of a dimension (named MULTI) with two hierarchies (REGION and TYPE). Maybe the name I use for the second hierarchy create some confusion to you, because of the TYPE dimension that can exist in SSM. I just hope the problem I'm having in the SSM front-end is not related with the name I used for the second hierarchy!!!!
    I will rename that and test again.
    Regards
    Pedro

  • Security on Employee Parent Child Dimension with SCD 2

    Hi
    I am looking for a solution for how to get all child members of a Parent employee including the one in the history. I tried multiple ways the problem which I am facing are
    Scenario 1: When I am using this approach, since the Employee with 'Jump' as employee id do have a history record with no children under him I am getting 'Null'. But there are new records (last 3 SCD changes) where he has employees under him.
    SELECT descendants(
    // Check if current employee is a manager
    iif(hierarchize(exists([Employee].[Manager Employee Dim ID].members,
    (strtomember("[Employee].[Employee Login ID].&[SIC\jump]"))),post).item(0).item(0).parent.datamember is
    hierarchize(exists([Employee].[Manager Employee Dim ID].members,
    (strtomember("[Employee].[Employee Login ID].&[SIC\jump]"))), post).item(0).item(0),
    // End of check if current employee is manager
    hierarchize(exists([Employee].[Manager Employee Dim ID].members,
    (strtomember("[Employee].[Employee Login ID].&[SIC\jump]"))),post).item(0).item(0).parent,
    hierarchize(exists([Employee].[Manager Employee Dim ID].members,
    (strtomember("[Employee].[Employee Login ID].&[SIC\jump]"))), post).item(0).item(0))) ON 0,
    [Measures].[Aggregate Count] On 1
    FROM [Data Ware House]
    Scenario 2: When I put a filter (as a set) to check if the record is current then I am getting the latest record for employee 'Jump'. But here the problem is that the employee under him I am only getting the [Measures].[Aggregate Count] of the latest
    change only.
    SELECT descendants(
    // Check if current employee is a manager
    iif(hierarchize(exists([UW Employee].[Manager Employee Dim ID].members,
    (strtomember("[UW Employee].[Employee Login ID].&[SIC\flew]"),[UW Employee].[Current Flag].&[Y])),
    post).item(0).item(0).parent.datamember is
    hierarchize(exists([UW Employee].[Manager Employee Dim ID].members,
    (strtomember("[UW Employee].[Employee Login ID].&[SIC\flew]"),[UW Employee].[Current Flag].&[Y])), post).item(0).item(0),
    // End of check if current employee is manager
    hierarchize(exists([UW Employee].[Manager Employee Dim ID].members,
    (strtomember("[UW Employee].[Employee Login ID].&[SIC\flew]"),[UW Employee].[Current Flag].&[Y])),
    post).item(0).item(0).parent,
    hierarchize(exists([UW Employee].[Manager Employee Dim ID].members,
    (strtomember("[UW Employee].[Employee Login ID].&[SIC\flew]"),[UW Employee].[Current Flag].&[Y])), post).item(0).item(0))
    ) ON 0,
    [Measures].[Contract Change Aggregate Count] ON 1
    FROM [Data Ware House]
    If any one can help me out with this that will be helpful.
    What I need is all the members under the employee 'Jump', including the Old scd records for 'jump'
    regards
    Robin
    Robs

    Hi,
    Outline is blank at the start of load and I expect dimensions Product and ProdAttribute to be added.
    Generations are unapplicable, since I can't turn this parent-child dimension (it's ragged) into generation one.
    And, by the way Integration Services manages to do this somehow, why rule files wouldn't?

  • Load Parent-Child dimension with attributes by rule file

    Well, I've cracked my head open while banging against this wall.
    Task is plain & simple:
    How can I load build dimension from such table, using rule file?
    Data
    ProductParent ProductChild ProductAttribute
    Balls Ball_8 Round
    I want to load both product dimension and attribute by single rule file (neither of these dimensions exists in database before load), so I do the following:
    1) Set dimension build settings, creating dimension Products (marking it P\C generated, sparse), having an attribute dimension AttributeDim
    2) Mark the fields as Parent, Child and AttributeDim of dimension Products
    After loading rule file a get three types of errors:
    a) "Base member (Balls) association level does not match base dimension association level" -- does this mean that I cannot assign attributes in P\C way?
    b) "Record #327 - Can not uniquely identify member by Balls (3335)
    Balls     Ball_8     Round" -- That's strange, I thought member should be identified by Ball_8 (and this column is unique)
    c) "\\Record #418 - Error in association transaction [Ball_8] to [Round] (3362)"
    I've read all I could find on topic from this forum, network45 board and going to start my way through metalink3, but maybe some kind soul will rescue me from drowning in information ocean?

    Hi,
    Outline is blank at the start of load and I expect dimensions Product and ProdAttribute to be added.
    Generations are unapplicable, since I can't turn this parent-child dimension (it's ragged) into generation one.
    And, by the way Integration Services manages to do this somehow, why rule files wouldn't?

  • Dimension Design - Single Dimension with Multiple Hierarchies

    Morning,
    the purpose of this discussion is to understand how we should design a specific dimension with 3 levels and multiple hierarchies for optimal performance.
    We have an institution dimension with the following characteristics:
    Characteristics
    Dimension: Institution
    Levels:
    1. Total Bank (TB) Level
    2. Peer Group (PG) Level
    3. Institution Level
    Hierarchies:
    1. Some of the hierarchies have 3 levels and others have only 2 levels (Skip Level)
    2. ALL the hierarchies have a TB level and an Institution level
    3. None of the hierarchies have the same leafs
    4. Some of the hierarchies leafs can overlap
    Design:
    We are considering two approaches for the institution dimension levels:
    a)
    Levels:
    Hierarchy 1 TB Level
    Hierarchy 1 PG Level
    Hierarchy 1 Inst Level
    Hierarchy 2 TB Level
    Hierarchy 2 Inst Level
    Hierarchy 3 TB Level
    Hierarchy 3 Inst Level
    Note:
    This approach is working and the resulting dimension and cubes are used by OBIEE, but some of the OBIEE analysis takes a long time (more than a minute) to return the results.
    At this point, we are not sure whether this approach will result in an optimal design from a performance perspective and are looking at restructuring the dimension to represent only the three conceptual levels as indicated below.
    b)
    Levels:
    1. Total Bank (TB) Level
    2. Peer Group (PG) Level
    3. Institution Level
    The rest of the dimension i.e. hierarchies, attributes and mappings are defined in the same way.
    The cube associated with this dimension have approximately 80 million records.
    Please advise on any best practices or design considerations that we need to take into account.
    Thanks

    No, it is not possible to have multiple hiearchies in a PC logical dimension.
    The concept of the Parent-Child (PC) hierarchy is completely different from the level-based hierarchy. Specifically the PC hierarchy expects a predefined / architected table with corresponding PC column/value structuring with or without attributes.
    Short story even shorter it is not possible.
    Longer...
    In the RPD the BMM actually prevents you from adding a new logical level, child level, or parent level when you have selected that the logical dimension be a parent child logical dimension with Parent-Child hierarchy.
    On another note...
    Have you tried architecting/building your PC source table so that it represents the roll-up and bottom child-levels like you are seeking? That is, that same member in the child column more than once having a separate parent value. That should be doable.
    That was a great question, please award points if this answered your question or it was helpful.
    Cheers,
    Christian
    http://www.artofbi.com

  • Formulas in account dimension with multiple hierarchies

    Hello all,
    I am having troubles with finding the exact syntax for a formula in an account dimension that has two hierarchies:
    - I have two parent accounts in H1 (accountA and accountB)
    - I have one account in H2 that has to add up accountA and accountB
    It was easy in V4, the formula would just say: accountA+accountB
    Does anyone have the exact syntax for me in V5?
    Some extra info:
    - SAP BPC version: 5.1sp2
    - SQL 2005
    - I know that dimension formulas have a problem with performance, but believe me, in this case this, it is the only way
    Hope someone can help me,
    Alwin

    Alwin,
    There should be formulas in the MDXlib.lgl that look like the following examples:
    *Function Hir1_P(%Arg%)
         iif(AccountL.H2.CurrentMember is [AccountL].[H2].[All AccountL.H2] and AccountL.H3.CurrentMember is [AccountL].[H3].[All AccountL.H3],%Arg%, rollupchildren(AccountL.H1.currentMember,"+"))
    *endfunction
    *Function Hir2_P(%Arg%)
         iif(AccountL.H1.CurrentMember is [AccountL].[H1].[All AccountL.H1] and AccountL.H3.CurrentMember is [AccountL].[H3].[All AccountL.H3],%Arg%, rollupchildren(AccountL.H2.currentMember,"+"))
    *endfunction
    *Function Hir3_P(%Arg%)
         iif(AccountL.H1.CurrentMember is [AccountL].[H1].[All AccountL.H1] and AccountL.H2.CurrentMember is [AccountL].[H2].[All AccountL.H2],%Arg%, rollupchildren(AccountL.H3.currentMember,"+"))
    *endfunction
    *Function Hir1(%Arg%)
         iif(AccountL.H2.CurrentMember is [AccountL].[H2].[All AccountL.H2] and AccountL.H3.CurrentMember is [AccountL].[H3].[All AccountL.H3],%Arg%,Null)
    *endfunction
    *Function Hir2(%Arg%)
         iif(AccountL.H1.CurrentMember is [AccountL].[H1].[All AccountL.H1] and AccountL.H3.CurrentMember is [AccountL].[H3].[All AccountL.H3],%Arg%, Null)
    *endfunction
    *Function Hir3(%Arg%)
         iif(AccountL.H1.CurrentMember is [AccountL].[H1].[All AccountL.H1] and AccountL.H2.CurrentMember is [AccountL].[H2].[All AccountL.H2],%Arg%, Null)
    *endfunction
    These are functions that may be used to aggregate the values in version 5 across hierarchies.  I don't think you need them all, but I included the set I have in a current application. 
    I hope this helps.
    Petar

  • Incorrect totals from cache with CustomRollupColumn and non-parent-child dimensions

    Hello. Before I start let me apologise for my English :)
    We have a very complex cube, with 2 (actually more, but only these 2 are important) parent-child dimensions.
    One of them has CustomRollupColumn defined.
    Not long ago we have decided to make refactoring of our cube. This also included making these dimensions non-parent-child.
    All our old reports started to work much faster after that... but we have mentioned that sometimes they show incorrect totals, or no totals at all.
    We spend a lot of time trying to figure out what's wrong and finally we had found that if we clear cache before next refresh of the report - the totals are always correct!
    If we don't clear cache - we get wrong totals second time, and each next time after that. If we see wrong totals - we could clear cache and get correct totals once again.
    If we use "Real Time Olap=True;" connection string parameter - the totals are always correct because cache is not used.
    But we don't like this workaround.
    Is there any fix for this bug? Google shows that this problem exists from SQL2005, and still we have it :( Also, there is adivice to set CalculationCoverPolicy to 9 - we have tried - but it was fruitless.
    And if we revert these 2 dimensions back to parent-child - all working fine again, but as slow as it was before the refactoring :(

    Hi Bateks,
    Glad to hear that your issue had been solved by yourself, thank you for you sharing which will help other forum members who have the similar issue.
    Regards,
    Charlie Liao
    TechNet Community Support

  • Bug in Aggregate Persistence Wizard with multiple hierarchies

    Hi,
    Let's say you have a dimension with 2 hierarchies. In example:
    product -> subcategory -> category -> all products
    product -> subtype -> type -> all products
    Then you run the "Aggregate Persistence Wizard" and generate the code for 2 aggregations, one for each hierarchy.
    Then you execute the generated code wiithout errors.
    But no aggregate fact table is created, not inside the rpd, neither in the database.
    You only found the aggregated dimension tables (both in rpd and database), which btw generate consistency check errors due to the missing fact table.
    Workaround:
    The code generated by the Persistence Wizard contains a single "create aggregates" statement.
    Multiple aggregation are separated by commas inside the same statement.
    Instead create multiple "create aggregates" commands, one for each aggregation, each separated by a semicolon.
    OBIEE 11.1.1.5
    Hope it helps,
    Corrado

    Cosimo,
    If you've built your business model correctly with the complex joins and the dimensions relating to your fact, then the wizard will pick them up normally and will allow you to generate a script like this:
    prepare aggregates
    "ag_Fact_Budget"
    for "Core"."Fact - Budget"("Budget Amount")
    at levels ("Core"."Conformed Date"."Fiscal Year")
    using connection pool "Siebel Data Warehouse"."Data Warehouse Connection Pool"
    in "Siebel Data Warehouse"."Catalog";
    Check that your BM is consistent and sound (stars in physical and BM layer built right).
    Documentation-wise, refer to the Oracle Business Intelligence Server Administration Guide Version 10.1.3.2, page 189 f. or the Server Architect course, module 9 "Using Aggregates".

  • Using HLEVEL Property with Multiple Hierarchies

    Hello,
    I am trying to use the HLEVEL property on a dimension to indent the rows different amounts. Easy stuff, except I'm doing a row expansion on hierarchy 3 (H3).  Using EVPRO(AppName, MemberID, "HLEVEL") always returns the HLEVEL from H1.  If you select the same member ID in the member selector under different hierarchies and click the Properties button you can see a different value for HLEVEL, but I can't figure out how to get that in a report using EVPRO.
    Is there a way to tell EVPRO specifically which hierarchy to use when returning the value for HLEVEL?
    Thanks!
    Paul Petersen
    Akili

    Mike,
    please check the answer in this other post:
    EVPRO with multiple hierarchies
    It's for the MS platform, but it's the same for Netweaver.
    EVPRO can only retrieve the HLEVEL for the first hierarchy. You need to maintain further custom properties if you want to get the level of a member within multiple hierarchies.
    Regards,
    Simmaco

  • Using HLEVEL with multiple hierarchies

    Hi all,
    Is there a way to pass a parameter to the HLEVEL keyword to specifiy which hierarchy (Parent H1,H2, H3, etc.) to use when pulling the HLEVEL?
    We would like to use HLEVEL for report formatting however we need the ability to choose the hiearchy.
    Thanks!
    Mike

    Mike,
    please check the answer in this other post:
    EVPRO with multiple hierarchies
    It's for the MS platform, but it's the same for Netweaver.
    EVPRO can only retrieve the HLEVEL for the first hierarchy. You need to maintain further custom properties if you want to get the level of a member within multiple hierarchies.
    Regards,
    Simmaco

  • Inclue children and exclue children in a single hierarchy in parent child dimension in mdx

    hi,
    include children and exclude children in a single  hierarchy in parent child dimension in mdx
    *12-parent
     **20-parent
     - 9-parent
           --250-child1
           --210-child2
            --240-child3
    aggregation of 12-parent only
    aggregation of 20-parent only
    aggregation of  9 with children
    regards,
    Manish

    Hi manishcal16PPS,
    According to your description, you have a parent child dimension in your cube. Now you want to use one measure use show aggregation value including/excluding child member based on different parent level member. Right?
    In this scenario, we could use IIF() in the calculated measure to apply different calculation depends on the current dimension member. Please refer to query below:
    with member [x] as
    IIF([Dim].[Hierarchy].CurrentMember is [Dim].[Hierarchy].[Parent].&[9]
    sum(Descendants([Dim].[Hierarchy].CurrentMember,
    [Date].[Calendar].[Parent]),
    [Measures].[Amount])
    sum([Dim].[Hierarchy].CurrentMember,[Measures].[Amount])
    select [x] on 0,
    [Date].[Calendar].[Parent].members on 1
    from
    [Cube]
    Best Regards,
    Simon Hou
    TechNet Community Support

  • ASO Time balancing with multiple hierarchies

    Hello,
    I have an Essbase 9.3 ASO cube with multiple hierarchies in the period dimension (set as type = Time), and I'm trying to set one of my Measures to Time Balance Last with SkipMissing.
    When I validate the outline, I get:
    "This prototype must have all its shared members as siblings of previous sibling."
    on all the leaf level members in my period dimension.
    any ideas?

    We are on Essbase 9.3.0.1 and also tried to use ASO Time balance functions in conjunction with multiple hierarchies enabled.
    I recommend you not to use the ASO time balance functions. We did and had to revert everything after complaints from our user base.
    If you still use it, please test cases where you retrieve TB Last as well as flow values together with ytd and periodic values.

  • MDX: Selecting specific dimension member and its descendants from parent child dimension where dimension member names can be same in dimension hierarchy

    I'm creating a SSRS report using SSAS cube as a source.
    When creating a dataset for the report, I'm having trouble with MDX to select a specific dimension member and its descendants from parent child dimension where dimension member names can be same in dimension hierarchy.
    Lets say for example that I have an account dimension where,
    In level 02 I have company ID:s 101, 102, 103 and so on...
    In level 03 I have Balance sheet
    In level 04 I have some account groups, Assets, Liabilities and so on... and In level 05 I have individual accounts
    How can I select for example company 102:s Assets from level 04 and its descendants?
    Normally in adventure works I would do this if I've wanted Current Assets and its descendants:
    SELECT NON EMPTY { [Measures].[Amount] } ON COLUMNS, NON EMPTY
    { (DESCENDANTS([Account].[Accounts].[Account Level 03].[Current Assets]) ) } ON ROWS
    FROM [Adventure Works]
    But in my Account dimension at level 04 I have Assets member as many times as I have companies in level 02.
    Tuomo

    Hi Tuomo Helminen,
    To this requirement of yours, I would recommend you use Cascading Parameters in Reporting services, you can refer to this FAQ How do I create cascading parameters when using cube database in Reporting Services at this link
    http://blogs.msdn.com/b/sqlforum/archive/2011/04/11/forum-faq-how-do-i-create-cascading-parameters-when-using-cube-database-in-reporting-services.aspx 
    Thanks,
    Challen Fu
    TechNet
    Subscriber Supportinforum
    If you have any feedback on our support, please [email protected]
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

  • Parent-child dimensions limitations

    Hi eb
    It is very convinient to develop complex heirarchized dimensions as parent-child especialy when they retain historical
    changes in members.
    I know one reason to not using such dimensions when they contain some 200,000 members or more due to performance issues (no aggregations on parent attributes???).
    Are there any other reasons to not using parent-child heirarchies in ssas MD cubes???
    TIA!
    Rea

    Hi reapeleg,
    According to your description, you want to know weakness of using parent-child dimension. Right?
    In Analysis Services, a parent-child dimension is distinguished by fact that it contains a hierarchy based on a recursive relationship. So it can only cause some performance problem. But the main reason of using a parent-child dimension
    or not depends on the relationship between the attributes in your dimension. And there's workaround for the performance issue. Please see:
    Parent-Child Dimensions in Analysis Services – Performance Walkthrough
    Reference:
    Parent-Child Dimensions
    If you have any question, please feel free to ask.
    Simon Hou
    TechNet Community Support

  • Logic Doubling in v7 SQL - Dimension with 3 hierarchies

    I'm having a problem with logic doubling at a client where I have a dimension with 3 hierarchies in v7 SQL 2008.  When I try to run logic off a property in this dimension, base members in all 3 hierarchies are doubling, whereas base members in only two hierarchies are not.  I've tried using *Membersets, *Select, and *XDIM_Memberset statements to stop the values from doubling, but I'm not having success. 
    Any ideas?  Has anyone else seen this?
    Thank you,
    Grant

    Yes, sorry, I've been busy.
    Basically, I had two rollups of data in one dimension, and when I was trying to reconcile the logic push that consolidated all the data from this dimension into one member, I was only looking at one of the rollups, and not the other one.  So, it was really just a matter of writing logic and running it without taking into account all the data I was manipulating.
    Thanks,
    Grant

Maybe you are looking for