Введение в детализацию Essbase

Если пользователям Smart View требуется больше информации, чем можно получить в кубе, детализированные отчеты могут предоставить настраиваемый доступ к данным внешнего источника.

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

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

Чтобы предоставить аналитикам Smart View дополнительную информацию о том, что представляет собой одно или несколько значений данных в кубе, менеджеры баз данных могут использовать детализированные отчеты, чтобы получить более глубокое представление об исходных данных, прежде чем они будут развернуты и загружены в Essbase.

Детализированные отчеты — это один из способов создания интерфейса обмена данными между Essbase и внешними исходными системами.

Рассмотрим реляционную таблицу SB_DT со всеми выбранными записями. SQL-запрос:

SELECT * FROM SB_DT

На этой иллюстрации результат запроса (в SQL Developer) усечен по длине, так как в таблице содержатся тысячи записей:


Просмотр табличных данных в SQL Developer. Тысячи строк со столбцом DIMENSION_PRODUCT, содержащим значения для позиций продуктов, столбцом DIMENSION_MARKET, содержащим значения штатов США, столбцом DIMENSION_YEAR, содержащим месяцы, столбцом DIMENSION_SCENARIO, содержащим Actual или Budget, и столбцами чисел с названиями SALES, COGS, MARKETING и PAYROLL.

Рассмотрим ту же таблицу с меньшим количеством выбранных записей. Например, если выборка SQL сужается до именованных столбцов, показатели объединяются, применяется фильтр (фраза WHERE),

select DIMENSION_PRODUCT, DIMENSION_MARKET, YEAR_PARENT, DIMENSION_SCENARIO, sum(SALES) as SALES, sum(COGS) as COGS
         from SB_DT where DIMENSION_SCENARIO ='Actual' AND DIMENSION_MARKET ='California' AND YEAR_PARENT ='Qtr4' group by DIMENSION_PRODUCT, DIMENSION_MARKET,
        YEAR_PARENT, DIMENSION_SCENARIO

а затем результат запроса объединяется и фильтруется:


Просмотр табличных данных в SQL Developer. 12 строк со столбцом DIMENSION_PRODUCT, содержащим значения для позиций продуктов, столбец DIMENSION_MARKET, содержащий California, столбец YEAR_PARENT, содержащий Qtr4, столбец DIMENSION_SCENARIO, содержащий Actual, и столбцы чисел с именами SALES и COGS.

Вы можете использовать возможности запросов СУРБД в Essbase с помощью источников данных, загрузки данных и детализированных отчетов. Детализированные отчеты обеспечивают отфильтрованный доступ к внешнему источнику данных непосредственно из запроса Essbase в электронной таблице Smart View.

Терминология детализации

В этом разделе поясняется значение терминов, относящихся к детализации Essbase.

Детализировать (глаг.)

"Детализировать" — получить доступ к внешним данным из одного или нескольких пересечений ячеек Essbase в электронной таблице Smart View. Действие детализации позволяет получить информацию, которой нет в кубе Essbase. Детализация необходима в случае, если Essbase содержит агрегированные ("свернутые") значения, а внешняя исходная система содержит более детализированные данные, которые можно сделать доступными.

  • Если запрос выполняется при детализации, результаты отображаются в новой открывающейся электронной таблице, которая называется детализированным отчетом. Отчет содержит информацию, полученную из внешних источников данных.

  • Если при детализации запускается URL-адрес, он открывается в веб-браузере. Параметры можно применить к URL-адресу, чтобы выполнить настраиваемый поиск по веб-сайту.

Детализированный отчет

Детализированный отчет — это результат операции детализации, выполняемой из сетки Smart View с использованием дополнительных данных из исходной системы, внешней по отношению к Essbase.

Определение детализированного отчета

Если вы являетесь менеджером баз данных или пользователем с ролью выше, то определение детализированного отчета — это способ определить уровень доступа, который пользователи должны иметь для просмотра внешней информации. Вы можете создавать определения детализированных отчетов в веб-интерфейсе Essbase или API-интерфейсе REST. Они связываются с кубом. В рамках определения нужно указать представленные ниже элементы.

  • Сопоставление столбцов. Это указывает, какие внешние столбцы будут отображаться в отчетах, и какой объем доступа в плане иерархии (поколения) необходимо предоставить (например, нужно ли отражать информацию из внешнего источника по дням, месяцам и кварталам?)

  • Детализируемая область. Это указывает, какие пересечения ячеек куба ссылаются на детализированные отчеты (или URL-адрес), содержащие дополнительные внешние данные. В указанных ниже примерах детализируемые области в срезе данных электронной таблицы Smart View выделены синим цветом с использованием стилей ячеек. Вы указываете детализируемые области, используя любую функцию набора элементов, доступную в Essbase. В указанных ниже примерах детализируемой областью является @DESCENDANTS (Measures) в Sample Basic.

  • Сопоставление параметров среды выполнения, если параметризованный запрос реализован в базовом запросе источника данных (необязательно).

