ГлавнаяПродуктыOMNITRACKERОтчётность

Отчётность

ВВЕДЕНИЕ

Система OMNITRACKER (далее OMNITRACKER или OT) предоставляет богатые возможности по формированию отчётной информации. Наиболее значимыми из них являются:

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

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

1. Запрос данных - выбор типа объектов и ограничение объёма записей, которые являются основанием для отчёта;
2. Обработка данных - агрегирование (свёртка) данных по интересующим разрезам, вычисление значений показателей;
3. Представление - вывод подготовленной информации на экран или в файл.


Рис. 1. Три этапа обработки данных.

Это разделение является довольно условным: в некоторых отчётных системах этапы 1 и 2 объединяются, например, когда подсчёт и агрегирование данных выполняется SQL-запросом. Кроме этого, в некоторых случаях обработка может производиться также внутри уровня представления, например, используя формулы (Formula Fields) Crystal Reports. Однако в Omnitracker существует возможность разделить этапы обработки, и поэтому вы можете вносить изменения в различные этапы по отдельности. Например, можно выбрать данные, рассчитать необходимые показатели и создать две выгрузки: в Crystal Reports для периодической рассылки руководству и в MS Excel для оперативного анализа. Таким образом, вы получите два варианта представлений для одних и тех же запроса и обработки.

В Omnitracker создание и запуск формирования любого отчёта выполняются с помощью пункта меню "Название папки→Выполнить..." (Рис. 2). Кроме того открыть окно задач можно щёлкнув правой кнопкой мыши на папке в левой навигационной панели и выбрав пункт меню "Выполнить...".


Рис. 2. Окно задач.

Нажав на кнопку "Добавить" в окне задач вы увидите приглашение выбрать один из четырёх типов задач (Рис. 3):

  • Список действий;
  • Печать;
  • Печать с помощью помощника;
  • Экспорт.

Список действий - используется для выполнения сценариев бизнес-логики Omnitracker. Здесь мы не будем рассматривать этот тип задач.
Печать - вывод отчётной информации производится в приложение MS Word или Crystal Reports.
Печать с помощью помощника - вывод отчётной информации в приложение MS Word или Crystal Reports. Обработка данных при этом определяется в упрощённом режиме, с помощью мастера.
Экспорт - выгрузка информации в файлы типа MDB, TXT, XLS, XLSX, CSV, XML.

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



Рис. 3. Добавление задачи.

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


Рис. 4. Настройка задачи.


В окне настройки задачи размещаются следующие закладки:

  • Data - общие сведения задачи и настройки источника данных (этап 1);
  • Schema - настройки состава запрашиваемых данных и их обработки (этапы 1, 2);
  • Output - настройки вывода результата (этап 3);
  • Permission - настройки полномочий, необходимых для выполнения задачи.

В следующих разделах эти настройки будут рассмотрены подробно.


1. ЗАПРОС ДАННЫХ

Объём записей, на основании которых будет сформирован отчёт, может быть выбран пользователем, а может быть взят из какого-либо фильтра OT. Определить какой именно способ использовать, можно выбрав значение в панели "Included Objects" (Рис. 5). 


Рис. 5. Настройка задачи, панель выбора источника.

Include selected objects - в отчёт попадут только выбранные пользователям записи в главном окне Omnitracker. Если в главном окне OMNITRACKER не выбрано ни одной записи, то отчёт сформирован не будет.

Include all objects in the folder matching the following filter - в отчёт попадут записи, соответствующие выборке, ограниченной фильтром. Задать фильтр можно нажав в панели инструментов кнопку "Вид", выбрав пункт "Редактировать...". Затем откроется окно редактирования свойств вида. Чтобы создать новый или отредактировать установленный фильтр необходимо нажать кнопку "Фильтр" и выбрать пункт "Редактировать..." (Рис. 6).


Рис. 6. Редактирование свойств фильтра объектов.

2. СХЕМЫ ОБРАБОТКИ

Управление схемами обработки данных осуществляется на закладке "Schema" задачи (Рис. 7). Выбор конкретной схемы из списка определяет ту, которая будет использоваться в текущей задаче.

Кнопки:
Add Export... - создать экспорт;
Add Statistics... - создать статистику.


Рис. 7. Настройка задачи, закладка "Схема".

Экспорт данных позволяет определить, какой тип данных будет выгружен, выбрать интересующие атрибуты этих объектов.

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

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


2.1. Экспорт данных

Для создания экспорта данных на закладке "Schema" задачи необходимо нажать кнопку "Add export..." (Рис. 7). После этого откроется окно настройки экспорта (Рис. 8).


Рис. 8. Окно настройки экспорта данных.

Нажав кнопку "Add table..." можно добавить таблицу экспорта. Экспортный файл будет содержать столько таблиц, сколько задано в таблице "Exported tables and columns". Должна быть задана, по крайней мере, одна таблица.

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


