Документация iSZN

Проверка и исправление значений реквизита «Серия» персональных документов «Паспорт гражданина РФ»

Описание

Серверная операция предназначена для проверки и коррекции значений реквизита «Серия» персонального документа «Паспорт гражданина РФ». Серия паспорта должна быть введена в виде «nn nn» (две цифры, пробел, две цифры).

Пользователь, выполняющий серверную операцию, должен обладать ролью «Системный администратор» или «Главный специалист». Также он должен обладать следующими привилегиями на все экземпляры персональных документов «Паспорт гражданина РФ» (то есть пользователь должен входить в группу (или группы), которая предоставляет ему эти привилегии, и не входить в группу (или группы), которая отзывает у него эти привилегии):

  • Просмотр наличия;
  • Просмотр значений реквизитов.

Если выполняется коррекция значений (для параметра «Выполнять исправление значений реквизитов» установлено значение «Истина»), то дополнительно необходима привилегия «Редактирование документов».

Параметры серверной операции

Наименование Отображаемое наименование Тип данных Обязательный Возможные значения Значение по умолчанию
REGION Обрабатываемый район Значение из справочника Да Районы из справочника иерархии районов.
DO_CORRECTION Выполнять исправление значений реквизитов Логическое значение Да Истина — исправлять некорректные значения реквизитов.
Ложь — не исправлять.
Ложь
IS_ENABLE_ONLY Отрабатывать только по гражданам, состоящим на учёте на текущую дату Логическое значение Да Истина — исправлять некорректные значения реквизитов только для граждан, состоящих на учёте на текущую дату.
Ложь — исправлять некорректные значения реквизитов для всех граждан.
Ложь

Описание алгоритма

  1. В указанном районе выбираются персональные документы «Паспорт гражданина РФ», в которых значение реквизита «Серия» не соответствует шаблону «nn nn».
  2. Для каждого выбранного документа выполняются следующие действия:
    • Из начала и из конца значения реквизита «Серия» удаляются пробелы (если они есть; например, « 12-67 » - «12-67»).
    • Если в полученном значении реквизита первые два и последние два символа не являются цифрами, то значение реквизита не исправляется и в файл протокола выводится соответствующее сообщение.
    • Если в полученном значении реквизита первые два и последние два символа являются цифрами, то определяется разделитель между ними (например, «12-67» - «-»).
    • Если разделитель цифр не является ни одним из « » (пробел), «-» (дефис), «--» (два дефиса), «=» (знак равенства), без разделителя, то значение реквизита не исправляется и в файл протокола выводится соответствующее сообщение.
    • Если разделитель цифр является одним из вышеперечисленных, то формируется исправленное значение реквизита, в котором две группы цифр записываются через пробел (например, «12 67»).
    • Если для параметра «Выполнять исправление значений реквизитов» установлено значение «Истина», то:
      • Выполняется блокировка персонального документа.
      • Выполняется сохранение исправленного значения «Серия» в персональном документе.
      • Снимается блокировка персонального документа.

См. также