Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Куб-А.doc
Скачиваний:
25
Добавлен:
15.05.2015
Размер:
309.76 Кб
Скачать

Изоляция на уровне области

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

Примечание

Иногда функции Aggregate (MDX)иVisualTotals (MDX)не работают таким образом.

Эта особенность позволяет обычным клиентским приложениям работать с кубами, которые содержат сложные вычисления, не вдаваясь в конкретную реализацию вычислений. Однако иногда может понадобиться выполнить вычисляемые элементы сеанса или области запроса раньше вычислений, определенных в кубе, при этом применить функции Aggregate и VisualTotals будет невозможно. Чтобы сделать это, воспользуйтесь свойством вычисления SCOPE_ISOLATION.

Пример

Ниже приведен пример скрипта, в котором для получения правильного результата используется свойство вычисления SCOPE_ISOLATION.

скрипт многомерных выражений куба:

Копировать

CREATE MEMBER CURRENTCUBE.Measures.ProfitRatio AS 'Measures.[Store Sales]/Measures.[Store Cost]', SOLVE_ORDER = 10

Запрос многомерных выражений:

Копировать

WITH MEMBER [Customer].[Customers].[USA]. USAWithoutWA AS

[Customer].[Customers].[Country].&[USA] - [Customer].[Customers].[State Province.&[WA], SOLVE_ORDER=5

SELECT {USAWithoutWA} ON 0 FROM SALES

WHERE ProfitRatio

В результате предыдущего запроса требовалось определить долю продаж в США, без штата Вашингтон (чтобы сохранить стоимость для США без штата Вашингтон). Предыдущий запрос не вернул ожидаемого результата. Возвращенным результатом была доля США за вычетом доли штата Вашингтон, что лишено смысла. Для достижения желаемого результата можно воспользоваться свойством вычисления SCOPE_ISOLATION.

Запрос многомерных выражений с применением свойства вычисления SCOPE_ISOLATION:

Копировать

WITH MEMBER [Customer].[Customers].[USA]. USAWithoutWA AS

[Customer].[Customers].[Country].&[USA] - [Customer].[Customers].[State Province.&[WA], SOLVE_ORDER=5

,SCOPE_ISOLATION=CUBE

SELECT {USAWithoutWA} ON 0 FROM SALES

WHERE ProfitRatio

Стандартные свойства

У каждого вычисляемого элемента есть набор стандартных свойств. При подключении клиентского приложения к службам Microsoft Analysis Services, стандартные свойства либо поддерживаются, либо доступны для поддержки по выбору администратора.

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

Идентификатор свойства

Назначение

SOLVE_ORDER

Порядок, в котором этот вычисляемый элемент будет вычисляться в случаях, когда один вычисляемый элемент ссылается на другой (то есть когда вычисляемые элементы пересекаются друг с другом).

FORMAT_STRING

Строка форматирования Microsoft Office, используемая клиентским приложением для отображения значений ячеек.

VISIBLE

Значение, определяющее видимость вычисляемого элемента в наборе строк схемы. Видимые вычисляемые элементы могут добавляться к набору функцией AddCalculatedMembers. Ненулевое значение указывает, что данный вычисляемый элемент видим. Значение этого свойства по умолчанию равно Visible.

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

NON_EMPTY_BEHAVIOR

Мера или набор, используемые для определения поведения вычисляемых элементов при разрешении пустых ячеек.

CAPTION

Строка, используемая клиентским приложением в качестве заголовка элемента.

DISPLAY_FOLDER

Строка, определяющая путь к папке отображения, которую клиентское приложение использует для демонстрации элемента. Разделитель уровней вложенности папок определяется клиентским приложением. Для средств и клиентов, входящих в службы Analysis Services, в качестве разделителя уровней используется обратная косая черта (\). Чтобы указать для определенного элемента несколько папок отображения, используйте для разделения папок точку с запятой (;).

ASSOCIATED_MEASURE_GROUP

Имя группы мер, с которой