Рис. 9. Добавление таблицы выгрузки.

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

  • Вложения - файлы, ссылки;
  • Поля - каждая строка выгрузки соответствует одному из атрибутов объекта и может содержать как наименование атрибута, так и его значение;
  • История - информация об изменениях атрибутов объекта, фиксирующаяся автоматически;
  • Объект - стандартное представление, когда каждая строка выгрузки соответствует отдельному информационному объекту, а в столбцах содержатся значения атрибутов объектов;
  • Reference List - связи;
  • Time-Stamped Memo - содержимое полей типа "Протокол" (Time-Stamped Memo).

Для примера сформируем выгрузку из папки "Инциденты" демонстрационной базы данных Omnitracker. Для этого в открывшемся окне зададим произвольное имя таблицы (Inc) и установим тип выгружаемых данных (Object).

После нажатия OK в выгрузку добавится новая таблица "Inc". Нажимая кнопку "Add columns..." можно выбрать перечень аналитических признаков объекта "Инцидент", которые должны присутствовать в итоговой выгрузке. После добавления интересующих аналитических признаков окно настройки схемы экспорта будет выглядеть примерно, как показано на Рис. 10.


Рис. 10. Перечень полей выгрузки.

После нажатия на кнопку OK настройки схемы будут сохранены. Определив вывод данных в формат MS Excel (как это сделать, описано в разделе ВЫВОД ОТЧЁТНЫХ ДАННЫХ), мы получим результат, показанный на Рис. 11.


Рис. 11. Результат экспорта в формат MS Excel.



2.2. Статистики

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

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

Для создания статистики на закладке "Schema" задачи необходимо нажать кнопку "Add statistics..." (Рис. 7). После этого будет открыто окно с настройками параметров статистики (Рис. 12).


Рис. 12. Окно настройки статистики.

Статистика может быть одного из двух видов:

  • простая статистика (Basic Statistics);
  • статистика событий (Event Statistics).

На закладке "Basic Statistics" можно создать запрос с помощью интерфейса OMNITRACKER (кнопка "Add Query...") либо добавить запрос с помощью сценария VB (кнопка "Add Script Query...").
Запрос, созданный с помощью интерфейса программы, выгружает данные из текущей папки и сохраняет их во временной таблице базы данных. Запрос из сценария VB создаёт одну таблицу или более и наполняет её данными.

Статистика событий (закладка "Event Statistics") позволяет определить параметры выгрузки событий жизненного цикла объекта за определённый период времени.

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

Для этого создадим новую задачу с именем "KPI Statistics" и добавим для неё новую статистику "KPI1" (Рис. 13).


Рис. 13. Статистика KPI1.

Единственный запрос Query1 при этом выглядит следующим образом:


Рис. 14. Запрос Query1.

Как видно на Рис. 14, во временную таблицу будут выгружены следующие поля заявки:

  • номер в Omnitracker;
  • плановая дата разрешения;
  • фактическая дата разрешения;
  • ответственный специалист.

Так как в текущей базе данных у объекта "Заявка" нет аналитического признака "Просрочен", то его необходимо создать. Кроме того, чтобы рассчитать долю просроченных заявок необходимо подсчитать общее количество заявок и количество просроченных. Для этого используем сценарий постобработки , который выполнит требуемые действия и добавить новую информацию во временные таблицы:

 

После того, как сценарий отработает, в таблице Query1 будет добавлен столбец "IsOverdue", который для просроченных заявок содержит значение "1", а для непросроченных значение "0". Кроме того, в выгрузку будет добавлена отдельная таблица KPI1, содержащая столбцы:

  • KPIValue - количество просроченных заявок;
  • KPIBase - общее количество заявок;
  • KPI - значение KPI (KPI=KPIValue/KPIBase).

В следующих разделах будет рассмотрены варианты представления этих данных.

 

2.2.1. Фильтры по событиям жизненного цикла (History Filters)

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

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

  • какие объекты были в статусе "X" в течение отчётного периода?
  • для каких объектов выполнялись переходы из статуса "X" в статус "Y"?
  • какие объекты не были в статусе "X" в течение отчётного периода?

Для добавления фильтра по событиям жизненного цикла необходимо в свойствах запроса (Query) нажать кнопку "Add Filter..." (Рис. 15).


Рис. 15. Создание фильтра по событиям жизненного цикла.

В окне свойств фильтра:

  • Field - поле типа Workflow объекта, по которому будет производиться фильтрация;
  • Start Date - будут учтены только записи истории, сделанные позднее этой даты;
  • End Date - будут учтены записи истории, сделанные ранее этой даты;
  • Тип - тип фильтра. Имеется возможность задать следующие типы фильтров:
    • State Transition - переход статуса, указывается исходный и конечный статусы;
    • Has State - объект находился в каком-либо статусе за период;
    • Has Not State - объект не находился в каком-либо статусе за период.
  • From State - исходный статус (только для фильтра типа State Transition);
  • To State - конечный статус (только для фильтра типа State Transition);
  • State - наименование статуса (только для фильтров типа Has State и Has Not State).

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


3. ВЫВОД ОТЧЁТНЫХ ДАННЫХ

3.1. Файл