Определения детализированных отчетов обычно основаны на предварительно определенных подключениях и источниках данных в Essbase (если только вы не определяете доступ к файлу, загруженному в Essbase). Подключение сохраняет сведения об аутентификации во внешнем источнике. Один или несколько источников данных, которые вы определяете для подключения, позволяют указать начальный запрос для извлечения данных из внешнего источника (например, выбор всех элементов из определенной таблицы). С помощью запроса, который вы указываете в источнике данных, можно извлечь как большой, так и малый поднабор данных, с которого вы хотите начать. Позже вы сокращаете объем предоставляемого доступа к данным, когда создаете или редактируете определение детализированного отчета.

Рабочий процесс создания детализированного отчета

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

  1. Подготовьте доступ к данным.

    1. Загрузите файл данных.
    2. Получите информацию об авторизации, необходимую для доступа к исходной системе.
    3. Определите подключение и один или несколько источников для файла данных или внешнего источника. См. раздел "Создание глобального подключения и источника данных" или "Создание подключения и источника данных на уровне приложения".
  2. Создайте определения детализированного отчета в кубе.

    1. Определите сопоставление столбцов.
    2. Определите детализируемую область.
    3. Сопоставьте параметры времени выполнения, если они используются.
  3. Протестируйте детализированные отчеты.

    1. Подготовьте Smart View:

      • установите последнюю версию;
      • подключитесь к кубу;
      • включите стили ячеек, чтобы отображать детализируемые области.
    2. Выполните детализацию пересечений различных ячеек в Smart View:

      • выполните детализацию одного пересечения;
      • выполните детализацию нескольких пересечений;
      • выполните детализацию ячеек разных поколений.
    3. Проверьте выходные данные детализированного отчета и журнала платформы.

Этот рабочий процесс и остальная часть введения содержат основные сведения, необходимые для создания и тестирования доступа к детализации данных внешнего источника в СУРБД. Если вас больше интересует реализация детализации по URL-адресу, см. раздел Детализация по URL-адресу.

Подробное описание различных требований к доступу для создания и использования детализации см. в разделе Доступ к детализированным отчетам.

Процесс детализации

В этом примере предположим, что в кубе Sample Basic в Essbase элементы Qtr1–Qtr4 рассматриваются как самые низкие уровни измерения времени.


Иерархия Year. Year — это имя измерения с дочерними элементами Qtr1, Qtr2, Qtr3и Qtr4 (уровень 0).

В иерархии структуры нет месяцев, но данные по месяцам доступны во внешней исходной системе в столбце таблицы с именем DIMENSION_YEAR:


Столбец DIMENSION_YEAR со значениями месяцев: Aug, Sep, Oct, и т. д.

Когда пользователь Smart View просматривает пересечение ячеек значения Sales для Qtr1:


Сетка Smart View с выбранным пользователем значением ячейки "1998" на пересечении (Qtr1, Sales, New York, Actual, Cola)

Детализированный отчет, который создается в Essbase, выглядит следующим образом:


Детализированный отчет из исходной системы, возвращающий только записи, в которых YEAR_PARENT=Qtr1, и раскрывающий общее количество SALES в 1998 году.

Детализированный отчет показывает дополнительную информацию из исходной базы данных о продажах за 1 квартал. Обратите внимание, что значения Jan, Feb и Mar составляют значение для Qtr1: 678+645+675=1998.

Запрос, который Essbase использует для построения приведенного выше детализированного отчета, выглядит следующим образом:

SELECT
        "DIMENSION_PRODUCT", "DIMENSION_MARKET", "DIMENSION_YEAR", "DIMENSION_SCENARIO",
        "SALES", "COGS", "YEAR_PARENT"  FROM <Query defined in Datasource> WHERE
        "YEAR_PARENT" = 'Qtr1' AND "DIMENSION_PRODUCT" = '100-10' AND "DIMENSION_MARKET" =
        'New York' AND "DIMENSION_SCENARIO" = 'Actual'

