Определение члена по умолчанию

Элемент иерархии атрибутов по умолчанию используется для вычисления выражений, если иерархия атрибутов не включена в запрос. Элемент по умолчанию игнорируется всякий раз, когда запрос включает иерархию атрибутов или пользовательскую иерархию, которая содержит атрибут, образующий иерархию атрибутов. Это связано с тем, что используется элемент, указанный в запросе.

Элемент по умолчанию для иерархии атрибутов задается путем указания члена атрибута в качестве DefaultMember значения свойства для иерархии атрибутов. Это свойство можно задать на вкладке "Структура измерения" в конструкторе измерений или в скрипте вычисления куба на вкладке "Вычисление" в конструкторе кубов в SQL Server Data Tools (SSDT). Вы также можете указать свойство DefaultMember для роли безопасности, переопределяя набор элементов по умолчанию в измерении, на вкладке "Данные измерений" при определении безопасности измерения. Чтобы избежать проблем с разрешением имен, определите элемент по умолчанию в скрипте многомерных выражений куба в следующих ситуациях: если куб ссылается на измерение базы данных более одного раза, если измерение в кубе имеет другое имя, отличное от измерения в базе данных, или если вы хотите иметь разные члены по умолчанию в разных кубах.

Элемент по умолчанию для атрибута используется для оценки выражений, если атрибут не включен в запрос. Элемент по умолчанию для атрибута определяется свойством DefaultMember атрибута. Всякий раз, когда иерархия из измерения включена в запрос, все элементы по умолчанию из атрибутов, соответствующих уровням в иерархии, игнорируются. Если иерархия измерения не включена в запрос, элементы по умолчанию используются для всех атрибутов в измерении.

Разрешение элемента по умолчанию при отсутствии элемента по умолчанию

Если для иерархии атрибутов не указан элемент по умолчанию, а иерархия атрибутов является агрегируемой ( IsAggregatable свойство атрибута имеет Trueзначение ), элемент (All) является элементом по умолчанию. Если элемент по умолчанию не указан и иерархия атрибутов не является агрегируемой ( IsAggregatable свойством атрибута задано Falseзначение ), элемент по умолчанию выбирается на верхнем уровне иерархии атрибутов.

Указание элемента по умолчанию

Каждый атрибут в измерении в Microsoft SQL Server Analysis Services имеет элемент по умолчанию, который можно указать с помощью свойства атрибута DefaultMember. Этот параметр используется для оценки выражений, если атрибут не включен в запрос. Если запрос задает иерархию в измерении, элементы по умолчанию для атрибутов в иерархии игнорируются. Если запрос не задает иерархию в измерении, DefaultMember параметры атрибутов измерения вступают в силу.

Если для атрибута задано пустое DefaultMember значение, а его IsAggregatable свойство имеет значение True, элемент по умолчанию — "Все". IsAggregatable Если для свойства задано Falseзначение, элемент по умолчанию является первым членом первого видимого уровня.

Параметр DefaultMember атрибута применяется к каждой иерархии, в которой участвует атрибут. Нельзя использовать разные параметры для различных иерархий в измерении. Например, если элемент [1998] является элементом по умолчанию для атрибута [Year], этот параметр применяется к каждой иерархии в измерении. Параметр DefaultMember в этом случае не может быть [1998] в одной иерархии и [1997] в другой иерархии.

Если вы определяете элемент по умолчанию для определенного уровня в иерархии, которая не агрегирует естественно, необходимо определить элементы по умолчанию на всех уровнях выше этого уровня в иерархии. Например, в иерархии All-Countries-Climate нельзя определить элемент по умолчанию для климата, если только вы не определите элемент по умолчанию для стран. Если это не сделать, возникают ошибки при выполнении запросов.

Когда уровни в иерархии агрегируются естественно, можно определить элемент по умолчанию для любого атрибута в иерархии без учета других атрибутов в иерархии. Например, в иерархии Country/Region-Province-City можно определить член по умолчанию для города, например [Город].[Монреаль], без определения члена по умолчанию для провинции или страны/региона.

См. также

Настройка уровня (Все) для иерархий атрибутов