Let's say I have a hierarchy like this:TaskDim:Tenant NameTeam NameProject NameTask NameTask StatusTaskFactsTaskDimIdHoursToCompleteAnd I setup attribute relationships corresponding to the hierarchy:TaskDimId -> Tenant N->Team N->Project N.->Task Name->Task StatusThe same TaskName might/often occurs across projects/teams/tenants. So when I setup the above attribute relationships I get the "duplicate" error. I can solve this error by creating a key for TaskName of Tenant Name,Team Name,Project Name, Task Name.However, once I do this, rollups no longer work. A report that omits Project Name for example, will repeat the same Task Name multiple times instead of rolling up, since each Task has a unique key now.Note, the same issue occurs for TaskStatus, since all tasks share the same set of statuses, then you would also get the duplicate error here.I.e., sometimes users may want to omit Project and Team Name from the report, and see sum HoursToComplete across these.[b]Desired Report:[/b]Tenant A, Water Plants, Incomplete, 200Tenant A, Water Plants, Done, 345Tenant A, Take out Garbage, Incomplete, 100Tenant A, Take out Garbage, Done, 124[b]Actual Report, due to TaskName including Team/Project in key:[/b]Tenant A, Water Plants, Done, 125Tenant A, Water Plants, Done, 110Tenant A, Water Plants, Done, 110Tenant A, Water Plants, Incomplete, 50Tenant A, Water Plants, Incomplete, 150Tenant A, Take out Garbage, Done, 24Tenant A, Take out Garbage, Done, 30Tenant A, Take out Garbage, Done, 50Tenant A, Take out Garbage, Done, 20Tenant A, Take out Garbage, Incomplete, 75Tenant A, Take out Garbage, Incomplete, 25[b]Is there a way to get the relationships setup for the hierarchy, and still allow tasks to rollup as per [i]desired [/i]example?[/b]I know I could just leave relationships default, and setup explicit aggregations to improve performance. However, I would like to do it "properly" and perhaps expand my knowledge a bit on how keys can be set properly but still allow rollups.[b]Would this be considered an unnatural hierarchy due to the way deeper levels have common/repeating values?[/b]I could of course reorder the hierarchy, but it wouldn't really fit typical usage scenarios. No one is going to start by drilling from Task Status, down to Task Name and get anything useful out of that. They would almost always start with Tenant Name and drilldown. They'd never do analysis across tenants. They may or may not sometimes include Team/Project, depending on what they are trying to accomplish.
↧