Из журнала платформы администраторы могут получить доступ к точным запросам, лежащим в основе каждого детализированного отчета.

Определение детализированного отчета

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

Примечание.:

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

Чтобы включить детализированный отчет, созданный в Процесс детализации, менеджер баз данных создал определение детализированного отчета, связанное с Sample Basic. Детализированный отчет имеет ссылку на предварительно определенный источник данных, который использует запрос для извлечения внешних данных из SB_DT (гипотетическая таблица исходной системы , упомянутая в Введение в детализацию Essbase).

В определении детализированного отчета менеджер базы данных указал представленное ниже сопоставление столбцов.

Внешний столбец Включить в отчет Измерение Essbase Фильтр поколения/уровня
DIMENSION_PRODUCT Да Product Product SKU [Поколение]
DIMENSION_MARKET Да Market State [Поколение]
DIMENSION_YEAR Да Year Нет
DIMENSION_SCENARIO Да Scenario Level0 [Уровень]
SALES Да Нет --
COGS Да Нет --
YEAR_PARENT Да Year Quarter [Поколение]

Сопоставление столбцов определяет, какие внешние исходные столбцы должны быть включены в отчет, с какими измерениями Essbase эти столбцы сопоставляются, а также (необязательно) условие фильтра поколения/уровня, указывающее, в каком объеме необходимо предоставить доступ.

В приведенном выше шаблоне сопоставления менеджер баз данных выполнил указанные ниже действия.

  • Сопоставил внешний столбец DIMENSION_PRODUCT с поколением Product SKU в измерении Product Essbase. Этот тип сопоставления столбцов называется сопоставлением поколений.

  • Сопоставил внешний столбец DIMENSION_MARKET с поколением "Состояние" в измерении Essbase Market (это еще один пример сопоставления поколений).

  • Сопоставил внешний столбец DIMENSION_YEAR с измерением Year без дальнейшей фильтрации. Этот тип сопоставления столбцов называется сопоставлением измерений.

  • Сопоставил внешний столбец DIMENSION_SCENARIO с самым низким уровнем (уровнем 0) измерения Essbase Scenario. Этот тип сопоставления столбцов называется сопоставлением уровня 0.

  • Не сопоставил столбцы SALES и COGS ни с чем, но выбрал включить эти столбцы в отчет. Обычно не нужно сопоставлять столбцы с измерением Accounts Essbase.

  • Сопоставил внешний столбец YEAR_PARENT с поколением Quarter в измерении Year.

Параметры сопоставления столбцов

Поскольку запрос, создаваемый в Essbase для извлечения данных из источника данных, сильно зависит от определенного сопоставления столбцов, рекомендуется изучить различные способы сопоставления столбцов и их преимущества. Типы сопоставления столбцов:

  • сопоставление измерений;

  • сопоставление поколений;

  • сопоставление уровня 0.

Сопоставление измерений

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

Например, если столбец исходных данных MONTH содержит смесь всех тех же поколений/уровней, что и измерение, как показано ниже,


Рядом представлен усеченный реляционный столбец MONTH рядом с усеченной иерархией Year из Sample Basic. Столбец MONTH содержит записи: Jan, Qtr3, Feb, Qtr1, Year, Aug и т. д. Иерархия года содержит Qtr1 с дочерними элементами Jan, Feb, Mar, Qtr2 с дочерними элементами Apr, May, Jun и т. д.

тогда имеет смысл сопоставить столбец MONTH с измерением Essbase Year без дальнейшей фильтрации:

Внешний столбец Включить в отчет Измерение Essbase Фильтр поколения/уровня
MONTH Да Year Нет

Когда вы используете сопоставление измерений для столбца MONTH, как показано выше, условие фильтрации (фраза WHERE SQL-запроса) не определяется предварительно для столбца MONTH.

SELECT "MONTH"
FROM <Query defined in Datasource>
WHERE "MONTH" = '<Grid context>'

Результат детализации для столбца MONTH вернет текущее пересечение ячеек Smart View.

Подробнее о сопоставлении измерений см. в разделе Пример использования детализации.

Сопоставлений поколений

