Определение данных MDX - СОЗДАТЬ УЧАСТНИК

Создаёт вычисленный член.

Syntax

  
CREATE [ SESSION ] [HIDDEN] [ CALCULATED ] MEMBER CURRENTCUBE | Cube_Name.Member_Name   
   AS MDX_Expression  
      [,Property_Name = Property_Value, ...n]  
......[,SCOPE_ISOLATION = CUBE]  

Arguments

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

Member_Name
Допустимое строковое выражение, дающее имя члена. Закажите полностью квалифицированное имя для создания члена внутри измерения, отличного от измерения мер. Если вы не предоставите полностью квалифицированное имя участника, участник будет создан в измерении Мерки.

MDX_Expression
Допустимое выражение многомерных выражений (MDX).

Property_Name
Действительная строка, дающая имя вычисленного свойства члена.

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

Remarks

Утверждение CREATE MEMBER определяет вычисленные элементы, доступные на протяжении всей сессии и, следовательно, могут использоваться в нескольких запросах во время сессии. Для получения дополнительной информации см. раздел Создание Session-Scoped рассчитанных членов (MDX).

Вы также можете определить вычисленный элемент для использования одним запросом. Чтобы определить вычисленный элемент, ограниченный одним запросом, используйте клаузу WITH в операторе SELECT. Для получения дополнительной информации см. раздел Создание Query-Scoped рассчитанных членов (MDX).

Property_Name может относиться как к стандартным, так и к необязательным рассчитанным свойствам члена. Стандартные свойства участников перечислены позже в этой теме. Вычисленные элементы, созданные с помощью CREATE MEMBER без значения SESSION , имеют область действия сессии. Кроме того, строки внутри вычисленных определений членов разделяются двойными кавычками. Это отличается от метода, определённого в OLE DB, который указывает, что строки должны быть разделены отдельными кавычками.

Указание куба, отличного от текущего подключенного куба, вызывает ошибку. Поэтому следует использовать CURRENTCUBE вместо названия куба, чтобы обозначить текущий куб.

Для получения дополнительной информации о свойствах участников, определяемых OLE DB, см. документацию OLE DB.

Объем

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

Область запроса
Видимость и срок службы вычисленного члена ограничены самим запросом. Вычисленный элемент определяется в отдельном запросе. Область запроса переопределяет область сессии. Для получения дополнительной информации см. раздел Создание Query-Scoped рассчитанных членов (MDX).

Объем сессии
Видимость и срок службы рассчитанного участника ограничены сессией, в которой он создан. (Срок действия меньше длительности сессии, если на рассчитанном члене выдаётся заявление DROP MEMBER.) Оператор CREATE MEMBER создаёт вычислённый член с областью действия сессии.

Изоляция объёма

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

Note

В некоторых случаях функция Aggregate (MDX) и функция VisualTotals (MDX) не проявляют такого поведения.

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

Пример

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

Скрипт MDX от Cube:

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

Запрос MDX:

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  

Желаемый результат предыдущего запроса — это отношение продаж в США без WA к стоимости хранения для США без WA. Предыдущий запрос не возвращает желаемый результат; она возвращает отношение США минус соотношение WA, что является бессмысленным результатом. Для достижения желаемого результата можно использовать свойство SCOPE_ISOLATION вычисления.

Запрос MDX с использованием свойства вычислений 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  

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

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

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

Идентификатор свойства Значение
SOLVE_ORDER Порядок, в котором вычисленный элемент будет решаться в случаях, когда вычисленный элемент ссылается на другой вычисленный элемент (то есть когда вычисленные элементы пересекаются друг с другом).
FORMAT_STRING Строка формата в стиле Office, которую клиентское приложение может использовать при отображении значений ячеек.
ВИДИМО Значение, указывающее, видим ли вычисленный элемент в наборе строк схемы. Видимые вычисленные элементы можно добавить в набор с помощью функции AddCalculatedMembers . Ненулевое значение указывает, что вычисленный элемент виден. Значение по умолчанию для этого свойства — Visible.

Вычисленные элементы, которые не видны (где это значение установлено равным нулю), обычно используются как промежуточные шаги в более сложных вычисленных элементах. Эти рассчитанные члены также могут называться другими типами членов, такими как измерения.
NON_EMPTY_BEHAVIOR Мера или множество, используемое для определения поведения вычисленных элементов при разрешении пустых ячеек.

** Предупреждение ** Эта недвижимость устарела. Избегайте установки. Подробности см. статьи «Устаренные аналитические сервисы в SQL Server 2014».
ПОДПИСЬ Строка, которую клиентское приложение использует в качестве подписи для участника.
DISPLAY_FOLDER Строка, определяющая путь папки отображения, которую клиентское приложение использует для отображения участника. Разделитель на уровне папок определяется клиентским приложением. Для инструментов и клиентов, предоставляемых Analysis Services, обратная косая черта (\) является разделителем уровней. Для создания нескольких папок для определённого элемента используйте точку с запятой (;) для разделения папок.
ASSOCIATED_MEASURE_GROUP Название группы измерений, к которой относится этот член.