Hi,
What you are seeing is expected behaviour.
The way that row suppression works in Dynamic Reports is by checking whether there is data for the:
- Row Elements
- Any Title Element Selectors you have defined (if you have them - your example doesn't)
- And Column Elements
The column element is the annoying bit here, because you have nested your columns - it actually takes the distinct lists from each and then essentially unions them:
Even though you are not displaying 2012 + EST together, both elements exist individually in columns - so the system still checks them.
Good news for the future - IBMers are often talking about the future release of new updated reports that will allow us I believe to Suppress Rows AND Columns. But we don't have that functionality yet.
In the interim, you can get around it in an example like yours by using an MDX expression on the row dimension instead of zero suppression.
So you could add MDX to the TM1RptRow:
{Filter (
{ [Measures].members },
[CubeName].([BudDim].[BUD],[YearDim].[2012]) <> 0
)}
+
{Filter (
{ [Measures].members },
[CubeName].([BudDim].[BUD],[YearDim].[2013]) <> 0
)}
+
{Filter (
{ [Measures].members },
[CubeName].([BudDim].[EST],[YearDim].[2013]) <> 0
)}
It can get annoying and complex to try and do it with MDX on bigger reports though.
You can make the MDX life easier for you in those instances by having Consolidations of the years for each "Version" for example, and then you check whether the intersection of the Year Consolidation combined with the relevant version is not 0. I would not recommend doing individual column checks like I have above if you have more than a few columns!
Thanks,
Declan
------------------------------
Declan Rodger
Technical Director
Spitfire Analytics
------------------------------