При сопоставлении поколений столбец исходных данных сопоставляется с именованным поколением в измерении Essbase. Этот тип сопоставления полезен, когда исходный столбец данных содержит только слой данных, представленный в определенном поколении измерения в кубе. Например, если столбец исходных данных MONTH содержит только месяцы, а измерение Year содержит месяцы в поколении 3,


Рядом представлен усеченный реляционный столбец MONTH рядом с усеченной иерархией Year из Sample Basic. Столбец MONTH содержит только месяцы в виде записей: Jan, Feb, Mar, Apr и т. д. Иерархия года содержит Qtr1 с дочерними элементами Jan, Feb, Mar, а также Qtr2 с дочерними элементами Apr, May, Jun и  т. д.

тогда лучше всего сопоставить исходный столбец с поколением 3 (месяцы) измерения Year:

Внешний столбец Включить в отчет Измерение Essbase Фильтр поколения/уровня
MONTH Да Year Months [Поколение]

Когда вы используете сопоставление измерений для столбца MONTH, как показано выше, условие фильтрации запроса определяется предварительно для столбца MONTH.

SELECT "MONTH"
FROM <Query defined in Datasource>
WHERE "MONTH" = '<Generation filter>'

Результат детализации для столбца MONTH вернет значения ниже поколения Months для измерения Year. Никакие данные (если они существуют) не будут возвращены для любого уровня ниже уровня Months.

Сопоставление поколений не является идеальным для работы с асимметричными (неровными) иерархиями. Сопоставление поколений не влияет на запрос детализации в измерении с неровной иерархией, если только детализация не выполняется для элемента по прямой наследственной линии поколения, в котором определено сопоставление столбцов. Чтобы избежать непредвиденных результатов, Oracle рекомендует использовать сопоставление уровня 0, а не сопоставление поколений для детализации асимметричных иерархий.

Подробнее о процедуре сопоставления поколений см. в разделе Пример использования детализации.

Сопоставление уровня 0

При сопоставлении уровня 0 Essbase добавляет к условию фильтрации все элементы нулевого уровня из иерархии ниже пересечения ячеек (в зависимости от того, какой элемент выбран в текущем контексте сетки Smart View во время выполнения).

Сопоставление уровня 0 полезно при работе с асимметричными (неровными) иерархиями. В неровной иерархии не все элементы одного уровня (L) имеют одинаковую глубину поколения (G) в структуре.


Произвольная иллюстрация дерева элементов иерархии. Показатели, элемент на вершине — поколение 1, а также уровень 2 и уровень 3. Дочерние элементы объектов Measures, Profit, Inventory и Ratios относятся к поколению 2 и уровням 1 и 2. Элементы a–h являются дочерними элементами для объектов Profit, Inventory и Ratios относятся к поколению 3 и уровням 0 и 1. Элементы aa, ab, ba, bb и bc являются дочерними элементами по отношению к a и b и относятся к поколению 4, уровню 0.

Типичным примером неровной иерархии является организационная структура сотрудников.

Измерение Product структуры куба Essbase для Sample Basic являлось бы неровной иерархией, если бы несколько дочерних продуктов были добавлены ниже 100-10 (Cola):


Представление усеченной иерархии продуктов из модифицированного куба Sample Basic. Содержит продукт 100 с дочерними элементами 100-10, 100-20, 100-30 и т. д. 100-10 можно развернуть, чтобы просмотреть добавленные дочерние элементы 100-10-10, 100-10-20, 100-10-30 и 100-10-40.

Если менеджер баз данных сопоставляет исходный столбец PRODUCT с уровнем 0 измерения Product, как показано ниже:

Внешний столбец Включить в отчет Измерение Essbase Фильтр поколения/уровня
PRODUCT Да Product Level0 [Уровень]

то условие фильтра запроса будет предварительно определено для столбца PRODUCT:

SELECT "PRODUCT"
FROM <Query defined in Datasource>
WHERE  "PRODUCT" = <Level0> below <Grid context>

а результат детализации для столбца PRODUCT вернет все элементы уровня 0 ниже элемента Product, выбранного в текущем пересечении ячеек Smart View.

Подробнее о процедуре сопоставления уровня 0 см. в разделе Пример использования детализации.

Пример использования детализации

В этом примере использования рассмотрим указанные ниже факторы, которые необходимо учитывать при предоставлении пользователям Smart View доступа к детализированным отчетам.

  • Куб Essbase для анализа

  • Внешняя исходная система для детализации

  • Определения детализированного отчета с сопоставлением столбцов, заданным менеджером баз данных

  • Результаты детализированного отчета из Smart View

