MDX NULLプロパティ値

MDXを使用してEssbaseプロパティを問い合せる場合、すべてのメンバーに、要求されたプロパティ名に有効な値があるとはかぎりません。このような場合、NULL値が返されます。

たとえば、MEMBER_ALIASプロパティはメンバーの別名を返します。ただし、すべてのメンバーに別名が定義されているわけではありません。

次の問合せでは、Yearディメンションのどのメンバーにも別名が定義されていないと仮定します。そのため、この問合せは、YearディメンションのメンバーのMEMBER_ALIASプロパティにNULL値を返します:

 SELECT
  [Year].Members
     DIMENSION PROPERTIES MEMBER_ALIAS on columns

属性プロパティは、特定のディメンションおよびそのディメンションの特定のレベルのメンバーに対して定義されます。Sample Basicデータベースでは、[Ounces]プロパティは、Productディメンションのレベル0メンバーに対してのみ定義されています。

そのため、次の問合せに示すように、Marketディメンションからメンバーの[Ounces]プロパティを問い合せると、構文エラーが発生します。

      
 SELECT
    Filter([Market].members,
           [Market].CurrentMember.[Ounces] = 32) on columns

さらに、ディメンションのレベル0以外のメンバーの[Ounces]プロパティを問い合せると、NULL値が取得されます。

値式でプロパティ値を使用する場合、関数IsValid()を使用して、NULL値をチェックできます。次の問合せは、NULL値を持つメンバーの削除後、[Ounces]プロパティ値が12のすべてのProductディメンション・メンバーを返します。

           
 Select
    Filter([Product].Members,
           IsValid([Product].CurrentMember.[Ounces]) and
           [Product].CurrentMember.[Ounces] = 12) on columns