Публикации

Intersoft Lab в СМИ - истории успеха клиентов, интервью и мнения экспертов компании, обзоры рынка CPM

Система корпоративной отчетности: ориентир на пользователя

Какой функциональностью должна обладать система отчетности, чтобы снять с программиста груз разработки отчетов и предоставить конечным пользователям простые и эффективные инструменты для анализа деловой информации? В статье расматривается практика применения OLAP-систем для подготовки внутрикорпоративной отчетности.

Одна из задач, которую приходится решать специалистам служб автоматизации компании, - это обеспечение выпуска отчетов по данным корпоративных БД. Если разработка системы подготовки обязательной отчетности - работа вполне определенная, объемы и сроки исполнения которой можно оценить (алгоритмы расчета и формы отчетности регламентированы налоговыми органами), то совсем иначе дело обстоит с внутренней отчетностью для руководителей, менеджеров и аналитиков компании. Разработать и использовать жесткий пакет отчетов для контроля и анализа деятельности компании практически невозможно. Для оценки различных аспектов бизнеса руководителям и аналитикам всегда будут требоваться новые и новые показатели: открыв и изучив отчет, возникнет необходимость углубиться в данные и узнать, как был рассчитан тот или иной показатель, построить график и сравнить показатели, вычислить коэффициенты и прочее. В результате IT-специалистам приходится постоянно программировать новые отчеты для пользователей, чтобы удовлетворять их информационные потребности. Решить проблему можно, используя систему интерактивных OLAP-отчетов, ориентированную на конечного пользователя. Системы, реализующие технологию OLAP (оперативная аналитическая обработка данных), уже зарекомендовали себя как наиболее удобные для подготовки внутренней отчетности.

Они обеспечивают получение данных из любых корпоративных источников - учетных систем, ERP, CRM, Хранилищ данных, персональных БД, трансформацию плоских выборок в многомерные структуры и выпуск интерактивных экранных отчетов для анализа бизнес-данных. OLAP-отчет предлагает пользователю многомерную таблицу, в которой числовые показатели (факты) представлены в разрезе иерархии измерений, по ветвям иерархии автоматически вычисляются итоги (агрегаты). Такая форма представления данных наиболее подходит для подготовки финансовых, статистических и любых других корпоративных отчетов, поскольку позволяет предоставить руководителям и менеджерам деловую информацию в разрезе сколь угодно сложной аналитики. При этом, просматривая одну многомерную таблицу, пользователь сможет без программирования настраивать разнообразные виды отчетов: определять состав измерений таблицы и получать разную аналитику показателей, детализировать и обобщать данные, вычислять новые показатели по произвольным алгоритмам, строить диаграммы. IT-специалисту достаточно в системе создать словарь метаданных, с которым будут работать конечные пользователи: описать источники данных в терминах предметной области и настроить доступ к ним, построить запросы. Далее пользователи смогут сами создавать необходимые отчеты.

Какой функциональностью должна обладать система отчетности, чтобы снять с программиста груз разработки отчетов и предоставить конечным пользователям простые и эффективные инструменты для анализа деловой информации?  Далее в статье функциональность систем корпоративной отчетности проиллюстрирована на примере продуктов Аналитической платформы Контур производства компании Intersoft Lab.

Рис. 1. OLAP-отчет Аналитической платформы Контур компании Intersoft Lab.

В составе платформы:

  • программы для создания мобильных OLAP-отчетов и доставки через Интернет/Интранет - "Контур Дизайнер кубов" и "Контур Генератор кубов" для проектирования и создания отчетов в виде микрокубов, "Контур OLAPBrowser" для выпуска отчетов на ПК, локальной сети и Интернет.
  • программа "Контур Стандарт" для выпуска отчетов из корпоративных БД в режиме on-line.

Инструменты IT-специалиста

Основная задача IT-специалиста компании подготовить систему для эксплуатации пользователями, а именно, обеспечить получение данных из корпоративных БД и формирование многомерных массивов (кубов) для выпуска OLAP-отчетов. В этих целях настраивается доступ к данным, описываются БД и запросы, определяется структура многомерного куба. Это описание будет составлять словарь метаданных, с которым в дальнейшем будут работать пользователи.

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

Описание словаря метаданных

Если для описания метаданных предоставляется визуальная среда, то работать словарем смогут не только IT-специалисты, но и конечные пользователи. IT-специалист, знающий структуру корпоративных БД, в словаре описывает источники данных - таблицы БД, их поля и связи, хранимые процедуры и пр. Например, таблица с данными о продажах c полями Data, Product_ID, Quantity, Area_ID, может быть описана как 'Журнал продаж' с полями 'Дата продажи', 'Код товара', 'Количество', 'Код региона', это поможет пользователю при составлении отчета понимать какие данные в него включать. В визуальной среде пользователь сможет самостоятельно строить простые запросы к БД, указывая из каких полей источника нужны данные.

