DOI: 10.12731/2227-930X-2023-13-2-102-114 УДК 65.011.56
Научная статья | Информатика, вычислительная техника и управление
РАЗРАБОТКА ЕДИНОГО ПОДХОДА К АВТОМАТИЗАЦИИ ПРОЦЕССА ПРОВЕРКИ ШАБЛОНОВ ДОКУМЕНТОВ СОЗДАННЫХ В FASTREPORT
М.Я. Рабовская, П.Э. Загребин
В статье рассматривается автоматизация бизнес-процессов создания, изменения и проверки шаблонов для печати платёжных документов в программе «FastReport» на примере организаций, занимающихся полиграфической деятельностью. Целью статьи является разработка программного обеспечения, позволяющего автоматически проверять файл шаблона печати по всем ключевым параметрам с использованием информации из собственной базы данных. Статья рекомендуется специалистам, чья работа связана с созданием документов в «FastReport».
Ключевые слова: создание шаблонов печати; автоматизация проверки шаблона; шаблоны платёжных документов; FastReport
Для цитирования. Рабовская М.Я., Загребин П.Э. Разработка единого подхода к автоматизации процесса проверки шаблонов документов созданных в FastReport //International Journal of Advanced Studies. 2023. Т. 13, № 2. С. 102-114. DOI: 10.12731/2227-930X2023-13-2-102-114
Original article | Informatics, Computer Science and Management
DEVELOPMENT UNIFIED APPROACH TO AUTOMATION DOCUMENT TEMPLATE VERIFICATION PROCESS CREATED IN FASTREPORT
M.Ya. Rabovskaya, P.E. Zagrebin
The article discusses the business processes automation for creating, modifying and checking templates for printing payment documents
in the «FastReport» program using the example of organizations engaged in printing activities. The purpose of the article is to develop software that allows you to automatically check the print template file for all key parameters using information from its own database. The article is recommended to specialists whose work is related to the creation of documents in «FastReport».
Keywords: creation of print templates; template validation automation; templates of payment documents; FastReport
For citation. Rabovskaya M.Ya., Zagrebin P.E. Development Unified Approach to Automation Document Template Verification Process Created in FastReport. International Journal of Advanced Studies, 2023, vol. 13, no. 2, pp. 102-114. DOI: 10.12731/2227-930X-2023-13-2-102-114
Введение
В настоящее время в информационных технологиях достаточно эффективно используются различные системы электронного документооборота, которые предназначены для создания, редактирования, хранения и согласования различных документов, а также частные решения, например, в сфере образования [1]. При реализации новых стратегий в политике юридического лица, предоставляющего услуги частным лицам, одним из решающих факторов является быстрое внесение любых изменений в платёжный документ с полной проверкой документа на соответствие всем нормам. Одной из задач развития информационных технологий в полиграфических организациях является создание возможности полностью автоматизировано проверять любой шаблон печати, исключая человеческий фактор, что позволит снизить количество ошибок в готовых платёжных документах, а также сэкономит время на согласование документов с клиентом [2].
За исключением «FastReport» на российском рынке недостаточный выбор готовых решений для открытия и редактирования файлов шаблонов формата fT3. Единственным полноценным аналогом данной программы является «DesignFR», но данная
программа не позволяет проверять существующий шаблон по ключевым параметрам, при этом в ней реализован избыточный функционал верстки [3]. Нами был рассмотрен вариант использования данных из собственной СУБД, но в результате исследования было показано, что шаблоны серьёзно усложнятся и будут требовать интеграции с «DesignFR», это значительно расширит платформенное решение и приведёт к отсутствию поддержки версионности документов [4][5].
Целью исследования является разработка модели, позволяющей проверять существующий шаблон формата &3 по любым ключевым параметрам и вывода подробного результата проверки по каждому из параметров [6]. Результат внедрения такой модели - реализация рабочего сервиса.
Задачами исследования являются разработать и реализовать:
• модель хранения ключевых параметров и тестовых данных шаблонов печати с возможностью их изменения и дополнения (Рис. 1);
• метод заполнения и проверки шаблона печати по всем ключевым параметрам с использованием различных источников данных;
• механизм вывода данных проверки шаблона печати с подробной информацией о ходе выполнения по каждому из
ключевых параметров.
Рис. 1. Решение
Материалы и методы исследования
Программа для проверки шаблонов печати разработана на основе системы «FastReport .Net» для взаимодействия с файлами формата fr3, которое содержит набор модулей для работы с ша-
блонами печати и базой данных. Основное взаимодействие разрабатываемого ПО производится с системными модулями "Шаблон отчёта", "Данные", "Ядро" и "Готовый отчёт" (Рис. 2) [7].
Рис. 2. Схема реализации компонентов FastReport
Так же используется существующее программное обеспечение для взаимодействия с базой данных и шаблонами печати «FreshManager», которое даёт возможность взаимодействовать как с отдельными элементами шаблонов печати, так и с кодом внутренних функций шаблона [8][9].
Результаты исследования
Для достижения поставленной цели была создана программа, в основе которой используется разработанная модель работы с документами, а именно были описаны необходимые сущности (схема, модель, шаблон) и взаимодействие между ними (Рис. 1).
В качестве шаблона используется документ формата &3 с разметкой вида [тэг."команда"]. Тэгом может быть любой объект, поддерживаемый «FastReport», текст, картинка, штрихкод или QR-код, источник данных, верхний и нижний колонтитул и так далее [10].
Команда может быть условием, перечислением, вставкой изображения, изменением контекста или вызовом любой функции, написанной на языке программирования Delphi (Рис. 3).
Модель представляет собой объект, описывающий тестовые данные, необходимые для вставки в шаблон. В этом качестве берутся специально подготовленные наборы данных, предоставляемые клиентами. Они позволяют обработать все варианты заполнения шаблона и тем самым найти все возможные ошибки [11][12].
Child: Footer
Расчетный период [_frDB_Master_."RS_MON Дата формирования квитанции [JrDB_Master_ "DAY FORM
Реквизиты Вид услуги Сумма к оплате Оплачено
[_frOB Master "ORG NAME") ИНН/КПП LfrDB'Master" "ORG~INN"]/[_frDB Master "ORG KPP'] Юр адрес LfrOB_Master_ "ORG_ADR"]L_fr06_Master_ ÉBNK_RECV"] Природный газ
Пени
Итого ter ."SUM
Абонент: [_frDB_M aste r_." F10 "] |[_frDB_M aster. Подпись:
Адрес: [_frDB_Master_."ADDRESSB]
Дата пок. ПУ1 ПУ2 ПУЗ Коп-во жильцов, чел:
Отапливаемая площадь, м2: [_frDB_Master_. "AREA_SIZE")
Рис. 3. Пример графической части шаблона печати
Схема программы представляет собой алгоритм, состоящий из следующих действий:
• заполнения шаблона тестовыми данными;
• создания образца платёжного документа;
• перевод данного документа в код;
• сравнение полученного кода с кодом требований к данному шаблону;
• получения результата полной проверки нового шаблона.
Согласно данной схеме, программа должна быть внедрена в
процесс внесения в шаблон печати сразу после изменения параметров шаблона разработчиком (Рис. 4).
Система интегрирована с большим количеством модулей и внешних сервисов [13]. Через функции импорта и экспорта синхронизируются различные потоки данных. Они дают нам информацию о клиентах, их шаблонах, методах заполнения базы данных, исходных данных и видах заданий. Так же список сотрудников и шаблонов, с которыми они работали [14].
Начало
Клиент запрашивает изменить шаблон печати
Ввод клиентом списка изменений
Конец
Начало
_L_
Загрузка разработчиком fp3 файла шаблона
Запрос у БД информации о шаблоне, требований к нему и тестовых данных для его заполнения
Заполнение шаблона тестовыми данными, и создание образца готового платёжного документа
Перевод образца платёжного документа в код и сравнение полученного кода с кодом требований к шаблону
Получение в результате сравнения информации о пройденной проверке
I
Запись в БД обновлённой информации о статусе шаблона и результатах его последней проверки
Вывод результата пройденной проверке /
Конец
Рис. 4. Блок-схемы алгоритма процесса проверки шаблона и алгоритма работы программы
На Рисунке 5 представлен алгоритм действий, реализованный в выбранном решении.
Проваленные тесты
Рис. 5. Алгоритм действий программы
Приведем краткое описание выбранного алгоритма:
• после получения запроса на верификацию от разработчика, система запрашивает у собственной базы данных информацию о данном шаблоне (принадлежность клиенту, способ заполнения базы данных, тестовый набор данных, исполнитель, статус проверки, ключевые параметры и их значения);
• заполняется шаблон соответствующими тестовыми данными, таким образом формируя все варианты платёжных документов в формате ф3;
• далее программа переводит электронный документ в код, представляющий из себя набор заполненных тэгов и проводит тестирование по заранее созданному набору;
• после сравнения каждого ключевого параметра, определяются результаты тестирования и генерируется сообщение, описывающее результат верификации, который в случае успешной проверки подписывает шаблон ЭЦП.
Рис. 6. ERR-диаграмма основных таблиц
Хранилище информации о шаблонах печати, тестовых данных, клиентах и сотрудниках спроектировано на основе базы данных MySQL со следующей структурой (Рис. 6). Ключевой выходной таблицей является «Проверка шаблона», в ней и будут отобра-
жаться результаты проверки. Её вспомогательной таблицей будет являться «Проверка требования» [15].
Преимуществом системы является возможность автоматизировать процесс проверки шаблонов документов, уменьшая количество времени, затраченное на координирование клиентов компании с разработчиками шаблонов за счёт сокращения функций в сотни раз. На схеме приведены основные функции пользователей после автоматизации процесса проверки (Рис. 7).
Рис. 7. Схема взаимодействия пользователей (to be)
Роли в системе распределены следующим образом:
• клиент создаёт запрос на изменение своего платёжного документа, формируя список новых требований;
• разработчик вносит требуемые изменения в существующий шаблон и согласовывает изменения с клиентом, путём автоматической проверки и отправки клиенту информации о том, что изменённый шаблон полностью соответствует всем требованиям;
• менеджер по сопровождению клиентов, согласовывает изменения в шаблоне на основе результатов автоматической проверки и согласия клиента на данный вид платёжного документа.
Обсуждение
Программное обеспечение соответствует требуемой функциональности для полиграфических компаний и поддерживает существующий процесс формирования и изменения платёжных документов. Программа введена в тестовую эксплуатацию на основе данных нескольких клиентов.
Заключение (выводы)
Разработанная программа позволяет проверять созданные шаблоны печати формата fr3 в зависимости от требований к ключевым параметрам, делает более понятным и быстрым процесс согласования, уменьшает число возможных ошибок, а также предоставляет полный отчёт по всем проблемам с детализацией несоответствий с требованиями, упрощая внесение изменений в существующие документы. Таким образом, мы получили готовое автоматизированное решение, позволяющее клиентам проверять свои документы на соответствие нормативной базе.
Информация о конфликте интересов. Авторы заявляют об отсутствии конфликта интересов.
Информация о спонсорстве. Исследование не имело спонсорской поддержки.
Благодарности. Автор выражает признательность коллегам за помощь.
Список литературы
1. Рабовская М.Я., Суворина А.А. Разработка единого подхода к шаблонизации документов на примере автоматизации процесса формирования рабочих программ модулей // International Journal of Advanced Studies in Computer Engineering, 2018, №2. С. 50-58.
2. Епишин И.Г., Катышева М.А., Репин А.Ю., Муковнин А.С. К вопросу автоматизации разработки текстовых конструкторских документов [Электронный ресурс]. https://cyberleninlca.ru/article/
n/k-voprosu-avtomatizatsii-razrabotki-tekstovyh-konstruktorskih-dokumentov
3. Маров Вячеслав Николаевич. Электронные системы делопроизводства [Электронный ресурс]. https://cyberleninka.ru/article/n/ elektronnye-sistemy-deloproizvodstva
4. Левчук Е.А. Технологии организации, хранения и обработки данных. М.: Вышэйшая школа, 2011. 240 с.
5. Голицына О.Л., Партыка Т.Л., Попов И.И. Основы проектирования баз данных. М.: Форум, 2012. 416 с.
6. Валентинов В.В., Князева М.Д. Персональная база данных для менеджера. М.: Форум, 2011. 224 с.
7. Дунаев В. Базы данных. Язык SQL для студента. СПб.: БХВ-Пе-тербург, 2012. 320 с.
8. Левчук Е.А. Технологии организации, хранения и обработки данных. М.: Вышэйшая школа, 2011. 240 с.
9. Петров Андрей Леонидович. Управление доступом в СУБД MySQL и Oracle [Электронный ресурс]. https://cyberlenmka.ru/ article/n/upravlenie-dostupom-v-subd-mysql-i-oracle
10. Трофимов М.В. Интерактивное интеллектуальное приложение для помощи в оформлении печатных работ в соответствии с государственными стандартами [Электронный ресурс]. https:// cyberleninka.ru/article/n/interaktivnoe-intellektualnoe-prilozhe-nie-dlya-pomoschi-v-oformlenii-pechatnyh-rabot-v-sootvetst-vii-s-gosudarstvennymi-standartami
11. Mark Sunderland, Tristan Davis. Techniques to create structured document templates using enhanced content controls [Электронный ресурс]. https://www.researchgate.net/publication/302784959_Techniques_to_ create_structured_document_templates_using_enhanced_content_controls
12. Mary St. John. The Teradata document template: A planning tool [Электронный ресурс]. https://www.researchgate.net/publication/2606 93311_The_Teradata_document_template_A_planning_tool
13. Sejin Nam, Sungin Lee, James G Boram Kim, Hong-Gee Kim. Ontology-based Reusable Clinical Document Template Production
System [Электронный ресурс]. https://www.researchgate.net/pub-lication/230637479_Ontology-based_Reusable_Clinical_Document_ Template_Production_System
14. Stephen James O'Brien. Dynamic positioning of components using document templates [Электронный ресурс]. https://www.research-gate.net/publicationy302734831_Dynamic_positioning_of_compo-nents_using_document_templates
15. Thomas Gottron. Bridging the gap: From multi document template detection to single document content extraction [Электронный ресурс]. https://www.researchgate.net/publication/228963799_Bridging_the_ gap_From_multi_document_template_detection_to_single_docu-ment_content_extraction
References
1. Rabovskaya M.Ya., Suvorina A.A. Razrabotka edinogo podkho-da k shablonizatsii dokumentov na primere avtomatizatsii protsessa formirovaniya rabochikh programm moduley // International Journal of Advanced Studies in Computer Engineering, 2018, №2. S. 50-58.
2. Epishin I.G., Katysheva M.A., Repin A.Yu., Mukovnin A.S. K vopro-su avtomatizatsii razrabotki tekstovykh konstruktorskikh dokumen-tov [Elektronnyy resurs]. https://cyberleninka.ru/article/n/k-vopro-su-avtomatizatsii-razrabotki-tekstovyh-konstruktorskih-dokumentov
3. Marov Vyacheslav Nikolaevich. Elektronnye sistemy deloproizvod-stva [Elektronnyy resurs]. https://cyberleninka.ru/article/nУelektron-nye-sistemy-deloproizvodstva
4. Levchuk E.A. Tekhnologii organizatsii, khraneniya i obrabotki danny-kh. M.: Vysheyshaya shkola, 2011. 240 s.
5. Golitsyna O.L., Partyka T.L., Popov I.I. Osnovy proektirovaniya baz dannykh. M.: Forum, 2012. 416 s.
6. Valentinov V.V., Knyazeva M.D. Personal'naya baza dannykh dlya menedzhera. M.: Forum, 2011. 224 s.
7. Dunaev V. Bazy dannykh. Yazyk SQL dlya studenta. SPb.: BKhV-Pe-terburg, 2012. 320 s.
8. Levchuk E.A. Tekhnologii organizatsii, khraneniya i obrabotki danny-kh. M.: Vysheyshaya shkola, 2011. 240 s.
9. Petrov Andrey Leonidovich. Upravlenie dostupom v SUBD MySQL i Oracle [Elektronnyy resurs]. https://cyberleninka.ru/article/n/upravle-nie-dostupom-v-subd-mysql-i-oracle
10. Trofimov M.V. Interaktivnoe intellektual'noe prilozhenie dlya pomosh-chi v oformlenii pechatnykh rabot v sootvetstvii s gosudarstvennymi standartami [Elektronnyy resurs]. https://cyberleninka.ru/article/n/ interaktivnoe-intellektualnoe-prilozhenie-dlya-pomoschi-v-oform-lenii-pechatnyh-rabot-v-sootvetstvii-s-gosudarstvennymi-standartami
11. Mark Sunderland, Tristan Davis. Techniques to create structured document templates using enhanced content controls [Elektronnyy resurs]. https://www.researchgate.net/publication/302784959_Tech-niques_to_create_structured_document_templates_using_enhanced_ content_controls
12. Mary St. John. The Teradata document template: A planning tool [Elektronnyy resurs]. https://www.researchgate.net/publica-tion/260693311_The_Teradata_document_template_A_planning_ tool
13. Sejin Nam, Sungin Lee, James G Boram Kim, Hong-Gee Kim. Ontology-based Reusable Clinical Document Template Production System [Elektronnyy resurs]. https://www.researchgate.net/publica-tion/230637479_Ontology-based_Reusable_Clinical_Document_ Template_Production_System
14. Stephen James O'Brien. Dynamic positioning of components using document templates [Elektronnyy resurs]. https://www.researchgate. net/publication/302734831_Dynamic_positioning_of_components_ using_document_templates
15. Thomas Gottron. Bridging the gap: From multi document template detection to single document content extraction [Elektronnyy resurs]. https://www.researchgate.net/publication/228963799_Bridging_the_ gap_From_multi_document_template_detection_to_single_docu-ment content extraction
ДАННЫЕ ОБ АВТОРАХ Рабовская Мария Яковлевна, к.ф-м.н.
ФГАОУ ВО «УрФУ имени первого Президента России Б.Н. Ельцина»
просп. Ленина, 51, г. Екатеринбург, Российская Федерация m.ya.rabovskaya@urfu.ru
Загребин Павел Эдуардович, магистр
ФГАОУ ВО «УрФУ имени первого Президента России Б.Н. Ельцина»
просп. Ленина, 51, г. Екатеринбург, Российская Федерация p.z199@yandex.ru
DATA ABOUT THE AUTHORS Maria Ya. Rabovskaya, Ph.D.
Ural Federal University named after the first President of Russia B.N. Yeltsin
51, Lenin Ave., Ekaterinburg, Russian Federation m.ya.rabovskaya@urfu.ru
Pavel E. Zagrebin, master's degree
Ural Federal University named after the first President of Russia B.N. Yeltsin
51, Lenin Ave., Ekaterinburg, Russian Federation p.z199@yandex.ru
Поступила 05.03.2023
После рецензирования 20.03.2023
Принята 30.03.2023
Received 05.03.2023 Revised 20.03.2023 Accepted 30.03.2023