Avoid Visible Attribute Hierarchies for Attributes Used as Levels in User-Defined Hierarchies
Have you ever built a dimension in SSAS and received a blue informational warning advising you to:
“Avoid visible attribute hierarchies for attributes used as levels in user-defined hierarchies”
What does this mean and how do we fix it?
Explanation
You have defined attributes in your dimension and also used them to create your user-defined hierarchy level. There are certain cases in which you would want to have single-level hierarchies versus using the user-defined multi-level hierarchy. An example of a good use for single-level hierarchies is when you want to only slice by year and do not want to have to look at a hierarchy from year to quarter year and so on…. only to pull the year out of the hierarchy to slice against the fact table.
The truth is this will not stop your dimension from processing. Having both gives you the ability to slice by the attributes, or you can slice by the defined hierarchy.
Resolution
If you are going to use a user-defined hierarchy, set every attribute that you use to define the hierarchy levels to false. Right click on the attribute → Click on properties →(Property Pane Window) Set AttributeHierarchyVisible to False.
The blue squiggly line will disappear. However, now when you slice against the fact based off these attributes, you will need to use the user-defined hierarchy that you have designed to access the attributes within it.
As a quick reference, look at the difference between the two from a browser stand point:
Attributes set to visible looks like this:
Attributes with visible set to false looks and has to be accessed through the hierarchy like this:
From here, you can slice using the individual attributes.
That was an easy fix by just understanding what SSAS is recommending. As business intelligence developers, it is our job to know what these informational messages are and what to do to resolve them. I hope this helps someone along the way. Stay tuned for more tips and tricks from RDX DBAs.
