Skip to main content

Person Document Recognition — Electronic Military Registration Document

Overview

The Person Document Recognition feature supports importing data from the Electronic Military Registration Document (eVOD). In this scenario, the system uses Azure Content Understanding to recognize document fields and then additionally processes the embedded QR code when it is present in the analyzer result.

For the general Azure setup and the base recognition flow, see Person Document Recognition.

How eVOD import works

After the user uploads the document, the system runs two sequential stages:

  1. OCR recognition through Azure Content Understanding to extract visible document fields.
  2. Embedded QR processing when the analyzer returns the QrCode field.

This approach combines:

  • the fields printed directly on the document;
  • the military data available only inside the QR payload.

Prerequisites

This scenario requires:

  • configured Azure Content Understanding;
  • an eVOD analyzer created in Azure AI Foundry;
  • analyzer assignment through the scenario or the person document type;
  • populated master data used for value mapping.

Pay special attention to these directories and code tables:

  • Personal Information Codes with group Military Rank;
  • SMA Military Dismissal Reason;
  • Personal Information Codes with group Militaty Duty Relation;
  • General Directory with type Military Office;
  • General Directory with type SMA Military Service Fitness.

If a required value is missing, some fields are skipped or the military-data update from QR stops with an error.

Configuring the analyzer for eVOD

Analyzer creation, model build, Business Central synchronization, and scenario assignment are already described in the base article Person Document Recognition. For eVOD, use a dedicated analyzer or a dedicated document type and add the eVOD-specific fields from the schema below.

Field names must match exactly.

Field NamePurposeHow it is used
LastNameLast nameUsed by the base person document recognition logic
FirstNameFirst nameUsed by the base person document recognition logic
MiddleNameMiddle name / patronymicUsed by the base person document recognition logic
BirthDateBirth dateUsed by the base person document recognition logic
ExpirationDateDocument expiration dateUsed when saving the person document record
PersonalNumberTax ID / RNOKPPUsed by the base person document recognition logic
DocumentNumberDocument number / registry numberImported into military data on the person card
MilitaryRankMilitary rankImported into the person card
BocNumberMilitary speciality numberImported into the person card
RemovalBasisBasis for deregistrationImported into the person card
StatusServiceTitleCurrent military registration statusImported into the person card
DisabilityGroupDisability groupImported into medical information
DisabilityValidUntilDateDisability valid until dateImported into medical information
DisabilityReasonDisability reasonImported into medical information
ResidenceAddressRegistered residence addressImported into alternative address
PhoneNumberPhone numberImported into the person card
EmailEmail addressImported into the person card
QrCodeEmbedded QR codeDecoded separately to import military data

The analyzer schema file may contain additional fields. The documentation below only covers the mappings that are currently implemented in application code.

What is imported from OCR and how it is processed

After the base document-recognition flow creates or updates the person, the system applies eVOD-specific fields.

Analyzer fieldImported toProcessing logic
MilitaryRankPerson.Military RankLooked up in Personal Information Codes with group Military Rank using partial matching
DocumentNumberPerson.Military Registration No.Direct value copy
BocNumberPerson.Military Speciality No.Direct value copy
PhoneNumberPerson.Mobile Phone No.Direct value copy
EmailPerson.E-MailConverted to lowercase before saving
RemovalBasisPerson.Military Dismissal Reason CodeLooked up in SMA Military Dismissal Reason by exact, then partial description match
StatusServiceTitlePerson.Other Service StatusConverted to the matching enum value
DisabilityGroupPerson Medical InfoCreates or reuses a Disability entry
DisabilityValidUntilDatePerson Medical Info.Ending DateSaved as disability validity date
DisabilityReasonPerson Medical Info.Document DetailsSaved as document details
ResidenceAddressPerson Alternative AddressCreates a Registration address with code EVOD if one does not already exist

StatusServiceTitle mapping

The StatusServiceTitle field is mapped by keyword:

  • уточненняNeeds clarification
  • розшукWanted
  • порушенViolation of military registration rules
  • не знайденоData not found in the registry
  • бзвп or підготовкиRequires passing the BMT

If no keyword is recognized, Other Service Status remains blank.

Disability import

When DisabilityGroup is present, the system:

  1. resolves the disability group 1, 2, or 3;
  2. reads DisabilityReason and DisabilityValidUntilDate;
  3. creates a Person Medical Info entry of type Disability if an identical entry does not already exist.

If the validity date is already in the past, that date is also used as Starting Date. Otherwise, the current date is used.

Residence address import

When ResidenceAddress is recognized, the system creates a Person Alternative Address record with:

  • Address Type = Registration
  • Code = EVOD
  • Valid from Date = current date

The address is only inserted if the person does not already have a registration-type alternative address.

What is imported from the embedded QR code

If the analyzer returns the QrCode field, the system decodes it and applies the same business logic as the standalone Reserve+ QR feature.

The QR payload can import:

  • military status;
  • military duty relation;
  • reservist flag;
  • military registration office;
  • reservation or deferral status;
  • deferral start and end dates;
  • military service fitness;
  • military medical commission date;
  • military document type.

After QR processing, the system also sets Military Document = SMA Electronic Military Registration Document.

For the full QR processing logic, see Reserve+ QR Recognition.

Import logic details

Existing person lookup

The base person document recognition flow first looks for an existing person by:

  1. Tax ID / RNOKPP
  2. Birth Date

If a matching person is found, the system can update the existing record instead of creating a new one.

What happens when a directory value is missing

  • if military rank or dismissal reason is not found, that field is skipped;
  • if a required QR value cannot be matched in critical directories, the process stops with an error and the directory must be completed first.

Cleanup of placeholder values

Before mapping, the system trims extra spaces. If the recognized value is only - or , it is treated as empty and not imported.

Testing recommendations

After the analyzer is configured, verify that:

  1. MilitaryRank, DocumentNumber, BocNumber, StatusServiceTitle, and QrCode are extracted consistently;
  2. RemovalBasis, tccName, accType, and vlkType have valid matches in your master data;
  3. the QR code is successfully decoded and enriches the military data beyond the OCR-only fields.
© 2008 - 2026 SMART business