Поделиться через


Свойства ячеек (многомерные выражения)

Свойства ячеек в языке многомерных выражений содержат сведения о содержимом и формате ячеек многомерного источника данных, такого как куб.

В многомерных выражениях поддерживается ключевое слово CELL PROPERTIES инструкции многомерных выражений SELECT, которое служит для обращения к внутренним свойствам ячеек. Внутренние свойства ячеек чаще всего применяются для наглядного представления данных ячейки.

Синтаксис ключевого слова CELL PROPERTIES

Для указания ключевого слова CELL PROPERTIES в инструкции многомерных выражений SELECT используется следующий синтаксис.

SELECT [<axis_specification>
       [, <axis_specification>...]]
  FROM [<cube_specification>]
[WHERE [<slicer_specification>]]
[<cell_props>]

В следующей синтаксической конструкции демонстрируется формат значения <cell_props> и использование этим значением ключевого слова CELL PROPERTIES с одним или несколькими внутренними свойствами ячеек.

<cell_props> ::= CELL PROPERTIES <property> [, <property>...]

Поддерживаемые внутренние свойства ячеек

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

Свойство

Описание

ACTION_TYPE

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

  • MDACTION_TYPE_URL

  • MDACTION_TYPE_HTML

  • MDACTION_TYPE_STATEMENT

  • MDACTION_TYPE_DATASET

  • MDACTION_TYPE_ROWSET

  • MDACTION_TYPE_COMMANDLINE

  • MDACTION_TYPE_PROPRIETARY

  • MDACTION_TYPE_REPORT

  • MDACTION_TYPE_DRILLTHROUGH

ПримечаниеПримечание
Действия детализации не поддерживаются для запросов, содержащих набор в предложении WHERE.

BACK_COLOR

Цвет фона при отображении свойства VALUE или FORMATTED_VALUE. Дополнительные сведения см. в разделе Свойства ячеек FORE_COLOR и BACK_COLOR (многомерные выражения).

CELL_ORDINAL

Порядковый номер ячейки в наборе данных.

FONT_FLAGS

Битовая маска, определяющая стиль шрифта. Значение представляет собой результат побитовой операции OR над одной или несколькими следующими константами.

  • MDFF_BOLD = 1

  • MDFF_ITALIC = 2

  • MDFF_UNDERLINE = 4

  • MDFF_STRIKEOUT = 8

Например, значение 5 соответствует комбинации полужирного (MDFF_BOLD) и подчеркнутого (MDFF_UNDERLINE) стилей.

FONT_NAME

Название шрифта, используемого для отображения свойства VALUE или FORMATTED_VALUE.

FONT_SIZE

Размер шрифта, используемого для отображения свойства VALUE или FORMATTED_VALUE.

FORE_COLOR

Цвет текста при отображении свойства VALUE или FORMATTED_VALUE. Дополнительные сведения см. в разделе Свойства ячеек FORE_COLOR и BACK_COLOR (многомерные выражения).

FORMAT

Эквивалентно FORMAT_STRING.

FORMAT_STRING

Строка формата, с помощью которой создается значение свойства FORMATTED_VALUE. Дополнительные сведения см. в разделе Строка формата FORMAT_STRING (многомерные выражения).

FORMATTED_VALUE

Символьная строка, представляющая собой форматированный вывод свойства VALUE.

LANGUAGE

Код языка, для которого создается формат FORMAT_STRING. LANGUAGE обычно используется для конвертации валют.

