Parent Child Hierarchy with FDS and Hibernate

I know my chances of getting heard here are slim, but I am at
a dead end, so here goes.
I have a four level hierarchy of objects
PlanPoint
....UserScenario
........Scenario
............Competitor
which have bi-directional one-to-many relationships between
them.
I have made sure that my hibernate mappings and FDS
destination are matched and I definitely need to have managed
associations as the graph of objects will grow large in my
application (and besides, it is good development practice). So I
have a fully formed project (or at least I think I do) and I get a
duplicate object error.
Right at the bottom I have an alternative that I have tried
which gives a different error.
Here is a snippet from my log... it picks up just after the
message arrives
2007-02-05 21:21:10,281 INFO [STDOUT] Hibernate: insert into
COMPETITOR (COMPETITOR_ID, SCENARIO_ID, NAME, X, Y, RADIUS, ACTUAL,
PROPOSITIONS, ORDER_SIZE, CONVERSION_RATE) values (null, ?, ?, ?,
2007-02-05 21:21:10,281 INFO [STDOUT] Hibernate: call
identity()
2007-02-05 21:21:10,312 INFO [STDOUT] Hibernate: insert into
SCENARIO (SCENARIO_ID, TITLE, SEQUENCE, POTENTIAL,
USER_SCENARIO_ID) values (null, ?, ?, ?, ?)
2007-02-05 21:21:10,312 INFO [STDOUT] Hibernate: call
identity()
2007-02-05 21:21:10,359 INFO [STDOUT] Hibernate: insert into
USER_SCENARIO (USER_SCENARIO_ID, TITLE, PLANPOINT_ID, AUTHOR)
values (null, ?, ?, ?)
2007-02-05 21:21:10,359 INFO [STDOUT] Hibernate: call
identity()
2007-02-05 21:21:10,406 INFO [STDOUT] [Flex] Serializing
AMF/RTMP response
Version: 3
(Command method=_error (0) trxId=8)
(Typed Object #0 'flex.messaging.messages.ErrorMessage')
rootCause = (Typed Object #1
'org.hibernate.NonUniqueObjectException')
throwables = (Array #2)
[0] = (Ref #1)
localizedMessage = "a different object with the same
identifier value was already associated with the session:
[pmco.pojos.Competitor#0]"
message = "a different object with the same identifier value
was already associated with the session: [pmco.pojos.Competitor#0]"
identifier = 0
cause = null
throwableCount = 1
entityName = "pmco.pojos.Competitor"
messages = (Array #3)
[0] = "a different object with the same identifier value was
already associated with the session"
destination = "competitor.hibernate"
headers = (Object #4)
correlationId = "BFAF11E0-6121-54BB-A836-93C81DAE7772"
faultString = "Could not invoke sync method on data adapter
for destination 'userscenario.hibernate' due to the following
error: class org.hibernate.NonUniqueObjectException:a different
object with the same identifier value was already associated with
the session: [pmco.pojos.Competitor#0]."
messageId = "78CB9396-9618-519F-8DB0-70D4E53357FE"
faultCode = "Server.Processing"
timeToLive = 0.0
extendedData = null
faultDetail = null
clientId = null
timestamp = 1.17071047039E12
body = null
Anyone got any ideas?
I would provide my mappings and destinations but I can't fit
them in a message

Hi,
thanks for the reply it was very helpful. I came to pretty
much the same conclusion and started on the path of a re-write of
the hibernate assembler myself. As far as I can tell the Hibernate
Assembler is a Java Assembler, so there didn't seem much difference
to me between fixing that one and writing another one. Adobe ship
the code.
Bit of a cheeky request, but I don't suppose you would be
willing to share your assembler layer so I have a template against
which to work? Biggest problem with this sort of activity is a lack
of examples which makes it very slow going and largely trial and
error.
If you would like to know more about our application I will
provide contact details so we can discuss.
Simon
PS Jeff Vroom posted a reply saying that the Adobe Hibernate
Assembler didn't work properly with hierarchical data (which I
imagine is every real application in the world), personally I think
Adobe should fix it or pull it.
http://tech.groups.yahoo.com/group/flexcoders/message/63961

Similar Messages

  • Hide parents in a parent-child hierarchy with dynamic rights

    Hi all,
    I'm facing the following issue with dynamic rights on a parent-child hierarchy:
    scenario:
    - a cube with a company parent-child hierarcy
    - dynamic security on through a role on dimension data based on a list with user (login names) and their
    departments, with Enable
    Visual Total is switched ON 
    - Multiple facts connected to this hierarchy.
    When a user connects to the cube (in this case with Excel or through a dashboard in Performance Point services) he/she is allowed to see the facts belonging to theirs departments and all child departments, so far so good. But the totals of the facts are
    repeated for all higher parents. Now i know thats nog 'wrong' but our users think thats very confusing in some cases, so is there a way
    - to hide the parents in the hierarhcy
    - or to set all the parent measures to null/empty?
    I prefer to make a solution in the cube so that all client programs can benefit from this solution.
    thanx in advance for all input!

     so that User A have scope: [Dimension_Name].[Attribute XYZ] and User B: [Dimension_Name].[Attribute ABC] ?
    Hi Wilfred,
    If I understanding correctly, you want different user can see different dimension attributes based on the different right on role, right? 
    Based on my research, it seems that there is no a directly way to achieve this requirement. What we can do is that "Deselect all members" for each attribute of the dimension in Dimension Data tab, which will hide all members of the dimension for the role.
    Even the dimension metadata is visible in the cube in clients, its members can't be seen. Here are some useful links for your reference.
    http://saysmymind.wordpress.com/2013/01/15/hide-a-specific-attribute-hierarchy-in-role-playing-dimension-ssas-multidimensional/
    http://social.msdn.microsoft.com/Forums/sqlserver/en-US/e2596eec-7c2d-48c0-8e81-538a8c632360/hide-dimension-based-on-roles
    Hope this helps.
    Regards,
    Charlie Liao
    TechNet Community Support

  • Dynamic hierarchy in parent child hierarchy table??

    Do you have any experience to handle the requirement of dynamic hierarchy in universe/webi?
    We have some data in parent child hierarchy as below u201CCustomeru201D table.
    Customer
    Parent          Child
    Z                  A
    Z                  B
    A                  AA
    B                  BB
    AA               AAA
    For example, Company Z is the parent company of Company A.
    Another table, Amount is the amount value of different Customers.
    Amount
    ID               Amt
    AA               10
    AAA            1
    BB                2
    Is there any functionality in Universe designer to build related Classes and objects, So that the web intelligence documents represent the following report with the drilling results?
    When we want to see the ID and Amt, the expected result should be:
    Z                13
    when we drill down Z
    the result should be:
    A                11
    B                2
    when we drill down A:
    the result should be:
    AA              11
    notes **
    the level of hierarchy is dynamic
    Any suggestion is appreciated.  Thanks.

    Hi,
    The only way to do it is to create recursive derived table that flatten you parent child hierarchy with a given maximum depth.
    Here is a sample I built a long time ago to flatten a parent-child hierarchy on Employees table in Foodmart database (SQL Server).
    Didier
    SELECT DISTINCT
         Z.employee_id,
         A.supervisor_id_1,
         A.employee_id_1,
         A.full_name_1,
         A.supervisor_id_2,
         A.employee_id_2,
         A.full_name_2,
         A.supervisor_id_3,
         A.employee_id_3,
         A.full_name_3,
         A.supervisor_id_4,
         A.employee_id_4,
         A.full_name_4,
         A.supervisor_id_5,
         A.employee_id_5,
         A.full_name_5,
         A.supervisor_id_6,
         A.employee_id_6,
         A.full_name_6,
         Z.supervisor_id AS supervisor_id_7,
         Z.employee_id AS employee_id_7,
         Z.full_name AS full_name_7
    FROM employee Z,
         SELECT DISTINCT
              A.supervisor_id_1,
              A.employee_id_1,
              A.full_name_1,
              A.supervisor_id_2,
              A.employee_id_2,
              A.full_name_2,
              A.supervisor_id_3,
              A.employee_id_3,
              A.full_name_3,
              A.supervisor_id_4,
              A.employee_id_4,
              A.full_name_4,
              A.supervisor_id_5,
              A.employee_id_5,
              A.full_name_5,
              Z.supervisor_id AS supervisor_id_6,
              Z.employee_id AS employee_id_6,
              Z.full_name AS full_name_6
         FROM employee Z,
              SELECT DISTINCT
                   A.supervisor_id_1,
                   A.employee_id_1,
                   A.full_name_1,
                   A.supervisor_id_2,
                   A.employee_id_2,
                   A.full_name_2,
                   A.supervisor_id_3,
                   A.employee_id_3,
                   A.full_name_3,
                   A.supervisor_id_4,
                   A.employee_id_4,
                   A.full_name_4,
                   Z.supervisor_id AS supervisor_id_5,
                   Z.employee_id AS employee_id_5,
                   Z.full_name AS full_name_5
              FROM employee Z,
                   SELECT DISTINCT
                        A.supervisor_id_1,
                        A.employee_id_1,
                        A.full_name_1,
                        A.supervisor_id_2,
                        A.employee_id_2,
                        A.full_name_2,
                        A.supervisor_id_3,
                        A.employee_id_3,
                        A.full_name_3,
                        Z.supervisor_id AS supervisor_id_4,
                        Z.employee_id AS employee_id_4,
                        Z.full_name AS full_name_4
                   FROM employee Z,
                        SELECT DISTINCT
                             A.supervisor_id_1,
                             A.employee_id_1,
                             A.full_name_1,
                             A.supervisor_id_2,
                             A.employee_id_2,
                             A.full_name_2,
                             Z.supervisor_id AS supervisor_id_3,
                             Z.employee_id AS employee_id_3,
                             Z.full_name AS full_name_3
                        FROM employee Z,
                             SELECT DISTINCT
                                  A.supervisor_id_1,
                                  A.employee_id_1,
                                  A.full_name_1,
                                  Z.supervisor_id AS supervisor_id_2,
                                  Z.employee_id AS employee_id_2,
                                  Z.full_name AS full_name_2
                             FROM employee Z,
                                  SELECT DISTINCT
                                       supervisor_id AS supervisor_id_1,
                                       employee_id AS employee_id_1,
                                       full_name AS full_name_1
                                   FROM employee
                                   WHERE supervisor_id = 0 OR supervisor_id IS NULL
                             ) A
                             WHERE A.employee_id_1 = Z.supervisor_id
                        ) A
                        WHERE A.employee_id_2 = Z.supervisor_id
                   ) A
                   WHERE A.employee_id_3 = Z.supervisor_id
              ) A
              WHERE A.employee_id_4 = Z.supervisor_id
         ) A
         WHERE A.employee_id_5 = Z.supervisor_id
    ) A
    WHERE A.employee_id_6 = Z.supervisor_id
    UNION
    SELECT DISTINCT
         A.employee_id_6 AS employee_id,
         A.supervisor_id_1,
         A.employee_id_1,
         A.full_name_1,
         A.supervisor_id_2,
         A.employee_id_2,
         A.full_name_2,
         A.supervisor_id_3,
         A.employee_id_3,
         A.full_name_3,
         A.supervisor_id_4,
         A.employee_id_4,
         A.full_name_4,
         A.supervisor_id_5,
         A.employee_id_5,
         A.full_name_5,
         A.supervisor_id_6,
         A.employee_id_6,
         A.full_name_6,
         NULL AS supervisor_id_7,
         NULL AS employee_id_7,
         NULL AS full_name_7
    FROM employee Z,
         SELECT DISTINCT
              A.supervisor_id_1,
              A.employee_id_1,
              A.full_name_1,
              A.supervisor_id_2,
              A.employee_id_2,
              A.full_name_2,
              A.supervisor_id_3,
              A.employee_id_3,
              A.full_name_3,
              A.supervisor_id_4,
              A.employee_id_4,
              A.full_name_4,
              A.supervisor_id_5,
              A.employee_id_5,
              A.full_name_5,
              Z.supervisor_id AS supervisor_id_6,
              Z.employee_id AS employee_id_6,
              Z.full_name AS full_name_6
         FROM employee Z,
              SELECT DISTINCT
                   A.supervisor_id_1,
                   A.employee_id_1,
                   A.full_name_1,
                   A.supervisor_id_2,
                   A.employee_id_2,
                   A.full_name_2,
                   A.supervisor_id_3,
                   A.employee_id_3,
                   A.full_name_3,
                   A.supervisor_id_4,
                   A.employee_id_4,
                   A.full_name_4,
                   Z.supervisor_id AS supervisor_id_5,
                   Z.employee_id AS employee_id_5,
                   Z.full_name AS full_name_5
              FROM employee Z,
                   SELECT DISTINCT
                        A.supervisor_id_1,
                        A.employee_id_1,
                        A.full_name_1,
                        A.supervisor_id_2,
                        A.employee_id_2,
                        A.full_name_2,
                        A.supervisor_id_3,
                        A.employee_id_3,
                        A.full_name_3,
                        Z.supervisor_id AS supervisor_id_4,
                        Z.employee_id AS employee_id_4,
                        Z.full_name AS full_name_4
                   FROM employee Z,
                        SELECT DISTINCT
                             A.supervisor_id_1,
                             A.employee_id_1,
                             A.full_name_1,
                             A.supervisor_id_2,
                             A.employee_id_2,
                             A.full_name_2,
                             Z.supervisor_id AS supervisor_id_3,
                             Z.employee_id AS employee_id_3,
                             Z.full_name AS full_name_3
                        FROM employee Z,
                             SELECT DISTINCT
                                  A.supervisor_id_1,
                                  A.employee_id_1,
                                  A.full_name_1,
                                  Z.supervisor_id AS supervisor_id_2,
                                  Z.employee_id AS employee_id_2,
                                  Z.full_name AS full_name_2
                             FROM employee Z,
                                  SELECT DISTINCT
                                       supervisor_id AS supervisor_id_1,
                                       employee_id AS employee_id_1,
                                       full_name AS full_name_1
                                   FROM employee
                                   WHERE supervisor_id = 0 OR supervisor_id IS NULL
                             ) A
                             WHERE A.employee_id_1 = Z.supervisor_id
                        ) A
                        WHERE A.employee_id_2 = Z.supervisor_id
                   ) A
                   WHERE A.employee_id_3 = Z.supervisor_id
              ) A
              WHERE A.employee_id_4 = Z.supervisor_id
         ) A
         WHERE A.employee_id_5 = Z.supervisor_id
    ) A
    UNION
    SELECT DISTINCT
         A.employee_id_5 AS employee_id,
         A.supervisor_id_1,
         A.employee_id_1,
         A.full_name_1,
         A.supervisor_id_2,
         A.employee_id_2,
         A.full_name_2,
         A.supervisor_id_3,
         A.employee_id_3,
         A.full_name_3,
         A.supervisor_id_4,
         A.employee_id_4,
         A.full_name_4,
         A.supervisor_id_5,
         A.employee_id_5,
         A.full_name_5,
         NULL AS supervisor_id_6,
         NULL AS employee_id_6,
         NULL AS full_name_6,
         NULL AS supervisor_id_7,
         NULL AS employee_id_7,
         NULL AS full_name_7
    FROM employee Z,
         SELECT DISTINCT
              A.supervisor_id_1,
              A.employee_id_1,
              A.full_name_1,
              A.supervisor_id_2,
              A.employee_id_2,
              A.full_name_2,
              A.supervisor_id_3,
              A.employee_id_3,
              A.full_name_3,
              A.supervisor_id_4,
              A.employee_id_4,
              A.full_name_4,
              Z.supervisor_id AS supervisor_id_5,
              Z.employee_id AS employee_id_5,
              Z.full_name AS full_name_5
         FROM employee Z,
              SELECT DISTINCT
                   A.supervisor_id_1,
                   A.employee_id_1,
                   A.full_name_1,
                   A.supervisor_id_2,
                   A.employee_id_2,
                   A.full_name_2,
                   A.supervisor_id_3,
                   A.employee_id_3,
                   A.full_name_3,
                   Z.supervisor_id AS supervisor_id_4,
                   Z.employee_id AS employee_id_4,
                   Z.full_name AS full_name_4
              FROM employee Z,
                   SELECT DISTINCT
                        A.supervisor_id_1,
                        A.employee_id_1,
                        A.full_name_1,
                        A.supervisor_id_2,
                        A.employee_id_2,
                        A.full_name_2,
                        Z.supervisor_id AS supervisor_id_3,
                        Z.employee_id AS employee_id_3,
                        Z.full_name AS full_name_3
                   FROM employee Z,
                        SELECT DISTINCT
                             A.supervisor_id_1,
                             A.employee_id_1,
                             A.full_name_1,
                             Z.supervisor_id AS supervisor_id_2,
                             Z.employee_id AS employee_id_2,
                             Z.full_name AS full_name_2
                        FROM employee Z,
                             SELECT DISTINCT
                                  supervisor_id AS supervisor_id_1,
                                  employee_id AS employee_id_1,
                                  full_name AS full_name_1
                              FROM employee
                              WHERE supervisor_id = 0 OR supervisor_id IS NULL
                        ) A
                        WHERE A.employee_id_1 = Z.supervisor_id
                   ) A
                   WHERE A.employee_id_2 = Z.supervisor_id
              ) A
              WHERE A.employee_id_3 = Z.supervisor_id
         ) A
         WHERE A.employee_id_4 = Z.supervisor_id
    ) A
    UNION
    SELECT DISTINCT
         A.employee_id_4 AS employee_id,
         A.supervisor_id_1,
         A.employee_id_1,
         A.full_name_1,
         A.supervisor_id_2,
         A.employee_id_2,
         A.full_name_2,
         A.supervisor_id_3,
         A.employee_id_3,
         A.full_name_3,
         A.supervisor_id_4,
         A.employee_id_4,
         A.full_name_4,
         NULL AS supervisor_id_5,
         NULL AS employee_id_5,
         NULL AS full_name_5,
         NULL AS supervisor_id_6,
         NULL AS employee_id_6,
         NULL AS full_name_6,
         NULL AS supervisor_id_7,
         NULL AS employee_id_7,
         NULL AS full_name_7
    FROM employee Z,
         SELECT DISTINCT
              A.supervisor_id_1,
              A.employee_id_1,
              A.full_name_1,
              A.supervisor_id_2,
              A.employee_id_2,
              A.full_name_2,
              A.supervisor_id_3,
              A.employee_id_3,
              A.full_name_3,
              Z.supervisor_id AS supervisor_id_4,
              Z.employee_id AS employee_id_4,
              Z.full_name AS full_name_4
         FROM employee Z,
              SELECT DISTINCT
                   A.supervisor_id_1,
                   A.employee_id_1,
                   A.full_name_1,
                   A.supervisor_id_2,
                   A.employee_id_2,
                   A.full_name_2,
                   Z.supervisor_id AS supervisor_id_3,
                   Z.employee_id AS employee_id_3,
                   Z.full_name AS full_name_3
              FROM employee Z,
                   SELECT DISTINCT
                        A.supervisor_id_1,
                        A.employee_id_1,
                        A.full_name_1,
                        Z.supervisor_id AS supervisor_id_2,
                        Z.employee_id AS employee_id_2,
                        Z.full_name AS full_name_2
                   FROM employee Z,
                        SELECT DISTINCT
                             supervisor_id AS supervisor_id_1,
                             employee_id AS employee_id_1,
                             full_name AS full_name_1
                         FROM employee
                         WHERE supervisor_id = 0 OR supervisor_id IS NULL
                   ) A
                   WHERE A.employee_id_1 = Z.supervisor_id
              ) A
              WHERE A.employee_id_2 = Z.supervisor_id
         ) A
         WHERE A.employee_id_3 = Z.supervisor_id
    ) A
    UNION
    SELECT DISTINCT
         A.employee_id_3 AS employee_id,
         A.supervisor_id_1,
         A.employee_id_1,
         A.full_name_1,
         A.supervisor_id_2,
         A.employee_id_2,
         A.full_name_2,
         A.supervisor_id_3,
         A.employee_id_3,
         A.full_name_3,
         NULL AS supervisor_id_4,
         NULL AS employee_id_4,
         NULL AS full_name_4,
         NULL AS supervisor_id_5,
         NULL AS employee_id_5,
         NULL AS full_name_5,
         NULL AS supervisor_id_6,
         NULL AS employee_id_6,
         NULL AS full_name_6,
         NULL AS supervisor_id_7,
         NULL AS employee_id_7,
         NULL AS full_name_7
    FROM employee Z,
         SELECT DISTINCT
              A.supervisor_id_1,
              A.employee_id_1,
              A.full_name_1,
              A.supervisor_id_2,
              A.employee_id_2,
              A.full_name_2,
              Z.supervisor_id AS supervisor_id_3,
              Z.employee_id AS employee_id_3,
              Z.full_name AS full_name_3
         FROM employee Z,
              SELECT DISTINCT
                   A.supervisor_id_1,
                   A.employee_id_1,
                   A.full_name_1,
                   Z.supervisor_id AS supervisor_id_2,
                   Z.employee_id AS employee_id_2,
                   Z.full_name AS full_name_2
              FROM employee Z,
                   SELECT DISTINCT
                        supervisor_id AS supervisor_id_1,
                        employee_id AS employee_id_1,
                        full_name AS full_name_1
                    FROM employee
                    WHERE supervisor_id = 0 OR supervisor_id IS NULL
              ) A
              WHERE A.employee_id_1 = Z.supervisor_id
         ) A
         WHERE A.employee_id_2 = Z.supervisor_id
    ) A
    UNION
    SELECT DISTINCT
         A.employee_id_2 AS employee_id,
         A.supervisor_id_1,
         A.employee_id_1,
         A.full_name_1,
         A.supervisor_id_2,
         A.employee_id_2,
         A.full_name_2,
         NULL AS supervisor_id_3,
         NULL AS employee_id_3,
         NULL AS full_name_3,
         NULL AS supervisor_id_4,
         NULL AS employee_id_4,
         NULL AS full_name_4,
         NULL AS supervisor_id_5,
         NULL AS employee_id_5,
         NULL AS full_name_5,
         NULL AS supervisor_id_6,
         NULL AS employee_id_6,
         NULL AS full_name_6,
         NULL AS supervisor_id_7,
         NULL AS employee_id_7,
         NULL AS full_name_7
    FROM employee Z,
         SELECT DISTINCT
              A.supervisor_id_1,
              A.employee_id_1,
              A.full_name_1,
              Z.supervisor_id AS supervisor_id_2,
              Z.employee_id AS employee_id_2,
              Z.full_name AS full_name_2
         FROM employee Z,
              SELECT DISTINCT
                   supervisor_id AS supervisor_id_1,
                   employee_id AS employee_id_1,
                   full_name AS full_name_1
               FROM employee
               WHERE supervisor_id = 0 OR supervisor_id IS NULL
         ) A
         WHERE A.employee_id_1 = Z.supervisor_id
    ) A
    UNION
    SELECT DISTINCT
         A.employee_id_1 AS employee_id,
         A.supervisor_id_1,
         A.employee_id_1,
         A.full_name_1,
         NULL AS supervisor_id_2,
         NULL AS employee_id_2,
         NULL AS full_name_2,
         NULL AS supervisor_id_3,
         NULL AS employee_id_3,
         NULL AS full_name_3,
         NULL AS supervisor_id_4,
         NULL AS employee_id_4,
         NULL AS full_name_4,
         NULL AS supervisor_id_5,
         NULL AS employee_id_5,
         NULL AS full_name_5,
         NULL AS supervisor_id_6,
         NULL AS employee_id_6,
         NULL AS full_name_6,
         NULL AS supervisor_id_7,
         NULL AS employee_id_7,
         NULL AS full_name_7
    FROM employee Z,
         SELECT DISTINCT
              supervisor_id AS supervisor_id_1,
              employee_id AS employee_id_1,
              full_name AS full_name_1
          FROM employee
          WHERE supervisor_id = 0 OR supervisor_id IS NULL
    ) A

  • Security on Parent-Child Hierarchy

    Problem Statement: In Parent Child Hierarchy say with Manager - Employee relationship, if we apply security using Siblings function in the Dimension Data Security (Allowed Member Set) then it displays children of peers at
    same level as current employee.
    Scenario:
    Create Employee Dimension with Parent-Child hierarchy with steps below -
    1) add data
    ===============================
    (EmpKey|Name|Position| loginId| level| MgrKey)
    1|Scott King|CEO|sking|level1|null
    2|Rick Peters|VP|rpeters|level2|1
    3|Steve Parker|VP|sparker|level2|1
    4|Matt Jones|Dir|mjones|level3|2
    5|Doug Blanc|Dir|dblanc|level3|2
    6|Jay Lawson|Dir|jlawson|level3|3
    7|Lance Roberts|Dir|lroberts|level3|3
    ============================
    2) Create Parent-Child hierarchy on MgrKey with its Usage = Parent
    2a)set ValueColumn of Login_ID attribute to EmpKey.
    2b) Also set ValueColumn of MgrKey attribute to Login_ID. Rename Parent-child hierarchy to Employees
    3) Create Security Role and configure Dimension data security.
    In the allowed member set write the below MDX statement.
    { StrToMember( "[Employee].[Employees].&[" + CStr(StrToMember("[Employee].[Login ID].&[" + UserName( ) + "]").MEMBERVALUE) + "]"), StrToMember( "[Employee].[Employees].&["
    + CStr(StrToMember("[Employee].[Login ID].&[" + UserName( ) + "]").MEMBERVALUE) + "]").SIBLINGS }
    Expected Result:
    Using Siblings function - Ideally if Steve Parker connects to SSAS Cube then he should see his totals, only his subordinate totals, only his Peer's totals(not their subordinates) and his manager's totals.
    Actual Result:
    Due to above Dimension Security configuration, if Steve Parker connects to SSAS Cube then he will see his totals, his subordinate totals and his manager's totals. However due to Siblings function "Steve Parker" is also able to see
    Rick Peters's subordinate details.
    Query: Is there a way to achieve the Expected Result by restricting the children of Siblings?

    Hi Ketan,
    Thank you for your question. I am currently looking into this issue and will give you an update as soon as possible.
    Thank you for your understanding and support.
    Regards,
    Elvis Long
    TechNet Community Support

  • The Parent-Child Hierarchy can't be queried in any intermediate node

    Hi All,
    I've created a Parent-Child Hierarchy with Obiee 11g(11.1.1.3).
    I can use the filter to select any Root-Node and it can be expanded correctly.But if I choose any intermediate node,it can't be expanded.Then what can I do?
    Thanks in advance!
    Edited by: Needn on 2011-9-8 下午8:42

    Thx for your advice,but my qusetion has not been solved.
    I don't know how to use these function in the analytics page.Must I modify its default SQL and apply mine?
    Its default SQL like the following ,then how can I modify it to achieve my purpose?
    SELECT s_0, s_1, s_2, s_3, s_4 FROM (
    SELECT
    *0 s_0,*
    *"model"."DIM_PROD_COST_CATEGORY"."CATEGORY_NAME" s_1,*
    CASE WHEN ISLEAF("model"."DIM_PROD_COST_CATEGORY"."DIM_PROD_COST_CATEGORYDim") THEN 1 ELSE 0 END s_2,
    IDOF("model"."DIM_PROD_COST_CATEGORY"."DIM_PROD_COST_CATEGORYDim") s_3,
    PARENT("model"."DIM_PROD_COST_CATEGORY"."DIM_PROD_COST_CATEGORYDim") s_4
    FROM "model"
    WHERE
    ISROOT("model"."DIM_PROD_COST_CATEGORY"."DIM_PROD_COST_CATEGORYDim")
    *) djm ORDER BY 1*

  • Parent child hierarchy and measure using lookup

    Hi,
    I'm using OBIEE 11.1.1.5 and I have an issue with a parent child hierarchy, which is setup like case 4 in this example . When I create a simple analysis using the hierarchy and a simple measure, it works fine. But when I try to use a calculated measure using a lookup formula, I get the following error:
    Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 43113] Message returned from OBIS. [nQSError: 43119] Query Failed: [nQSError: 46036] Internal Assertion: Condition pTableRef->GetLeftTable() && pTableRef->GetLeftTable()->IsTableReference(), file server/Query/Optimizer/ServiceInterfaceMgr/Src/SQOIDriveJoinGenerator.cpp, line 568. (HY000)
    Does anyone know how to get past this error?
    Thanks,
    Mihai

    Hi,
    I'm using OBIEE 11.1.1.5 and I have an issue with a parent child hierarchy, which is setup like case 4 in this example . When I create a simple analysis using the hierarchy and a simple measure, it works fine. But when I try to use a calculated measure using a lookup formula, I get the following error:
    Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 43113] Message returned from OBIS. [nQSError: 43119] Query Failed: [nQSError: 46036] Internal Assertion: Condition pTableRef->GetLeftTable() && pTableRef->GetLeftTable()->IsTableReference(), file server/Query/Optimizer/ServiceInterfaceMgr/Src/SQOIDriveJoinGenerator.cpp, line 568. (HY000)
    Does anyone know how to get past this error?
    Thanks,
    Mihai

  • Parent-child hierarchy and fragmentation content

    Hello,
    I've tried to build simple model with OBIEE 11 using Oracle 11r2 as a data source. BMM has fragmentation content for fact table and few dimensions with different hierarchy types. It works fine with all hierarchy types except for parent child.
    When I build an answer with parent child hierarchy it terminates with error "Target data source does not support the operation".
    Does OBIEE 11 not support parent child with fragmentation content? Or am I missing something?
    Greetings
    Marcin

    I'm seeing the same issue. I've created a parent-child hierarchy along with two normal level-based hierarchies (one "normal", one skipped-level). The two level-based hierarchies work just fine in Answers. I can include them in the criteria, and data is displayed with the correct drilldowns.
    If I include the parent-child hierarchy, I get the same results as noted in the original post: "The layout of this view combined with the data, selections, or drills, or prompt values chosen, resulted in no data." I'm trying to look at the table view, with no filters.
    Interestingly, I can explicitly include that dimension's Parent column and Member column in the criteria, and data is displayed just fine.
    Here is the XML for the set of criteria that includes the separate Parent and Member columns (the one that works):
    SELECT s_0, s_1, s_2, s_3, s_4, s_5, s_6, s_7, s_8, s_9, s_10, s_11 FROM (
    SELECT
    0 s_0,
    "Retro_Biz"."Channels"."MEMBER" s_1,
    "Retro_Biz"."Channels"."PARENT" s_2,
    "Retro_Biz"."Products"."TOTAL_PRODUCT" s_3,
    "Retro_Biz"."Times"."YEAR" s_4,
    SPACE(1) s_5,
    SPACE(1) s_6,
    SPACE(1) s_7,
    IDOF("Retro_Biz"."Products"."Product"."Total Product") s_8,
    IDOF("Retro_Biz"."Times"."Time"."Year") s_9,
    "Retro_Biz"."Facts"."SALES" s_10,
    CAST(NULL AS DOUBLE) s_11
    FROM "Retro_Biz"
    UNION ALL
    SELECT
    1 s_0,
    "Retro_Biz"."Channels"."MEMBER" s_1,
    "Retro_Biz"."Channels"."PARENT" s_2,
    SPACE(1) s_3,
    SPACE(1) s_4,
    SPACE(1) s_5,
    SPACE(1) s_6,
    SPACE(1) s_7,
    SPACE(1) s_8,
    SPACE(1) s_9,
    CAST(NULL AS DOUBLE) s_10,
    REPORT_SUM("Retro_Biz"."Facts"."SALES" BY ) s_11
    FROM "Retro_Biz"
    ) djm ORDER BY 1, 5 ASC NULLS FIRST, 4 ASC NULLS FIRST
    Here is the XML that includes the Parent-Child hierarchy (the one that fails):
    SELECT s_0, s_1, s_2, s_3, s_4, s_5, s_6, s_7, s_8, s_9, s_10, s_11, s_12 FROM (
    SELECT
    0 s_0,
    "Retro_Biz"."Channels"."MEMBER" s_1,
    "Retro_Biz"."Products"."TOTAL_PRODUCT" s_2,
    "Retro_Biz"."Times"."YEAR" s_3,
    CASE WHEN ISLEAF("Retro_Biz"."Channels"."Channel") THEN 1 ELSE 0 END s_4,
    IDOF("Retro_Biz"."Channels"."Channel") s_5,
    SPACE(1) s_6,
    SPACE(1) s_7,
    SPACE(1) s_8,
    IDOF("Retro_Biz"."Products"."Product"."Total Product") s_9,
    IDOF("Retro_Biz"."Times"."Time"."Year") s_10,
    PARENT("Retro_Biz"."Channels"."Channel") s_11,
    "Retro_Biz"."Facts"."SALES" s_12
    FROM "Retro_Biz"
    WHERE
    ISROOT("Retro_Biz"."Channels"."Channel")
    UNION ALL
    SELECT
    1 s_0,
    SPACE(1) s_1,
    SPACE(1) s_2,
    SPACE(1) s_3,
    CAST(NULL AS INTEGER) s_4,
    SPACE(1) s_5,
    SPACE(1) s_6,
    SPACE(1) s_7,
    SPACE(1) s_8,
    SPACE(1) s_9,
    SPACE(1) s_10,
    SPACE(1) s_11,
    "Retro_Biz"."Facts"."SALES" s_12
    FROM "Retro_Biz"
    WHERE
    ISROOT("Retro_Biz"."Channels"."Channel")
    ) djm ORDER BY 1, 4 ASC NULLS FIRST, 3 ASC NULLS FIRST

  • Dimension with Parent-Child Hierarchy - not working

    hi,
    i tried making "Dimension with Parent-Child Hierarchy" as described in your tutorials.
    i finished with the admin tool and database changes and with no errors.
    when trying to create a new answer, by only puting the hierarchy column in the answer.
    the result show "no result" exist.
    i am not sure what i am doing wrong. maybe you can point me to the problem?
    thanks
    Mirit.

    956850 wrote:
    hi,
    i tried making "Dimension with Parent-Child Hierarchy" as described in your tutorials.
    i finished with the admin tool and database changes and with no errors.
    when trying to create a new answer, by only puting the hierarchy column in the answer.
    the result show "no result" exist.
    i am not sure what i am doing wrong. maybe you can point me to the problem?
    thanks
    Mirit.Hi Mirit,
    What is the table that you created hierarchy on?
    Which column in the hierarchy you pulled into your reports to see the No Result message?
    Please query the table and see if has data.
    Thanks,
    G. SK

  • Except function with parent child hierarchy using mdx query

    HI,
    I need to remove some items using mdx query in parent child hierarchy.
    I tried with below query,it is not removeing ,could you please help me.
    SELECT
    {[Measures].[Amount]} ON
    COLUMNS
     NonEmpty([Account].[Accounts].[Account Level 01],[Measures].[Amount])
    ON ROWS
    FROM (SELECT
    -Descendants({[Account].[Accounts].&[47]},,Leaves)
    } ON COLUMNS
    FROM [Adventure Works])
    indu

    Hi Indu,
    Why do you remove some itmes using
    Descendants function? Generally, we use FILTER function to achieve the requirement.
    WITH SET [CustomAccounts] AS
    FILTER ([Account].[Accounts].[Account Level 01].Members , [Account].[Accounts].CurrentMember.Name<>'Net Income')
    SELECT {[Measures].[Internet Sales Amount]} ON 0
    [CustomAccounts] ON 1
    FROM [Adventure Works]
    WITH SET [CustomAccounts] AS
    FILTER ([Account].[Accounts].[Account Level 01].Members , [Account].[Accounts].CurrentMember.Name='Net Income')
    SET [RemainingAccount] AS
    [Account].[Accounts].[Account Level 01]- [CustomAccounts]
    SELECT {[Measures].[Reseller Sales Amount]} ON 0
    [RemainingAccount] ON 1
    FROM [Adventure Works]
    Results.
    References.
    http://www.databasejournal.com/features/mssql/article.php/3306101/MDX-Essentials-Basic-Set-Functions-The-Filter-Function.htm
    http://social.msdn.microsoft.com/Forums/sqlserver/en-US/c0149678-97f2-4066-903f-7f9e9ff09b56/filtering-out-dimension-members-with-mdx?forum=sqlanalysisservices
    Regards,
    Charlie Liao
    If you have any feedback on our support,
    please click here.
    Charlie Liao
    TechNet Community Support

  • No data for Parent-child hierarchy column in Pivot table view

    Hi all,
    I used OBIEE 11.1.1.6.2 Version.
    I drag one Parent-child hierarchy column and one measure and show result with a pivot table view.
    But when I click "+" icon to show detail level data,
    It messaged that: "*the layout of this view combined with the data,selections,drills,or prompt values chosen resulted in no data*."
    But it can show every-level data when I used table view.
    It was so strange..
    Did anybody meet this before?
    Thanks in advance.
    regards,
    Anne

    Hi,
    Yes, I have the same problem with pivot table for hierarchy dimension.
    If you use a normal table (not pivot) it seem to work. Unfortunatley with restrictions as normal table view have.
    Same problem still exist in 11.1.1.6.5
    I have logged a SR to Oracle about this.

  • 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 ?

  • How to update a parent child hierarchy in OBIEE

    Hello All
    Quick question about updating parent child hierarchy in OBIEE.
    As we know, OBIEE 11G allows us to create value based hierarchy by generating table creation script and insert script. In the typical example of employee dimension, the parent child relationship table will be created with the following 4 attributes:
    MEMBER_KEY, ANCESTOR_KEY, DISTANCE, IS_LEAF
    So, what if later in the years some of the employees got promoted, retired or transferred? The value based hierarchy is going to change because person 1 reports to manager 2 now instead of 1. Obviously, the records in employee dimension is going to be updated. When that happens, how to update the parent child relation table with the same information? Do we have to rerun the insert script? How do we keep the history of employee changes and hierarchy changes?
    Please advice
    Thank you

    I guess it will update when the structure changes,Let see the response from other gurus.
    Thanks,

  • Parent-Child Hierarchy Show No Data

    Hi:
    OBIEE 11.1.1.6.5
    I created a parent-child hierarchy following multiple examples in books and on the web. I can pull the presentation hierarchy--by itself--into a view and drill up and down. But when I add a measurement from the fact table, I receive a no data found error. I copied the SQL into SQL*Developer and ran it, and it too returned no data. I've tried to read and debug the query in SQL*Developer, but I don't understand what it is doing.
    The dimension table I am using for the parent-child hierarchy has a cost_Center_id and parent_cost_center_id. I used the Parent-Child dimension wizard to create and populate the new hierarchy table.
    I can create a view by using the cost_center item and a fact table measurement without the presentation hierarchy, so it has something to do with the presentation hierarchy.
    I've been at this for a few days now, and I've run out of ideas. Can anyone suggest what I may have done wrong?
    Thanks.

    check if there is data in the fact table.. Next check also if the join condition between the dimension and fact is valid.

  • Parent Child Hierarchy for Type 2

    I have read the articles on Parent Child hierarchy setup in OBIEE 11g, however, most are based on what seems to be a current snapshot of the Employee-Manager relationship. Has anyone tried to build out a Parent-Child hierarchy/table off a Type 2 dimension. Being able to navigate what the hierarchy may have been on a specific date.
    I would welcome any feedback, thanks.

    Hi,
    Thanks for the reply, I'm actually using snapshots. But even with the Type 2 Dim I don't think it will work.
    When OBIEE generates the very first sql against the Parent-Child table the fact table is not included in the query. It seems to create 2 queries - one to find the top level parent (ancestor key is null) and then one to find all the leaf nodes.
    It does not have any join to the fact table when it does this. So if you have multiple rows in the table (with date stamps) for a single row (person in this case) - it picks up both rows. Therefore, when you have a person who was, say, promoted to manager, and WAS a leaf node, and is now a manager, they show up in the leaf query and don't display in the hierarchy as a manager.
    Once it has the leaf nodes and it joins to the fact table everything works (ie the surrogate key join).
    I'm trying to figure out if there is any way to influence those initial queries against the parent-child table.
    Hopefully that made sense.
    Thanks,
    Tori

  • Parent-Child hierarchy based on two-column key

    Hello
    Is it possible to create a parent-child hierarchy, if the primary key of the table consists of two columns?
    My table looks like:
    TRACE_ID | DIAG_ID | SUPER_DIAG_ID
    with TRACE_ID and DIAG_ID as PK.
    If I define only DIAG_ID as PK, I can add a logical dimension (PC-hierarchy) without problems.
    However when I also add TRACE_ID to my PK, I cannot select a member key in the new logical dimension window and therefore not create a logical dimension.
    Is this a limitation of OBIEE and I have to merge the two colums (which would be rather bad, as there are FK relations to DIAG_ID) or is there a solution?
    Regards
    Matthias

    Dear Gowtham  ,
    I am very well aware of the level based hierarchy available in BO .
    The issue that i have raised is all about the Parent Child Hierarchy which creates the recursive query.
    I.e Every Parent has a child and that child can be parent of some other . (See the original example for more illustration)

Maybe you are looking for

  • Refresh jTable after inserting new data into the Database

    Hey all, I'm using Netbeans 6.5 to create a Desktop Application which is connected to a Java DB (Derby). The first simple steps were all very successfull: Create the jTable and bind it to the Database => everything works fine. When the application st

  • ITunes Music Folder Issue:  Won't Read External Folder?

    Hi There. Just bought a new Mac Mini and installed a time machine backup on to it to mirror it with my latest laptop settings. So far, everything has been breezy, except for iTunes. I have an external drive with about 200GB of music/movies that I wan

  • HELP! USB device not recognised

    Please help, I bought a new ipod nano (2nd gen). I followed the quickstart instructions and connected it to my pc. I then got a message in a bubble that said; "One of the USB devices attached to this computer has malfunctioned, and Windows does not r

  • Setting up  Guest accounts on my 3 macBook pros

    Wanted to set up my MacBook pros with guest accounts with only limited access and privileges. I would like to set it up with no access to the home folder, applications folder (only the application that I allow access to), and the Preference folder. N

  • How to apply for requisition of inventory through the purchase requisition?

    Hello everybody, Can anyone tell me how to apply for requisition of inventory through the purchase requisition? And what processes should I run? Thanks.