Куб Essbase

В этом примере основой является куб, аналогичный демонстрационному кубу Essbase, Sample Basic, но с данными только по кварталам для измерения времени, представленного кубе (месяцы были удалены). Предположим, что измерение Year имеет Qtr1–Qtr4 в качестве элементов самого низкого уровня (уровень 0):


Иерархия Year. Year — это имя измерения с дочерними элементами Qtr1, Qtr2, Qtr3и Qtr4 (уровень 0).

Хотя в этой иерархии структуры отсутствуют месяцы, данные по месяцам доступны во внешнем источнике за счет детализации исходной системы (предположим, что это база данных Oracle) и доступа к информации из столбца с именем DIMENSION_YEAR:


Столбец DIMENSION_YEAR со значениями месяцев: Aug, Sep, Oct, и т. д.

Предположим, что остальные измерения аналогичны измерениям в демонстрационном кубе Essbase Sample Basic, доступном в разделе галереи каталога файлов. Краткий обзор.

Измерение Measures отслеживает ключевые показатели эффективности для Accounts за счет динамического расчета с использованием расчетных формул Essbase.


Измерение Measures с элементами Profit, Inventory и Ratios поколения 2. Элемент Profit можно развернуть, чтобы просмотреть маржу и общие расходы дочерних элементов. Элемент "Маржа" можно развернуть, чтобы просмотреть дочерние элементы Sales и COGS. Элементы Inventory и Ratios нельзя развернуть, но у каждого есть дополнительные дочерние элементы.

Измерение Product отслеживает активные запасы на два поколения вниз — к поколению 2 с названием "Категория" (содержит 100 [псевдоним Colas], 200, 300, 400 и Diet) и поколению 3/уровню 0 с названием Product SKU (содержит 100 -10 [псевдоним Colas], 100-20 и т. д.).


Измерение Product с элементами поколения 2: 100, 200, 300, 400 и Diet. Элемент категории продуктов 100 можно развернуть, чтобы просмотреть дочерние элементы уровня 0 позиций продуктов (Product SKU): 100-10, 100-20 и 100-30. Другие элементы категории продуктов, 200, 300, 400 и Diet, нельзя развернуть, но у каждого есть дополнительные дочерние элементы.

Измерение Market обеспечивает географическое разделение с двумя дополнительными поколениями под именем измерения. Поколение 2 — это регион (East, West и т. д.), а поколение 3 — штат.


Измерение Market с элементами поколения 2: East, West, South и Central. Элемент региона рынка East можно развернуть, чтобы просмотреть дочерние элементы уровня 0 — некоторые восточные штаты США: New-York, Massachusetts, Florida, Connecticut и New Hampshire. Другие элементы категории продуктов, West, South и Central, нельзя развернуть, но у каждого есть дополнительные дочерние элементы.

Измерение Scenario добавляет анализ финансовой отчетности в куб с двумя сохраненными элементами и двумя элементами динамического расчета:


Измерение Scenario с элементами поколения 2: Actual, Budget, Variance и Variance %. Последние два элемента являются элементами динамического расчета, элементы Actual и Budget сохраняются.

Внешняя исходная система

Предположим, что исходной системой в рамках данного примера является база данных Oracle. Предварительно определенный источник данных в Essbase включает SQL-запрос, который извлекает информацию из таблицы в базе данных Oracle.

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

Запрос в источнике данных может быть таким же простым, как показано ниже.

SELECT * FROM TABLENAME

Либо его можно уточнить, чтобы получить любую агрегирование или набор внешних данных, которые необходимо использовать в качестве основы.

Выбранные элементы из нашей гипотетической таблицы в базе данных Oracle включают внешние столбцы, подобные тем, что показаны в нашем Введении. Сопоставим некоторые из этих внешних столбцов с измерениями Essbase при создании определения детализированного отчета.

Определение сопоставления столбцов

При сопоставлении столбцов в этом примере используется сопоставление измерений для столбца Products, сопоставление поколений для столбцов Year и Scenario, а также сопоставление уровня 0 для столбца Market.

Внешний столбец Включить в отчет Измерение Essbase Фильтр поколения/уровня
DIMENSION_PRODUCT Да Product Нет
DIMENSION_MARKET Да Market Level0 [Уровень]
YEAR_PARENT Да Year Quarter [Поколение]
DIMENSION_SCENARIO Да Scenario Scen [Поколение]
SALES Да Нет --
COGS Да Нет --
MARKETING Да Нет --
PAYROLL Да Нет --
MISC Да Нет --

