Hi all,
I have a disconnected utility dimension with the following data and a waterfall->subwaterfall hierarchy. I have ignore if same as parent set on sub water fall. The unary operator is assigned to the relevant level
WaterFall | WaterFallUnary | SubWaterFall | SubWaterFallUnary |
Opening | ~ | Opening | ~ |
Price | ~ | Price | ~ |
Total Composition | ~ | Composition L1 | + |
Total Composition | ~ | Composition L2 | + |
Total Composition | ~ | Composition L3 | + |
Total Composition | ~ | Composition L4 | + |
Total Composition | ~ | Composition L5 | + |
Closing | ~ | Closing | ~ |
I'm using MDX to set values to the members
SCOPE(Measures.Waterfall,[Dim Waterfall].[Water Fall].&[Price]);
THIS=Measures.LowestPrice;
END SCOPE;
SCOPE(Measures.Waterfall,[Dim Waterfall].[Sub Water Fall].&[Composition L1]);
THIS=Measures.[Composition L1];
END SCOPE;
SCOPE(Measures.Waterfall,[Dim Waterfall].[Sub Water Fall].&[Composition L2]);
THIS=Measures.[Composition L2];
END SCOPE;
SCOPE(Measures.Waterfall,[Dim Waterfall].[Sub Water Fall].&[Composition L3]);
THIS=Measures.[Composition L3];
END SCOPE;
SCOPE(Measures.Waterfall,[Dim Waterfall].[Sub Water Fall].&[Composition L4]);
THIS=Measures.[Composition L4];
END SCOPE;
SCOPE(Measures.Waterfall,[Dim Waterfall].[Sub Water Fall].&[Composition L5]);
THIS=Measures.[Composition L5];
END SCOPE;
But when i run a simple select query
SELECT
{[Measures].[Waterfall]} ON COLUMNS,
[Dim Waterfall].[Water Fall].[Water Fall] ON ROWS
FROM [GPA]
I only get a value for price. Total Composition is NULL. If I change my query to look at the subwaterfall level then I see values for composition L1->L5, so I know there are values there
I was expecting the unary operator to aggregate my composition measures into Total Composition.
I should point out that every measure that's being assigned to my utility dim is calculated with in excess of a dozen or so steps and intermediate calcs, is this causing some kind of solve order issue?
I know that as a workaround i could probably do something like
SCOPE(Measures.Waterfall,[Dim Waterfall].[Water Fall].&[Total Composition]);
THIS=SUM([Dim Waterfall].[Hierarchy].[Water Fall].&[Total Composition].Children,Measures.Waterfall);
END SCOPE;
but that defeats the purpose of the unary operators
Any hints?
this is sql server 2014 multidimensional
cheers,
Jakub
Jakub @ Melbourne, Australia Blog