Розпізнавання документів — Електронний військово-обліковий документ
Огляд
Функція Розпізнавання документів фізичної особи підтримує імпорт даних з Електронного військово-облікового документа (еВОД). У цьому сценарії система використовує Azure Content Understanding для розпізнавання полів документа, а потім додатково обробляє вбудований QR-код, якщо він присутній у результаті аналізу.
Загальні інструкції з налаштування Azure та базового сценарію розпізнавання дивіться у статті Розпізнавання документів фізичної особи.
Як працює імпорт з еВОД
Після завантаження документа система виконує два послідовні етапи:
- OCR-розпізнавання через Azure Content Understanding — отримує текстові поля з документа.
- Обробка вбудованого QR-коду — якщо аналізатор повернув поле
QrCode, система декодує його та імпортує додаткові військові дані.
Такий підхід дозволяє поєднати:
- дані, які видно безпосередньо на документі;
- дані, які доступні лише через QR-код з застосунку Reserve+.
Передумови
Для роботи сценарію потрібно:
- налаштований Azure Content Understanding;
- створений аналізатор для еВОД у Azure AI Foundry;
- налаштований сценарій або прив'язка аналізатора до типу документа фізичної особи;
- заповнені довідники, які використовуються для мапінгу значень.
Особливо важливо перевірити наявність значень у таких довідниках:
- Коди персональної інформації з групою Військове звання;
- Підстави зняття/виключення з військового обліку;
- Коди персональної інформації з групою Категорія військового обліку;
- Загальний довідник з типом ТЦК т а СП;
- Загальний довідник з типом Придатність до військової служби.
Якщо потрібного значення немає, частина полів не буде імпортована або система зупинить оновлення військових реквізитів з помилкою.
Налаштування аналізатора для еВОД
Рекомендована схема полів
Створення аналізатора, побудова моделі, синхронізація в Business Central і прив'язка до сценарію описані у базовій статті Розпізнавання документів фізичної особи. Для еВОД достатньо використати окремий аналізатор або окремий тип документа й додати до нього eVOD-специфічні поля зі схеми нижче.
Назви полів повинні точно збігатися з наведеними нижче.
| Field Name | Призначення | Використання в системі |
|---|---|---|
LastName | Прізвище | Використовується базовою логікою розпізнавання документів фізичної особи |
FirstName | Ім'я | Використовується базовою логікою розпізнавання документів фізичної особи |
MiddleName | По батькові | Використовується базовою логікою розпізнавання документів фізичної особи |
BirthDate | Дата народження | Використовується базовою логікою розпізнавання документів фізичної особи |
ExpirationDate | Дата закінчення дії документа | Використовується для запису документа фізичної особи |
PersonalNumber | РНОКПП | Використовується базовою логікою розпізнавання документів фізичної особи |
DocumentNumber | Номер документа / номер у реєстрі | Імпортується у військові реквізити фізичної особи |
MilitaryRank | Військове звання | Імпортується у картку фізичної особи |
BocNumber | ВОС | Імпортується у картку фізичної особи |
RemovalBasis | Підстава зняття з обліку | Імпортується у картку фізичної особи |
StatusServiceTitle | Поточний статус військового обліку | Імпортується у картку фізичної особи |
DisabilityGroup | Група інвалідності | Імпортується у медичну інформацію |
DisabilityValidUntilDate | Дата дії інвалідності | Імпортується у медичну інформацію |
DisabilityReason | Причина інвалідності | Імпортується у медичну інформацію |
ResidenceAddress | Адреса реєстрації | Імпортується у альтернативну адресу |
PhoneNumber | Телефон | Імпортується у картку фізичної особи |
Email | Імпортується у картку фізичної особи | |
QrCode | Вбудований QR-код | Декодується окремо для імпорту військових даних |
У файлі схеми аналізатора можуть бути й інші поля. Документація нижче описує лише ті мапінги, які зараз реально обробляє прикладний код.
Що імпортується з OCR і як обробляється
Після створення або оновлення фізичної особи з документа система додатково обробляє спеціальні поля еВОД.
| Поле аналізатора | Куди імпортується | Логіка обробки |
|---|---|---|
MilitaryRank | Person.Military Rank | Шукається у Коди персональної інформації з групою Військове звання за частковим збігом назви |
DocumentNumber | Person.Military Registration No. | Пряме копіювання значення |
BocNumber | Person.Military Speciality No. | Пряме копіювання значення |
PhoneNumber | Person.Mobile Phone No. | Пряме копіювання значення |
Email | Person.E-Mail | Значення приводиться до нижнього регістру перед записом |
RemovalBasis | Person.Military Dismissal Reason Code | Пошук у довіднику Підстави зняття/виключення з військового обліку спочатку за точним, потім за частковим збігом опису |
StatusServiceTitle | Person.Other Service Status | Значення перетворюється у відповідний enum-статус |
DisabilityGroup | Person Medical Info | Створюється або використовується запис типу Інвалідність |
DisabilityValidUntilDate | Person Medical Info.Ending Date | Дата записується як дата закінчення дії інвалідності |
DisabilityReason | Person Medical Info.Document Details | Текст причини записується у деталі документа |
ResidenceAddress | Person Alternative Address | Створюється адреса типу Реєстрація з кодом EVOD, якщо такого запису ще немає |
Мапінг поля StatusServiceTitle
Поле StatusServiceTitle обробляється за ключовими словами:
уточнення→ Потребує уточненнярозшук→ У розшукупорушен→ Порушення правил військового облікуне знайдено→ Дані в реєстрі не знайденобзвпабопідготовки→ Потребує проходження БЗВП
Якщо ключове слово не знайдено, поле Інші службові статуси не заповнюється.
Імпорт інвалідності
Якщо аналізатор повернув DisabilityGroup, система:
- визначає групу інвалідності
1,2або3; - читає
DisabilityReasonіDisabilityValidUntilDate; - створює запис у Медичні відомості фіз. особи з типом Інвалідність, якщо аналогічного запису ще немає.
Якщо дата закінчення вже минула, система використовує її як Дата початку; інакше стартовою датою стає поточна дата.
Імпорт адреси проживання
Якщо розпізнано ResidenceAddress, система створює запис у Альтернативні адреси Фіз.особи:
- Address Type =
Реєстрація - Code =
EVOD - Valid from Date = поточна дата
Новий запис створюється лише тоді, коли для особи ще немає адреси такого типу.
Що імпортується з вбудованого QR-коду
Якщо аналізатор повернув поле QrCode, система декодує його та застосовує ту саму бізнес-логіку, що і для окремого функціоналу Reserve+ QR.
З QR-коду можуть бути імпортовані такі дані:
- військовий статус;
- тип військового обов'язку;
- ознака резервіста;
- ТЦК та СП;
- статус бронювання або відстрочки;
- дати початку та завершення відстрочки;
- придатність до військової служби;
- дата ВЛК;
- тип військового документа.
Після обробки QR система також встановлює значення Військовий документ = Електронний ВОД.
Повний опис логіки QR-обробки дивіться у статті Розпізнавання QR-коду Reserve+.
Особливості логіки імпорту
Пошук існуючої фізичної особи
Базова логіка розпізнавання документів фізичної особи спочатку шукає вже існуючий запис за:
- РНОКПП
- Датою народження
Якщо особу знайдено, система може оновити наявний запис замість створення нового.
Що відбувається, якщо значення довідника не знайдено
- якщо не знайдено військове звання або підставу зняття з обліку, відповідне поле пропускається;
- якщо не знайдено значення для QR-даних у критичних довідниках, система завершує обробку помилкою і просить спочатку доповнити довідник.
Очищення службових значень
Перед мапінгом система очищає значення від зайвих пробілів. Якщо розпізнане значення містить лише - або —, воно вважається порожнім і не імпортується.
Рекомендації для тестування
Після налаштування аналізатора рекомендується перевірити:
- що з документа стабільно зчитуються
MilitaryRank,DocumentNumber,BocNumber,StatusServiceTitleіQrCode; - що значення
RemovalBasis,tccName,accTypeіvlkTypeмають відповідники у ваших довідниках; - що QR-код дійсно декодується і доповнює військові реквізит и, а не лише OCR-поля.