Примеры детализированных отчетов по типу сопоставления столбцов

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

Пример 1. Сопоставление измерений

При использовании сопоставления измерений для продукта без иерархического фильтра

Внешний столбец Включить в отчет Измерение Essbase Фильтр поколения/уровня
DIMENSION_PRODUCT Да Product Нет

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

Таким образом, при детализации элементов Year, Sales, West, Actual, Cola:


Сетка Smart View с выбранным пользователем значением ячейки 14862 на пересечении (Year, Sales, West, Actual, Cola)

возвращается детализированный отчет, отфильтрованный по текущему контексту сетки для продукта, который равен 100-10 (100-10 — это Product SKU, связанная с псевдонимом Cola). Все значения, извлеченные из столбца DIMENSION_PRODUCT в исходной системе, будут записями, в которых DIMENSION_PRODUCT = 100–10.


Детализированный отчет с записями, относящимися только к Product SKU 100-10, показывает общее количество SALES для 14862.

Чтобы проверять детализированные отчеты по мере их тестирования, убедитесь, что сумма показателя в отчете соответствует пересечению ячеек, на котором выполнялась детализация. В приведенном выше примере детализированный отчет проверяется, поскольку ячейка, по которой выполняется детализация, соответствует значению (14862) суммы сопоставленного столбца в детализированном отчете.

Запрос, который Essbase использует для создания приведенного выше детализированного отчета, выглядит следующим образом:

SELECT "DIMENSION_PRODUCT", "DIMENSION_MARKET", "YEAR_PARENT", "DIMENSION_SCENARIO", "SALES", "COGS", "MARKETING", "PAYROLL", "MISC"
FROM <Query defined in Datasource>
WHERE (
"YEAR_PARENT" = 'Qtr3' OR
"YEAR_PARENT" = 'Qtr4' OR
"YEAR_PARENT" = 'Qtr1' OR
"YEAR_PARENT" = 'Qtr2') 
AND 
"DIMENSION_PRODUCT" = '100-10'
AND (
"DIMENSION_MARKET" = 'Oregon' OR
"DIMENSION_MARKET" = 'California' OR
"DIMENSION_MARKET" = 'Washington' OR
"DIMENSION_MARKET" = 'Utah' OR
"DIMENSION_MARKET" = 'Nevada')
AND 
"DIMENSION_SCENARIO" = 'Actual'

Пример 2. Сопоставление измерений

Далее рассмотрим, что происходит при детализации продукта на более высоком уровне.

При детализация элементов Year, Sales, West, Actual, Colas:


Сетка Smart View с выбранным пользователем значением ячейки 14862 на пересечении (Year, Sales, West, Actual, Colas)

возвращается детализированный отчет, отфильтрованный по текущему контексту сетки для продукта, который теперь равен 100 (100 — это код продукта, связанный с псевдонимом Colas). Все значения, извлеченные из столбца DIMENSION_PRODUCT в исходной системе, будут записями, в которых DIMENSION_PRODUCT = 100.


Подробный отчет с записями, относящимися только к категории 100 продукта , показывает общее количество SALES для 23806.

В приведенном выше примере детализированный отчет проверяется, поскольку ячейка, по которой выполняется детализация, соответствует значению (23806) суммы сопоставленного столбца в детализированном отчете.

Запрос, который Essbase использует для создания приведенного выше детализированного отчета, выглядит следующим образом:

SELECT "DIMENSION_PRODUCT", "DIMENSION_MARKET", "YEAR_PARENT", "DIMENSION_SCENARIO", "SALES", "COGS", "MARKETING", "PAYROLL", "MISC"
FROM <Query defined in Datasource>
WHERE (
"YEAR_PARENT" = 'Qtr3' OR
"YEAR_PARENT" = 'Qtr4' OR
"YEAR_PARENT" = 'Qtr1' OR
"YEAR_PARENT" = 'Qtr2') 
AND 
"DIMENSION_PRODUCT" = '100'
AND (
"DIMENSION_MARKET" = 'Oregon' OR
"DIMENSION_MARKET" = 'California' OR
"DIMENSION_MARKET" = 'Washington' OR
"DIMENSION_MARKET" = 'Utah' OR
"DIMENSION_MARKET" = 'Nevada')
AND 
"DIMENSION_SCENARIO" = 'Actual'