Удобно, когда существующие метаданные можно загружать из другой системы, это позволяет значительно сократить время выполнения настроек. Так, например, программы Аналитической платформы Контур компании Intersoft Lab (далее АПК), предназначенные для выпуска OLAP-отчетов, позволяют загружать метаданные из XML-файлов. Метаданные можно выгрузить в XML-формате из исходных источников и загрузить в систему отчетности.

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

Рис. 2."Контур Дизайнер кубов" - интерфейс для описания метаданных АПК. Словарь метаданных реализован как открытый XML-файл, который может передаваться другим пользователям АПК и для использования внешними системами.

Работа с данными различных БД

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

Программы АПК для прямого доступа к данным используют стандарты BDE (Borland Database Engine), ADO (Active Data Objects), ODBC (Open Database Connectivity), DAO (Direct Oracle Access).

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

Из закрытых БД получать данные для отчетов можно посредством выгрузки в XML-файлы.

Объединение данных из различных источников

Информация о деятельности многофилиальных компаний бывает распределена по нескольким разнородным БД. В этом случае чтобы получить обобщенный отчет по всей компании, система должна поддерживать объединение в одном отчете данных из нескольких источников. Эта проблема решается в системах отчетности по-разному. Наиболее простой способ - это объединение данных посредством текстовых или XML-файлов. Информация из разных БД выгружается в файлы в едином XML-формате, после чего из них создается OLAP-отчет. В настоящее время XML-формат, поддерживает большинство автоматизированных учетных систем, поэтому, как правило, дополнительной разработки процедур выгрузки не требуется.

Создание и обновление многомерных кубов

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

В программах АПК для создания микрокуба предлагается визуальная среда. Чтобы получить микрокуб, необходимо описать его структуру: определить, какие поля выборки из исходной БД будут измерениями и фактами куба. В качестве измерений могут использоваться строковые поля и любые другие, в качестве фактов - числовые поля, при наличии полей типа Дата для куба может настраиваться расчет агрегатов за периоды.

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

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

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

Программы АПК поддерживают идеологию создания целевых read-only микрокубов для отдельных групп пользователей, каждый из которых обеспечивает возможность подготовки тематических отчетов, например для анализа продаж, бюджета и т.д. Для обновления данных выполняется быстрое пересоздание микрокубов, которое занимает от нескольких секунд до нескольких минут, в зависимости от объема данных.

Для обеспечения актуальности отчетов разветвленных компаний с сетью филиалов программы АПК поддерживают передачу измененных данных в XML-файлах. В этом случае предлагается данные удаленных подразделений собирать в головной конторе компании в XML-файлах, где по ним централизовано создавать корпоративную отчетность. При обновлении данных в первоисточнике - базе удаленного подразделения в XML-файлы потребуется выгружать и передавать только измененные данные. В головной конторе генератор микрокубов моментально создаст обновленные корпоративные отчеты с учетом последних изменений в БД подразделений. Эта технология эмулирует процедуру инкрементального обновления и позволяет не дублировать передачу в головную контору уже имеющихся там данных.

Доставка отчетов пользователям

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

Программы АПК обеспечивают выпуск мобильных OLAP-отчетов - микрокубов. Микрокуб - это контейнер многомерных данных, метаданных и отчетов, предназначенный для дистрибуции отчетов и обмена данными между пользователями. В зависимости от состава данных их объем при создании микрокуба сжимается от 10 до 1000 раз. В результате огромная выборка становится небольшим файлом микрокуба, который можно передать по Интернет или по e-mail. В микрокубах можно передавать отчетность удаленным пользователям в филиалах, акционерам, инвесторам и клиентам компании. Даже находясь вне офиса, дома, на выездах и в командировках, руководители смогут получать необходимые отчеты через сайт компании или по электронной почте.

Инструменты для конечного пользователя

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

Построение отчета

В OLAP-системе подготовка необходимого отчета конечным пользователем сводится к простому манипулированию данными исходного OLAP-отчета. Такой отчет может отображать многомерные данные в виде таблицы с иерархией измерений, разноцветного куба или иначе в зависимости от реализации системы. В OLAP-отчете данные агрегируются по иерархии измерений и по ветвям иерархии вычисляются итоги. Например, в отчете по продажам с иерархией измерений Город-Торговая точка-Менеджер будут показаны итоговые суммы продаж каждого менеджера продаж торговой точки, каждой точки в городе, а также общие итоги продаж всех менеджеров, точек и городов. Для интерактивного управления отчетом пользователь выполняет разнообразные OLAP-операции: повороты таблицы, изменение состава измерений, углубление и обобщение, сортировку и фильтрацию и пр. При выполнении каждой операции автоматически пересчитываются итоги и пользователь получает новый отчет.