Возможна выгрузка данных в файлы следующих форматов:

  • MS Access (MDB);
  • Text (TXT);
  • MS Excel (XLS, XLSX);
  • Comma Separated Values (CSV);
  • eXtensible Markup Language (XML).

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

Например, для того, чтобы данные экспортировались в формате MS Excel, укажите соответствующее расширение для имени выходного файла (Рис. 16).


Рис. 16. Установка формата выходного файла.

Если флаг "Prompt user for output file" включен, то при формировании отчёта будет открыто окно с приглашением пользователю выбрать путь для выходного файла. В случае если пользователь изменит расширение файла на какое-либо другое из перечисленных выше, то OT выгрузит данные в формате, отличном от предустановленного.

Результат выгрузки отчёта "KPI1", запрос и обработка которого рассматривались в разделе "Статистики", будет выглядеть следующим образом:


Рис. 17. Выгрузка отчёта KPI1 в формат MS Excel.

Как видно на Рис. 17, при выгрузке в MS Excel каждая таблица временной базы данных записывается в отдельный лист книги MS Excel.

3.2. Crystal Reports

Приложение Crystal Reports (далее CR) позволяет гибко задать конечный вид отчёта, определив способ представления данных. Для того чтобы создать новый шаблон CR на закладке "Output" задачи необходимо выбрать способ вывода "Print using: Crystal Reports" и нажать кнопку "Add..." (Рис. 18).


Рис. 18. Добавление нового шаблона Crystal Reports.

После этого будет открыто приложение Crystal Reports и в окне "Field Explorer" отобразятся те таблицы и их столбцы, которые получены в результате выгрузки и постобработки (Рис. 19).

Кроме настройки представления данных, в Crystal Reports можно проводить дополнительные вычисления или совсем перенести все вычисления в отчёт CR используя внутренние вычисляемые поля (Formula Fields). Подробную информацию по использованию вычисляемых полей можно найти в руководстве пользователя Crystal Reports.


Рис. 19. Создание нового шаблона Crystal Repots.

После того, как пользователь OMNITRACKER запустит отчёт Crystal Reports на выполнение, откроется окно приложения для просмотра отчётов CR (Рис. 20).


Рис. 20. Отчёт Crystal Reports.

3.3. Microsoft Word

Для экспорта данных в приложение MS Word используется встроенная функциональность MS Word "Слияние документов".

Подробнее о функциональности "Слияние документов" MS Word.


3.4. Таблица

При экспорте данных в таблицу результат можно увидеть сразу в клиентском приложении OT. Для того чтобы включить экспорт в таблицу на закладке "Output" необходимо отметить вариант "Show results as table" (Рис. 21).


Рис. 21. Вывод результата в таблицу.

При использовании этого метода экспорта результат будет выглядеть примерно как на Рис. 22.



Рис. 22. Табличное представление отчёта.

 

3.5. Внешняя база данных

Выгрузка данных во внешнюю БД доступна только для простых экспортов. Выгрузка возможна в следующие СУБД:

  • IBM DB2;
  • Oracle;
  • SQL Server;
  • MDB Database (MS Jet Engine).

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


Рис. 23. Экспорт для выгрузки данных о сотрудниках во внешнюю систему.

Затем на закладке "Output" задачи выберем вариант "Export to Database" и нажмём кнопку "Configure" (Рис. 24).


Рис. 24. Выгрузка данных во внешнюю БД.

Затем будет открыто окно настройки соответствия полей (mapping). Определим здесь, какие поля экспорта (источника) соответствуют полям внешней БД (приёмника).


Рис. 25. Настройка отображения полей источника на поля приёмника.

Существуют следующие типы выгрузки данных:

  • Add and Modify Records - добавлять и редактировать записи. При выборе этого метода одно из полей должно быть определено как ключевое (Identifying Field). При выполнении такой выгрузки:
    • записи со значением ключевого поля, отсутствующем в таблице-приёмнике будут добавлены в неё;
    • записи, присутствующие в таблице-приёмнике, будут обновлены в случае, если какой-либо из атрибутов изменился.
  • Add Records - простое добавление записей. Все строки таблицы-источника будут добавлены в таблицу-приёмник.
  • Add, Modify and Delete Records - тоже самое, что и первое правило, кроме того, что из таблицы-приёмника будут удалены все записи, значение ключевого поля которых отсутствуют в таблице-источнике на момент экспорта.
  • Modify Existing Records Only - только обновление записей. Экспорт этого типа не создаёт новых и не удаляет существующих записей таблицы-приёмника, а происходит только обновление тех записей, значения ключевого поля которых присутствует в таблице-источнике и атрибут(ы) изменены.

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


4. ПОЛНОМОЧИЯ

Полномочия задания устанавливаются на закладке Permission :


Рис. 26. Настройка задачи, закладка "Полномочия".

Нажав на кнопку "Edit..." можно задать перечень рабочих групп или конкретных сотрудников, которые могут выполнять данную задачу. Если текущий пользователь не попадает в этот список, то данная задача ему не будет видна в общем списке задач.