Проект выполнен составом команды
AAA Team
:
1.Andrey Donskoy
donskoi.com@gmail.com
2.Medvedev Artem
artiebears@mail.ru
3.Ramazanov Ali
ali_ramazanov_2000@mail.ru
Описание проекта, актуальность и проблематика
Создание или разработка на платформе существующих автоматизированных систем функциональности с возможностью распознавания скан-образа документа на корректность оформления, для минимизации трудозатрат при проверке данных, а также уменьшению рисков искажения бухгалтерской отчетности.
Автоматизированный анализ направленных на проверку первичных учетных документов в реестре. В реестре приема-передачи первичных документов предлагается реализовать процесс автоматизированной проверки документа на корректность и полноту оформления до получения в работу бухгалтером.
Документ должен содержат набор обязательных реквизитов, предусмотренных:
- ФЗ-402 «О бухгалтерском учете»;
- Альбомом форм, утвержденным Распоряжением от 15 декабря 2008 года №2688р с изменениями;
- Распоряжением ОАО «РЖД» от 14 января 2013 №45р «О сроках оформления и предоставления ПУД и счетов-фактур для своевременного отражения фактов хозяйственной жизни ОАО «РЖД» в бухгалтерском и налоговом учете» и другими нормативными правовыми документами Компании.
Проверка первичных учетных документов заключается в распознавании документа на предмет корректного и полного заполнения полей обязательных к заполнению. Если полученный документ не соответствует заявленным требованиям, то документу присваивается статус «Возвращен», если все соответствует, то документу присваивается статус «Акцептован»
Системные требования:
OS Linux
(протестировано на Ubuntu 22.04.3 LTS
).
Установка виртуального окружения
В качестве менеджера пакетов используется Poetry.
Все необходимые зависимости зафиксированы в конфигурационном файле — pyproject.toml
poetry shell
poetry install
Установка Tesseract OCR
Необходимо для применения оптического распознавания символов.
sudo apt-get install tesseract-ocr
sudo wget -P /usr/share/tesseract-ocr/4.00/tessdata https://github.com/tesseract-ocr/tessdata/raw/main/rus.traineddata
Запуск веб-сервиса
Скрипт запуска зафиксирован в Makefile и может быть вызван командой:
make web
Для применения веб-сервиса, необходимо в соответствующее окно загрузить файл
определенной формы (поддерживаются только М-11
и ФМУ-76
).
После непродолжительной обработки файла (до 20 с), будет выведен полный отчет валидации данных, распознанных из файла.
├── data <----- Используемая информация, датасеты
│ ├── Альбомы форм <----- Примеры правильных форм
│ │ ├── М-11 <----- Примеры правильных форм М-11
│ │ └── ФМУ-76 <----- Примеры правильных форм ФМУ-76
│ ├── М-11 <----- Предоставленные аннулированные данные по М-11
│ │ ├── Аннулировано <----- Формы М-11, имеющие печать "Аннулировано"
│ │ └── Принято <----- Формы М-11, не имеющие печать "Аннулировано"
│ └── ФМУ-76 <----- Предоставленные аннулированные данные по ФМУ-76
│ ├── Аннулировано <----- Формы ФМУ-76, имеющие печать "Аннулировано"
│ ├── Подумать <----- Формы ФМУ-76, не имеющие печать "Аннулировано"
│ └── Принято <----- Формы ФМУ-76, не имеющие подписей
├── documents_parser <----- Source-папка проекта
│ ├── parser <----- Скрипты извлечения данных из форм
│ ├── ui <----- Скрипты визуализации и валидации данных
│ │ └── src <----- Source-папка веб-интерфейса
│ └── utils <----- Дополнительные утилиты
└── tests <----- Тесты