UPDATEABLE

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

  • MD_MASK_ENABLED (0x00000000)   Ячейку можно обновить.

  • MD_MASK_NOT_ENABLED (0x10000000)   Ячейку нельзя обновить.

  • CELL_UPDATE_ENABLED (0x00000001)   Ячейку можно обновить в наборе ячеек.

  • CELL_UPDATE_ENABLED_WITH_UPDATE (0x00000002)   Ячейку можно обновить при помощи инструкции обновления. Операция может не выполниться, если обновляемая конечная ячейка не доступна для записи.

  • CELL_UPDATE_NOT_ENABLED_FORMULA (0x10000001)   Ячейку нельзя обновить, поскольку одна из ее координат является вычисляемым элементом; ячейка была извлечена вместе с набором в предложении WHERE. Ячейку можно обновить, даже если значение ячейки зависит от формулы или от вычисляемого элемента (например, если она обрабатывается статистической функцией). В этом случае итоговое значение ячейки может не соответствовать обновленному значению, поскольку на результат влияют вычисления.

  • CELL_UPDATE_NOT_ENABLED_NONSUM_MEASURE (0x10000002) Ячейку нельзя обновить, поскольку нельзя обновлять несуммарные меры (количество, минимум, максимум, число различных объектов, полуаддитивные показатели).

  • CELL_UPDATE_NOT_ENABLED_NACELL_VIRTUALCUBE (0x10000003)   Ячейку нельзя обновить, так как она не существует, поскольку находится на пересечении меры и элемента измерения, не связанного с группой мер данной меры.

  • CELL_UPDATE_NOT_ENABLED_SECURE (0x10000005)    Ячейку нельзя обновить, поскольку она защищена.

  • CELL_UPDATE_NOT_ENABLED_CALCLEVEL (0x10000006)   Зарезервировано для использования в будущем.

  • CELL_UPDATE_NOT_ENABLED_CANNOTUPDATE (0x10000007)   Ячейку нельзя обновить по внутренним причинам.

  • CELL_UPDATE_NOT_ENABLED_INVALIDDIMENSIONTYPE (0x10000009)   Ячейку нельзя обновить, поскольку обновление не поддерживается моделью интеллектуального анализа, косвенным измерением или измерением интеллектуального анализа данных.

VALUE

Неформатированное значение ячейки.

Для работы с ячейками требуются только свойства ячеек CELL_ORDINAL, FORMATTED_VALUE и VALUE. Все внутренние или предоставленные поставщиком свойства ячеек, включая их типы данных и поддержку поставщиками, определены в наборе строк схемы PROPERTIES. Дополнительные сведения о наборе строк схемы PROPERTIES см. в разделе Набор строк MDSCHEMA_PROPERTIES.

По умолчанию, если не используется ключевое слово CELL PROPERTIES, возвращаются свойства ячеек VALUE, FORMATTED_VALUE и CELL_ORDINAL (именно в этом порядке). Если используется ключевое слово CELL PROPERTIES, возвращаются свойства ячеек, явно перечисленные в ключевом слове.

В следующем примере иллюстрируется использование ключевого слова CELL PROPERTIES в многомерном запросе.

SELECT
   {[Measures].[Reseller Gross Profit]} ON COLUMNS,
   {[Reseller].[Reseller Type].[Reseller Name].Members} ON ROWS
FROM [Adventure Works]
CELL PROPERTIES VALUE, FORMATTED_VALUE, FORMAT_STRING, FORE_COLOR, BACK_COLOR

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

Настройка свойств ячеек

Свойства ячеек в службах Microsoft SQL Server Службы Analysis Services могут задаваться в различных местах. Например, свойство «Строка формата» для обычных мер может задаваться на вкладке «Структура куба» редактора кубов в среде BI Development Studio; то же свойство для вычисляемых мер, определенных в кубе, задается на вкладке «Вычисления» редактора кубов; у вычисляемых мер, определенных в предложении WITH запроса, там же определяется собственная строка формата. Установка свойств ячейки для вычисляемой меры показана в следующем запросе:

WITH MEMBER MEASURES.CELLPROPERTYDEMO AS [Measures].[Internet Sales Amount]
, FORE_COLOR=RGB(0,0,255)
, BACK_COLOR=IIF([Measures].[Internet Sales Amount]>7000000, RGB(255,0,0), RGB(0,255,0))
, FONT_SIZE=10
, FORMAT_STRING='#,#.000'
SELECT MEASURES.CELLPROPERTYDEMO ON 0,
[Date].[Calendar Year].[Calendar Year].MEMBERS ON 1
FROM [Adventure Works]
CELL PROPERTIES VALUE, FORMATTED_VALUE, FORE_COLOR, BACK_COLOR, FONT_SIZE