Руководство по установке#

Получение выписки по ОКС из ЕГРН - это электронное информационное взаимодействие с ЕГРН (Росреестр) в части импорта выписок из ЕГРН и синхронизации БД.

Примечание

Данные каталога «Сведения ЕГРН» вносятся в Систему только путем импорта сведений, полученных из Росреестра, и недоступны для изменения вручную.

В Систему можно загрузить следующий перечень xml-схем, используемых для формирования xml-документа.

В процессе импорта каждый объект из xml-файла сопоставляется с объектами в Системе.

Важно

Импорт сведений ЕГРН могут выполнять пользователи, которым назначена роль ias:gkn:importer (см. pravadostupa).

../../../_images/role.png

В результате сопоставления в Системе происхоит:

  • создание новых объектов;

  • обновление существующих объектов (обновляется координатное описание и значения атрибутов);

  • перевод объектов в архив.

../../../_images/egrn_proccess.png

Импорт геометрии объектов#

В БД хранятся следующие типы геометрии:

  • [multi]point

  • [multi]linestring

  • [multi]polygon

  • Объект-коллекция

Сохраняемая в БД геометрия должна быть корректной. Это можно проверить с помощью функции is_valid: проверка возвращает true и отсутствуют дублирующиеся точки и полигоны. Объект-коллекция для одного объекта в БД имеет более одного описания геометрии.

Алгоритм преобразования геометрии из xml в GeoJson#

Для преобразования геометрии из формата xml в формат GeoJson Система выполняет следующий сценарий:

  1. Извлекается геометрия объекта из xml-файла

  2. Обрабатываются контуры

Если геометрия в xml-файле представлена в виде отдельных контуров contour, то результатом разбора геометрии всегда будет мультиполигон.

2.1. Выделяются элементы контура и определяются типы геометрии для каждого элемента:

  • point - имеет одну координату в элементе;

  • linestring - имеет две и более координат, где первая и последняя не совпадают;

  • polygon - имеет три и более координат, где первая и последняя совпадают.

    • 2.1.1. Для типов linestring и polygon удаляются повторяющиеся точки.

    • 2.1.2. Для типа polygon удаляются дубли контуров.

    • 2.1.3. Если после выполнения шага 2.1.1. для linestring осталось одна точка, элемент сохраняется как point.

    • 2.1.4. Если после выполнения шага 2.1.1. для polygon осталось две точки, элемент сохраняется как linestring, а если одна точка, то элемент сохраняется как point.

2.2. Однотипные элементы объединяются в [multi]типы.

2.3. Если на шаге 2.2. получены разные типы геометрии, то геометрия преобразовывается в коллекцию.

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

  2. Результат сохраняется в GeoJson, с последующей записью в БД.

Варианты преобразования геометрии

  • Ро - один полигон с вырезанным внутренним контуром;

  • Р - полигон;

  • GC - коллекция;

  • МР - мультиполигон;

  • L - полилиния;

  • ML - мультилиния

Изменение количества одновременных заданий на импорт#

Количество одновременных заданий на импорт данных ЕГРН в журнале импорта можно изменить.

Для изменения в СУБД перейдите к схеме regadm и откройте таблицу m_global_settings.

В строке со значением столбца setting_type равным 16 измените значение столбца value на {«MaxAsyncImportTasks»: N}, где N - это необходимое количество одновременно выполняемых заданий.

Если такая строка отсутствует в таблице, то количество заданий равно 4.

Для изменения количества одновременных заданий на импорт данных ЕГРН добавьте строку {«MaxAsyncImportTasks»: N} в таблицу m_global_settings и задайте нужное значение.

../../../_images/bd.png

Если количество выполняемых заданий уже равно максимальному, а пользователь начинает импорт, то задание попадает в очередь.

Важно

Для вступления в силу внесенных изменений в таблице m_global_settings, перезапустите сервис службы импорта ЕГРН.

Задания в очереди будут выполняться по мере завершения действующих заданий в том порядке, в котором они попали в очередь.

../../../_images/module.png

В какой системе координат загружаются данные#

По умолчанию, при загрузке данных ЕГРН, система координат не определяется. Данным ЕГРН, которые загружаются в Систему, устанавливается проектная СК. Поэтому, если данные ЕГРН получены в СК отличной от проектной СК, то перед загрузкой в Систему нужно их преобразовать.

Автоматически определить и преобразовать систему координат данных, полученных из ЕГРН, в СК проекта позволяет дополнительный модуль Автоматическое определение системы координат при импорте ЕГРН

Удаление временных файлов с сервера#

Раз в 24 часа запускается проверка временных файлов и удаление ненужных. Удаляются целиком папки, если файлы в них не изменялись больше 5 дней и в данный момент нет запущенных задач на импорт, которые соответствуют удаляемой папке. Наименование папки соответствует наименованию задачи импорта.