Пример 1. Сопоставление поколений

При использовании сопоставления поколений для столбца Year с фильтром поколения под названием Quarter

Внешний столбец Включить в отчет Измерение Essbase Фильтр поколения/уровня
YEAR_PARENT Да Year Quarter [Поколение]

детализация, выполняемая на пересечении ячеек, будет привязана к указанному поколению элемента Year.

При детализации (Qtr2, Sales, Market, Actual, Cola):


Сетка Smart View с выбранным пользователем значением ячейки "16048" на пересечении (Qtr2, Sales, Market, Actual, Cola)

возвращается детализированный отчет, отфильтрованный по сопоставленному контексту поколения для Year (Quarters). Поскольку Qtr2 находится в выбранном контексте сетки, все значения, извлеченные из столбца YEAR_PARENT в исходной системе, будут записями, в которых YEAR_PARENT = Qtr2.


Подробный отчет с записями, относящимися только к Qtr2, показывает общее количество SALES для 16048.

В приведенном выше примере детализированный отчет проверяется, поскольку ячейка, по которой выполняется детализация, соответствует значению (16048) суммы сопоставленного столбца в детализированном отчете.

Запрос, который Essbase использует для создания приведенного выше детализированного отчета, выглядит следующим образом:

SELECT "DIMENSION_PRODUCT", "DIMENSION_MARKET", "YEAR_PARENT", "DIMENSION_SCENARIO", "SALES", "COGS", "MARKETING", "PAYROLL", "MISC"
FROM <Query defined in Datasource>
WHERE 
"YEAR_PARENT" = 'Qtr2'
AND
"DIMENSION_PRODUCT" = '100-10'
AND (
"DIMENSION_MARKET" = 'Oregon' OR 
"DIMENSION_MARKET" = 'New York' OR 
"DIMENSION_MARKET" = 'Oklahoma' OR 
"DIMENSION_MARKET" = 'California' OR 
"DIMENSION_MARKET" = 'Florida' OR 
"DIMENSION_MARKET" = 'Washington' OR 
"DIMENSION_MARKET" = 'Utah' OR 
"DIMENSION_MARKET" = 'Iowa' OR 
"DIMENSION_MARKET" = 'New Mexico' OR 
"DIMENSION_MARKET" = 'Massachusetts' OR 
"DIMENSION_MARKET" = 'Texas' OR 
"DIMENSION_MARKET" = 'Illinois' OR 
"DIMENSION_MARKET" = 'Colorado' OR 
"DIMENSION_MARKET" = 'Connecticut' OR 
"DIMENSION_MARKET" = 'New Hampshire' OR 
"DIMENSION_MARKET" = 'Missouri' OR 
"DIMENSION_MARKET" = 'Louisiana' OR 
"DIMENSION_MARKET" = 'Ohio' OR 
"DIMENSION_MARKET" = 'Wisconsin' OR 
"DIMENSION_MARKET" = 'Nevada')
AND
"DIMENSION_SCENARIO" = 'Actual'

Пример 2. Сопоставление поколений

Далее рассмотрим, что происходит при детализации на более высоком уровне измерения Year.

При детализации Year, Sales, Market, Actual, Cola


Сетка Smart View с выбранным пользователем значением ячейки "62824 " на пересечении (Year, Sales, Market, Actual, Cola)

возвращается детализированный отчет, отфильтрованный по сопоставленному поколению кварталов года. Значения, извлеченные из столбца YEAR_PARENT в исходной системе, будут записями Qtr1, Qtr2, Qtr3 Qtr4.


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

В приведенном выше примере детализированный отчет проверяется, поскольку ячейка, по которой выполняется детализация, соответствует значению (62824) суммы сопоставленного столбца в детализированном отчете.

Запрос, который Essbase использует для создания приведенного выше детализированного отчета, выглядит следующим образом:

