Определение элемента по умолчанию
Элемент по умолчанию иерархии атрибута предназначен для вычисления выражений в том случае, если иерархия атрибутов не включена в запрос. Этот элемент не обрабатывается, если запрос содержит иерархию атрибута или пользовательскую иерархию, в которых присутствует атрибут, являющийся источником иерархии атрибута. В этом случае используется элемент, указанный в запросе.
Элемент по умолчанию для иерархии атрибута задается указанием элемента атрибута в качестве значения свойства DefaultMember
для иерархии атрибута. Это свойство можно задать на вкладке Структура измерения в Designer измерения или в скрипте вычислений куба на вкладке Вычисление в Designer куба в SQL Server Data Tools (SSDT). Можно также задать свойство DefaultMember
для роли безопасности (переопределив элемент по умолчанию, заданный для измерения) на вкладке «Данные измерения» при определении безопасности измерения. Во избежание проблем разрешения имен следует определить элемент по умолчанию в скрипте многомерных выражений куба в следующих ситуациях: если куб ссылается на измерение базы данных более одного раза, если имя измерения в кубе отличается от имени измерения в базе данных и если в разных кубах должны быть различные элементы по умолчанию.
Элемент по умолчанию атрибута используется для оценки выражений, когда атрибут не включен в запрос. Элемент по умолчанию для атрибута указывается свойством DefaultMember
атрибута. Когда иерархия из измерения включается в запрос, все элементы по умолчанию из атрибутов, соответствующих уровням иерархии, пропускаются. Если в запрос не включена иерархия измерения, то элементы по умолчанию используются для всех атрибутов в измерении.
Разрешение элемента по умолчанию при отсутствии указанного элемента по умолчанию
Если для иерархии атрибута не указан элемент по умолчанию и она допускает статистическую обработку (свойство IsAggregatable
атрибута равно True
), то элементом по умолчанию является элемент «Все». Если элемент по умолчанию не указан и атрибут не подлежит статистическому вычислению (свойство IsAggregatable
атрибута равно False
), то элемент по умолчанию выбирается из верхнего уровня иерархии атрибута.
Задание элемента по умолчанию
Каждый атрибут в измерении в Microsoft SQL Server Analysis Services имеет элемент по умолчанию, который можно указать с помощью DefaultMember
свойства для атрибута. Эта настройка используется для оценки выражений, если атрибут не включен в запрос. Если в запросе задается иерархия в измерении, то элементы по умолчанию для атрибутов и иерархии игнорируются. Если в запросе не указана иерархия в измерении DefaultMember
, вступают в силу параметры атрибутов измерения.
DefaultMember
Если параметр атрибута пуст, а его IsAggregatable
свойство имеет значение True
, по умолчанию используется элемент All. Если свойству IsAggregatable
присвоено значение False
, элемент по умолчанию является первым элементом первого видимого уровня.
Параметр DefaultMember
атрибута применяется к каждой иерархии, в которой участвует атрибут. Нельзя использовать различные настройки для различных иерархий в измерении. Например, если элемент [1998] является элементом по умолчанию для атрибута [Год], то эта настройка применяется ко всем иерархиям в измерении. Параметр DefaultMember
в этом случае не может быть [1998] в одной иерархии и [1997] в другой иерархии.
При определении элемента по умолчанию для конкретного уровня в иерархии, который не вычисляется естественным образом, необходимо определить элементы по умолчанию на всех уровнях выше этого уровня в иерархии. Например, в иерархии All-Countries-Climate нельзя определить элемент по умолчанию для Параметра Климат, если вы не определите элемент по умолчанию для Параметра Страны. Если это не сделано, то будут возникать ошибки во время выполнения запросов.
Когда уровни в иерархии вычисляются естественным образом, можно определить элемент по умолчанию для любого атрибута в иерархии, вне зависимости от других атрибутов в этой иерархии. Например, в иерархии Country/Region-Province-City можно определить элемент по умолчанию для city, например [City]. [Монреаль] без определения элемента по умолчанию для state или country/region.