Not all members may have valid values for a given property name. For example, the MEMBER_ALIAS property returns an alternate name for a given member as defined in the outline; however, not all members may have aliases defined. In these cases A NULL value would be returned for those members that do not have aliases.
In the following query:
SELECT
[Year].Members
DIMENSION PROPERTIES MEMBER_ALIAS on columnsnone of the members in the Year dimension have aliases defined for them. Therefore, the query returns NULL values for the MEMBER_ALIAS property for members in the Year dimension.
The attribute properties are defined for members of a specific dimension and a specific level in that dimension. In the Sample Basic database, the [Ounces] property is defined only for level-0 members of the Product dimension.
Therefore, if you query for the [Ounces] property of a member from the Market dimension, as shown in the following query, you will get a syntax error:
SELECT
Filter([Market].members,
[Market].CurrentMember.[Ounces] = 32) on columnsAdditionally, if you query for the [Ounces] property of a non level-0 member of the dimension, you will get a NULL value.
When using property values in value expressions, you can use the function IsValid() to check for NULL values. The following query returns all Product dimension members with [Ounces] property value of 12, after eliminating members with NULL values.
Select
Filter([Product].Members,
IsValid([Product].CurrentMember.[Ounces]) and
[Product].CurrentMember.[Ounces] = 12) on columns