В программах АПК данные микрокуба отображаются в интерактивной многомерной таблице, в которой пользователь может управлять представлением данных:

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

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

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

Расчет показателей

Чтобы получать в отчетах разнообразные показатели на основе данных куба, OLAP-система должна поддерживать:

  • Встроенные алгоритмы для построения финансовых и управленческих отчетов:
    • Сумма.
    • Количество: количество записей в исходной не агрегированной выборке (например, для расчета средних сумм продаж), количество элементов в агрегированной выборке (например, для расчета средневзвешенной процентной ставки), количество элементов в группе.
    • Среднее, основанное на любом из алгоритмов вычисления количества.
    • Средневзвешенное.
    • Остаток (например, остаток бухгалтерского счета, остаток на складе и пр.)
  • Функции математической статистики (отклонение, дисперсия и другие) для создания статистических отчетов.
  • Язык формул для настройки произвольных алгоритмов вычисления показателей. Для вычисления показателей интерактивного OLAP-отчета язык формул должен обеспечивать возможность манипулирования многомерными данными. Например, получать итоги по группам измерений, использовать в формулах расчета показателей значения отдельных измерений и пр.


Рис. 3. Интерфейс редактора формул АПК.

Визуализация данных

Любой аналитический или управленческий отчет может отражать большой объем данных, например, план-факт отчет по бюджету доходов и расходов предприятия может содержать сотни записей. Получить информацию, достаточную для принятия решения руководитель должен, лишь бегло просмотрев отчет. Чтобы отчет был наглядным и позволял быстро проанализировать его данные, системы отчетности предоставляют следующие инструменты визуализации данных:

  • Условное форматирование для выделения наиболее важных и критических показателей на фоне остальных данных. Например, чтобы в бюджетном план-факт отчете можно было сразу увидеть статьи с большими отклонениями фактических значений от плановых, суммы выявленных отклонений выделяются инверсным цветом. В интерактивном отчете по предварительно настроенной логике форматирования автоматически определяются и выделяются важные для руководителя показатели, например, максимальная прибыль или минимальные продажи, показатели, превышающие установленные лимиты и др. Программы АПК поддерживают сколь угодно сложную логику форматирования. Для одного отчета может быть задано сразу несколько условий раскраски, и они будут налагаться друг на друга. Так, к примеру, в отчете суммы продаж менеджеров, выполнивших план, могут выделяться красным цветом, а наибольшая сумма еще и курсивом. Открыв такой отчет, руководитель сразу увидит тех, кто выполнил план и кто стал лучшим менеджером месяца.
  • Графическое отображение данных. Еще один важный визуальный элемент интерактивного отчета - это график, который строится по его данным. Для иллюстрации отчета в системах отчетности предоставляются разнообразные виды диаграмм: круговые и столбчатые, точки, площади, линии и другие. Графики могут быть плоскими и объемными. Двухмерный график позволяет проанализировать значения одного факта (числового показателя) в разрезе одного измерения таблицы, трехмерный график может быть построен по одному факту и двум измерениям либо по двум фактам и одному измерению таблицы.
  • Фильтрация и сортировка данных. Для систематизации записей в таблицах используются фильтры и сортировщики. Они могут отличаться в разных системах отчетности, но по сути логика их работы схожа: найти и расположить записи по заданным пользователем условиям. Для многомерных таблиц должна обеспечиваться наглядная фильтрация и сортировка данных в иерархических структурах.
  • Поиск. Система должна поддерживать поиск интересующих пользователя значений фактов и измерений многомерной таблицы.

Расшифровка отчета

Интерактивный OLAP-отчет создается по исходным данным, полученным из корпоративных БД. На основе этих данных вычисляются показатели отчета, которые увидит конечный пользователь: руководитель, менеджер, аналитик. Чтобы пользователь мог понять, каким образом был получен тот или иной показатель отчета, должна быть возможность его расшифровки, т.е. просмотра исходных данных.


Рис. 4. Интерфейс "Детализация" OLAP-отчета АПК.

Поддержка выгрузки в популярные приложения

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

Оформление и печать отчетов

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

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

Заключение

Использование OLAP-систем позволяет вовлечь в процесс разработки отчетов конечного пользователя. Специалистам служб автоматизации потребуется только обеспечить получение необходимой пользователям информации из корпоративных БД. Далее они смогут, не прибегая к помощи программистов, создавать финансовую, управленческую и любую другую внутреннюю отчетность компании: настраивать формы отчетов, вычислять показатели и строить графики. В результате IT-специалистам не придется решать частные проблемы каждого пользователя, а им, в свою очередь, долго дожидаться необходимых отчетов.

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

Автор: Е. Королева

Источник: Byte, 2005, № 2