Файлы конфигурации#

В Систему можно загрузить следующий перечень xml-схем, используемых для формирования xml-документа.

Система использует в процессе импорта данных файлы конфигурации, в которых указано сопоставление между поступающим на вход импорта XML-файлом и объектами системы.

Для каждого типа сведений используется свой файл конфигурации. В файле конфигурации с помощью тегов и атрибутов описано как следует импортировать те или иные сведения в систему.

Пример части структуры файла конфигурации:

<?xml version="1.0" encoding="utf-8"?>
<UpdaterConfig>
  <Scheme Name="extract_about_property_land">
        <Type Alias="GknParcel" MainTableType="parcel">
            <Field Name="KN" Expression="{cadNum}" IsLink="True" TableType="parcel"/>
            <Field Name="CadastralBlocks" Expression="{cadblock}" IsRef="True" RefAliasName="GknCadastralBlocks"
                   RefTableField="Number" RefTableKeyField="KeyField" TableType="parcel"/>
            <Field Name="RegDate" Expression="{registrationdate}" TableType="parcel"/>
            <Field Name="CancelDate" Expression="{canceldate}" TableType="parcel"/>
            <Field Name="RegDateByDoc" Expression="{regdatebydoc}" TableType="parcel"/>
            <Field Name="ParcelUseKind" Expression="{usekind}" IsRef="True" IsDictionary="True"
                   RefAliasName="GknRefParcelUseKind" RefTableField="Code" RefTableKeyField="KeyField" NeedCreate="true"
                   RefFieldsName="usekind" TableType="parcel"/>
     </Type>
    </Scheme>
  </UpdaterConfig>

Атрибуты внутри тегов могут описывать какие-либо сведения об объекте или обозначать те или иные флаги.

Для управления обновлением или пересозданием объектов используются два флага — TakeExistingMMR и DeleteOldObject.

Атрибут TakeExistingMMR указывает, что к полям текущего объекта будут добавлены новые связанные объекты. Наличие атрибута со значением True означает, что существующий связанный объект необходимо обновить. Отсутствие атрибута говорит о том, что нет необходимости менять связанный объект.

Атрибут DeleteOldObject указывает, следует ли удалять старые объекты и связанные с ними внутренние объекты. Наличие атрибута со значением True означает, что существующий связанный объект и всего его внутренние связи и объекты необходимо удалить. Отсутствие атрибута говорит о том, что нет необходимости удалять связанные объект и его внутренние связи и объекты.

Примечание

При наличии двух атрибутов, атрибут TakeExistingMMR преобладающий.

В таблице ниже описаны все комбинации зависимости входных данных и атрибутов и то, что происходит в том или ином случае.

Значение атрибута TakeExistingMMR

Значение атрибута DeleteOldObject

Наличие данных в импортируемом XML-файле

Описание происходящего

Присутствует и установлен в True

Присутствует и установлен в True

Да

Обновляются поля текущего объекта, связь со связанным объектом не разрывается. Созданные связанные объекты добавляются в соответствующие поля объекта, дополняя уже существующие

Присутствует и установлен в True

Присутствует и установлен в True

Нет

Ничего не обновляется, связь с связанным объектом не разрывается

Присутствует и установлен в True

Присутствует и установлен в False или отсутствует полностью

Да

Обновляются поля текущего объекта, связь со связанным объектом не разрывается. Созданные связанные объекты добавляются в соответствующие поля объекта, дополняя уже существующие

Присутствует и установлен в True

Присутствует и установлен в False или отсутствует полностью

Нет

Ничего не обновляется, связь с связанным объектом не разрывается

Присутствует и установлен в False или отсутствует полностью

Присутствует и установлен в True

Да

Связь с связанным объектом разрывается, связанный объект удаляется, создаётся новый и привязывается к основному объекту. Если у объекта, в котором установлен атрибут, есть связанные вложенные объекты, они также будут удалены и созданы новые

Присутствует и установлен в False или отсутствует полностью

Присутствует и установлен в True

Нет

Связь с связанным объектом разрывается, связанный объект удаляется. Если у связанного объекта, в котором установлен атрибут, есть связанные вложенные объекты, они также будут удалены

Присутствует и установлен в False или отсутствует полностью

Присутствует и установлен в False или отсутствует полностью

Да

Связь со связанным объектом разрывается, создаётся новый связанный объект и связывается с объектом

Присутствует и установлен в False или отсутствует полностью

Присутствует и установлен в False или отсутствует полностью

Нет

Связь со связанным объектом разрывается, все вложенные объекты и связи между ними будут сохранены