SELECT "DIMENSION_PRODUCT", "DIMENSION_MARKET", "YEAR_PARENT", "DIMENSION_SCENARIO", "SALES", "COGS", "MARKETING", "PAYROLL", "MISC"
FROM <Query defined in Datasource>
WHERE (
"YEAR_PARENT" = 'Qtr3' OR 
"YEAR_PARENT" = 'Qtr4' OR 
"YEAR_PARENT" = 'Qtr1' OR 
"YEAR_PARENT" = 'Qtr2')
AND
"DIMENSION_PRODUCT" = '100-10'
AND (
"DIMENSION_MARKET" = 'Oregon' OR 
"DIMENSION_MARKET" = 'New York' OR 
"DIMENSION_MARKET" = 'Oklahoma' OR 
"DIMENSION_MARKET" = 'California' OR 
"DIMENSION_MARKET" = 'Florida' OR 
"DIMENSION_MARKET" = 'Washington' OR 
"DIMENSION_MARKET" = 'Utah' OR 
"DIMENSION_MARKET" = 'Iowa' OR 
"DIMENSION_MARKET" = 'New Mexico' OR 
"DIMENSION_MARKET" = 'Massachusetts' OR 
"DIMENSION_MARKET" = 'Texas' OR 
"DIMENSION_MARKET" = 'Illinois' OR 
"DIMENSION_MARKET" = 'Colorado' OR 
"DIMENSION_MARKET" = 'Connecticut' OR 
"DIMENSION_MARKET" = 'New Hampshire' OR 
"DIMENSION_MARKET" = 'Missouri' OR 
"DIMENSION_MARKET" = 'Louisiana' OR 
"DIMENSION_MARKET" = 'Ohio' OR 
"DIMENSION_MARKET" = 'Wisconsin' OR 
"DIMENSION_MARKET" = 'Nevada')
AND
"DIMENSION_SCENARIO" = 'Actual'

Пример сопоставления уровня 0

При сопоставлении уровня 0 для элемента Market с использованием фильтра для всех элементов уровня 0 (нулевого уровня)

Внешний столбец Включить в отчет Измерение Essbase Фильтр поколения/уровня
DIMENSION_MARKET Да Market Level0 [Уровень]

детализация, выполненная на пересечении ячеек, вернет все элементы для столбца Market самого низкого уровня.

При детализации Year, Sales, Market, Actual, Cola


Сетка Smart View с выбранным пользователем значением ячейки "62824 " на пересечении (Year, Sales, Market, Actual, Cola)

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


Детализированный отчет с записями для всех элементов нулевого уровня (штатов) измерения Market, показывающий общее количество SALES для 62824.

В приведенном выше примере детализированный отчет проверяется, поскольку ячейка, по которой выполняется детализация, соответствует значению (62824) суммы сопоставленного столбца в детализированном отчете.

Запрос, который Essbase использует для создания приведенного выше детализированного отчета, выглядит следующим образом:

SELECT "DIMENSION_PRODUCT", "DIMENSION_MARKET", "YEAR_PARENT", "DIMENSION_SCENARIO", "SALES", "COGS", "MARKETING", "PAYROLL", "MISC"
FROM <Query defined in Datasource>
WHERE (
"YEAR_PARENT" = 'Qtr3' OR 
"YEAR_PARENT" = 'Qtr4' OR 
"YEAR_PARENT" = 'Qtr1' OR 
"YEAR_PARENT" = 'Qtr2')
AND
"DIMENSION_PRODUCT" = '100-10'
AND (
"DIMENSION_MARKET" = 'Oregon' OR 
"DIMENSION_MARKET" = 'New York' OR 
"DIMENSION_MARKET" = 'Oklahoma' OR 
"DIMENSION_MARKET" = 'California' OR 
"DIMENSION_MARKET" = 'Florida' OR 
"DIMENSION_MARKET" = 'Washington' OR 
"DIMENSION_MARKET" = 'Utah' OR 
"DIMENSION_MARKET" = 'Iowa' OR 
"DIMENSION_MARKET" = 'New Mexico' OR 
"DIMENSION_MARKET" = 'Massachusetts' OR 
"DIMENSION_MARKET" = 'Texas' OR 
"DIMENSION_MARKET" = 'Illinois' OR 
"DIMENSION_MARKET" = 'Colorado' OR 
"DIMENSION_MARKET" = 'Connecticut' OR 
"DIMENSION_MARKET" = 'New Hampshire' OR 
"DIMENSION_MARKET" = 'Missouri' OR 
"DIMENSION_MARKET" = 'Louisiana' OR 
"DIMENSION_MARKET" = 'Ohio' OR 
"DIMENSION_MARKET" = 'Wisconsin' OR 
"DIMENSION_MARKET" = 'Nevada')
AND
"DIMENSION_SCENARIO" = 'Actual'