Создание в DirectumRX структуры взаимосвязанных справочников для описания плана проверок, тем, объектов, подписантов, ответственных исполнителей и аудиторов.
План в течение года может корректироваться путем отмены или перемещения проверок. Изменения должны отражаться в отчете.
Реализация перекрестного отчета план-фактной сверки аудиторских проверок (т.е. отчет без суммирования), показывающего текущую ситуацию на момент генерации.
Конечное представление - файл Excel. Ячейки данных должны раскрашиваться цветами фона в зависимости от своевременности проверок, показывать дату проверки и интерактивно по гиперссылке в ячейке открывать соответствующий акт проверки.
Фильтровать показываемую информацию в отчете согласно статусу запрашивающего сотрудника.
Бизнес-процессы и подразделения, в которых используется решение.
Контрольно-ревизионное правление, Медицинский, юридический, HR и финансовый департаменты, Департаменты безопасности, административно-хозяйственной деятельности, инженерного обеспечения, информационных технологий, транспорта и общественного питания.
Использовалась Среда разработки DirectumRX 3.4 со встроенным генератором отчетов FastReport.
Причина неиспользования возможностей сводных таблиц Excel заключается в том, что они не могут строить перекрестные отчеты без суммирования.
Реализация же через PivotTable Excel требует установки дополнительной компоненты на всех ПК сотрудников. И этот путь оказывается более затруднительным в реализации.
В качестве основного компонента FastReport использовался элемент Матрица. Простота реализации в том, что все представление отчета формируется централизованно на сервере.
Источником отчета служит созданная функция на MS SQL сервере с параметрами, возвращающая таблицу. Параметрами задается, какую порцию данных отфильтровывать запрашивающему отчет сотруднику, исходя из его полномочий.
С обработкой ячейки, использующей три значения -- цвет, дата и гиперссылка на документ -- отдельно три значения не воспринимались матричным отчетом FastReport. Поэтому на стороне функции SQL все три значения "склеил" в одну текстовую строку с разделителями, а в обработчике события ячейки FastReport отчета ввел обратное расщепление:
private void Cell23_BeforePrint(object sender, EventArgs e)
{
if (Cell23.Value != null)
{
char str = Cell23.Value.ToString()[0];
if (str == 'з' || str == 'ж' || str == 'к' || str == 'л')
{
Cell23.Text = Cell23.Value.ToString().Substring(1,5);
Cell23.Hyperlink.Value = Cell23.Value.ToString().Substring(6);
}
}
}
Перед началом года Контрольно-ревизионное управление заполняет в созданном справочнике Директума план проверок на будущий год: объектов, мест, тем и сроков проверок. В отчете фрагмент настроек на начало года выглядит так:
По мере появления актов проверок план заполняется и начинает выглядеть так:
Главный результат: ранее контрольная деятельность требовала нескольких шкафов с бумажными папками и кучу времени по ведению учета в таблицах Excel, ошибки человеческого фактора и т.д.. Сейчас шкафы и бумажки ликвидированы, весь поиск и отчетность производятся мгновенно и точно только в DirectumRX по безбумажной технологии
Автоматическое сопоставление плана и фактически оформленных актов сильно ускоряет и упорядочивает работу аудиторов и составителя. Кроме того, аудиторы могут самостоятельно посмотреть в онлайн режиме, какие проверки следует провести в текущем и будущих месяцах.
Исключаются ошибки т.н. "человеческого фактора", связанные с некорректным вводом и сопоставлением. Временные затраты на составление отчета сократились почти до 0. Составитель теперь не тратит свое время на ручное поддержание и фильтрацию составленного отчета по запросам разных сотрудников. Аудиторы и руководители направлений сами получают отчет автоматически.
Может применяться и быть развито для любых отраслей, где необходима сверка плана с фактом.
Королев Сергей, Рагузова Наталья, Лиферов Михаил.
Обсудите реализацию с экспертом Directum
Комментарии (1)
Замечу, что с 3.5 Директум обновил компоненту FastReport и сделал ряд фиксов, которые расширили функционал компоненты и которые позволили избежать тех сложностей, которые приходилось обходить мне в ранних версиях.