定義預設成員
當查詢中並未包含屬性階層時,會使用屬性階層的預設成員來評估運算式。只要查詢包含屬性階層,或是使用者階層包含做為屬性階層來源的屬性,就會忽略預設成員。這是因為使用查詢中指定的成員。
屬性階層的預設成員是透過指定屬性成員做為屬性階層的 DefaultMember 屬性值而設定的。您可以在維度設計師中的 [維度結構] 索引標籤上設定此屬性,也可以在 Business Intelligence Development Studio 中 Cube 設計師的 [計算] 索引標籤上的 Cube 計算指令碼中設定此屬性。您也可以在定義維度安全性時,在 [維度資料] 索引標籤上指定安全性角色的 DefaultMember 屬性 (覆寫在維度上設定的預設成員)。若要避免名稱解析問題,請於下列情況,在 Cube 的 MDX 指令碼中定義預設成員:如果 Cube 多次參考資料庫維度、如果 Cube 中的維度名稱與資料庫中的維度名稱不同,或是如果您要在不同的 Cube 中有不同的預設成員。
當查詢中並未包含屬性時,會使用屬性的預設成員來評估運算式。屬性的預設成員由該屬性的 DefaultMember 屬性指定。只要查詢內包含來自維度的階層,對應到該階層內各層級之屬性的所有預設成員都會忽略。如果查詢內並未包含維度的階層,預設成員會用於維度中的所有屬性。
未指定預設成員時,解析預設成員
如果屬性階層沒有指定預設成員,而且該屬性階層是可彙總的 (屬性 (Attribute) 上的 IsAggregatable 屬性 (Property) 設定為 True),則 (全部) 成員都是預設成員。如果未指定任何預設成員,且屬性階層是不可彙總的 (屬性 (Attribute) 上的 IsAggregatable 屬性 (Property) 設定為 False),則會從屬性階層的最上層中選取預設成員。