Создание детализированных отчетов

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

Общая информация о разработке детализированных отчетов

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

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

Для создания определения детализированного отчета необходимо быть менеджером базы данных или иметь роль с еще более широкими полномочиями.

Можно создать детализированный отчет, данные для которого будут извлекаться из системы внешнего источника (RDBMS) или из файла.

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

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

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

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

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

Подробное описание сопоставлений столбцов см. в разделе Определение детализированного отчета.

Чтобы определить сопоставления столбцов, выполните указанные ниже действия.

  1. На странице "Приложения" откройте приложение и выберите куб.

  2. Выберите Сценарии на левой панели.

  3. Нажмите Детализированные отчеты.

  4. Нажмите Создать и в меню выберите Источник данных.

  5. В поле Имя добавьте имя отчета.

  6. В поле Источник данных выберите источник данных, который вы хотите использовать.

  7. Создайте сопоставления столбцов.

    1. Выберите столбцы из внешнего источника данных, которые вы хотите включить в отчет.

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

    3. Выберите условия фильтра для сопоставлений; например, Level 0, Generation или None (для сопоставления измерений).


      Изображение сопоставления столбцов для детализированного отчета.

    4. Когда вы закончите, нажмите Детализируемые области. Невозможно сохранить определение детализированного отчета без определения области, как описано в разделе Определение детализируемых областей для детализированных отчетов.

Чтобы определить сопоставления столбцов, выполните указанные ниже действия.

  1. На странице "Приложения" разверните приложение.

  2. В меню Действия справа от имени куба выберите Проверить.

  3. В инспекторе приложений выберите вкладку Сценарии.

  4. Выберите Детализированные отчеты.

  5. Нажмите Создать и выберите Источник данных в раскрывающемся меню.

  6. В поле Имя добавьте имя отчета.

  7. В поле Источник данных выберите источник данных, который вы хотите использовать.

  8. Создайте сопоставления столбцов.

    1. Выберите столбцы из внешнего источника данных, которые вы хотите включить в отчет.

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

    3. Выберите условия фильтра для сопоставлений; например, Level 0, Generation или None (для сопоставления измерений).


      Изображение сопоставления столбцов в мастере детализированного отчета.

  9. Когда вы закончите, нажмите Детализируемые области. Невозможно сохранить определение детализированного отчета без определения области, как описано в разделе Определение детализируемых областей для детализированных отчетов.

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

Определите одну или несколько детализируемых областей в кубе Essbase, из которых вы сможете получить доступ ("детализация до") к внешнему источнику данных.

  1. После завершения сопоставления столбцов нажмите Детализируемые области.

  2. Нажмите значок "плюс" и выберите один из указанных ниже способов.
    • Дважды щелкните в пустой строке и определите область с использованием синтаксиса расчета: имена элементов и функции набора элементов.
    • Нажмите на значок карандаша, чтобы открыть Селектор областей детализации, выберите элемент, который требуется добавить, нажмите правой кнопкой мыши и выберите в меню пункты для определения области.
      Изображение селектора областей детализации в Redwood.

  3. Нажмите Сохранить. Отобразится сообщение, указывающее, обновлен ли детализированный отчет.


    Изображение вкладки "Детализируемые области" в мастере детализированных отчетов с детализируемой областью, определенной для элементов Market, Year, Scenario, Sales и элементов уровня 1 в Product.

Примеры детализируемых областей

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

Пример 1

Чтобы определить детализируемую область в верхней части измерений Market, Year и Scenario и всех элементов уровня 1 измерения продукта, используйте:

Market,Year,Scenario,Sales,@LEVMBRS(Product,1)

При детализации листа Smart View конечная сетка выглядит следующим образом:


Изображение сетки Smart View с детализируемыми элементами, выделенными синим цветом. Область детализации определяется: Market,Year,Scenario,Sales,@LEVMBRS(Product,1).

Пример 2

Чтобы определить детализируемую область для потомков Market, используйте:

@DESCENDANTS(Market)

При детализации листа Smart View конечная сетка выглядит следующим образом:


Изображение сетки Smart View с детализируемыми ячейками, выделенными синим цветом. Область определяется @DESCENDANTS(Market)

Пример 3

Чтобы определить детализируемую область для элементов поколения 3 в измерении Product, в верхней части измерений Market, Year, Scenario и элемента Sales используйте:

Market,Year,Scenario,Sales,@GENMBRS(Product,3)

При детализации листа Smart View конечная сетка выглядит следующим образом:


Изображение сетки Smart View с детализируемыми ячейками, выделенными синим цветом. Область определяется Market,Year,Scenario,Sales,@GENMBRS(Product,3)

Реализация параметров для детализированных отчетов

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

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

Условие: менеджер приложений или пользователь с ролью выше предоставил вам доступ к источнику данных, который использует фиксированное значение (по умолчанию), подстановочную переменную или внешнюю пользовательскую функцию в качестве параметра.

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

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

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

  1. Реализация параметров для источников данных в базовом запросе источника данных. Это должно быть сделано менеджером приложений или пользователем с ролью выше.

  2. Создайте Определение детализированного отчета, связанный с источником данных.

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

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

Параметры времени выполнения и пользовательские функции

Приведенные ниже примеры использования основаны на предварительных предположениях.

  • Пользовательская функция getMonths определена во внешней исходной системе. Функция возвращает список месяцев, разделенных запятыми.

  • Источник данных, используемый для определения детализированного отчета, определяется с помощью запроса, который вызывает функцию getMonths следующим образом:

    select * from SampleBasic where month in (getMonths(?))

Сопоставление уровня 0 (рекурсивное) для параметра времени выполнения

В определении детализированного отчета, когда параметр времени выполнения привязан к году (Year) на уровне 0 (Level0),


Вкладка "Параметры времени выполнения" определения детализированного отчета. Параметр: Param1. Переменная: флажок установлен. Значение: Sample.mnth. Измерение: Year. Привязка поколения: Level0 [Уровень]

затем, если пользователь Smart View выполняет детализацию на основе Qtr1 измерения Year, детализированный отчет будет включать Jan, Feb, Mar. Если пользователь Smart View выполняет детализацию на основе параметра Year, детализированный отчет будет включать Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec.

Сопоставление поколений параметра времени выполнения

В определении детализированного отчета, когда параметр времени выполнения привязан к году при создании квартала,


Вкладка "Параметры времени выполнения" определения детализированного отчета. Параметр: Param1. Переменная: флажок установлен. Значение: Sample.mnth. Измерение: Year. Привязка поколения: Quarter [Поколение]

затем, если пользователь Smart View детализирует элемент измерения Year, детализированный отчет будет включать Qtr1, Qtr2, Qtr3, Qtr4.

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

Недопустимо задавать "Привязку измерения/поколения" параметра среды выполнения, которая перекрывается сопоставлением столбцов. Созданный запрос в этом случае всегда является набором значений null.