Как перейти от КЛАДР к ФИАС и ничего себе не сломать

Чем ФИАС отличается от КЛАДР

Главное отличие между этими двумя системами заключается в том, что КЛАДР – это сугубо ведомственная база данных, а ФИАС – общая для всех министерств, организаций и физлиц адресная система.

В КЛАДР используются формализованные наименования элементов планировочной структуры и элементов улично-дорожной сети. В ФИАС же содержатся официальные наименования всех этих элементов.ФИАС содержит больше информации об объектах адреса

ФИАС содержит больше информации об объектах адресации, адреса в ней стандартизированы, а предоставление сведений конечному пользователю осуществляется в более удобной и детализированной форме.

В отличие от КЛАДР, в ФИАС добавлены такие весьма важные компоненты, как:

  • уникальный фиксированный ID для каждого дома. Данный ID выступает в роли постоянного ключа и позволяет найти объект в любой базе данных и учетной программе;
  • садово-огороднические товарищества, строительно-гаражные кооперативы и промышленные зоны в ФИАС теперь располагаются на отдельных уровнях и не путаются с городами и поселениями;
  • дата начала и окончания действия записи об адресе;
  • состояние дома. Данная запись позволяет понять, в каком состоянии находится дом и требует ли он ремонта.

Для рядовых пользователей учетных программ (приложений) и их разработчиков основное различие между ФИАС и КЛАДР сводится к тому, что файлы первой адресной системы гораздо «тяжелее» файлов второй. Так, если файлы КЛАДР «весят» 300 Мб, то файлы ФИАС занимают уже 9 Гб файлового пространства.

Данное обстоятельство обуславливает следующие моменты:

  • скачивание ФИАС занимает гораздо больше времени;
  • ФИАС предъявляет повышенные требования к используемому программному обеспечению;
  • ФИАС увеличивает нагрузку на учетные программы.

Видео

Автокомплит

В полях «Страна», «Регион», «Район», «Город», «Населенный пункт», «Улица», «Дом» используется комбобокс без стрелки с опцией «Сложный список».

Фокус на пустом поле

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

Поиск

Поиск

Ищем по подстроке:



Ищем и в топонимах, и в их типах. Если есть совп

Ищем и в топонимах, и в их типах. Если есть совпадения и с топонимом и с наименованием типа — приоритет в показе у топонимов:



Не нашли ничего в топонимах, но есть совпадения

Не нашли ничего в топонимах, но есть совпадения с типом — показываем все топонимы введенного типа:



Продолжаем поиск после введенного пробела:

Продолжаем поиск после введенного пробела:



После выбора подставляем значение целиком, если

После выбора подставляем значение целиком, если тип не совпадает с названием поля:

Сложные данные

Сложные данные

Если пользователь начал первым заполнять одно из полей: «Область», «Город», «Населенный пункт» — комбобокс должен искать по всему справочнику, показывая первые 5 из всех найденных результатов.

В списке под результатом поиска показываем содержащие его родительские элементы.



При выборе значения, поля, стоящие в иерархии вы

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

По нажатию Enter фокус получает следующее незаполненное поле.

Автокомплит в поле «Дом, корпус»

Автокомплит в поле «Дом, корпус»

Дом и корпус совмещены в одно поле, и в нем работает комбобокс, который при вводе номера дома, подсказывает какие варианты корпусов или литер есть у вводимого номера на указанной улице. Если на момент заполнения этого поля еще не указаны город и улица, поле работает как обычное поле, без комбобокса.

Кодовые обозначения классификатора

Чтобы использовать КЛАДР адресов, необходимо различать его кодовые обозначения.

Структура из файлов типа Kladr.dbf представлена так: 11 222 333 444 55. Разберем ее:

  • 11 — шифр субъекта РФ;
  • 222 — код района;
  • 333 — городской код;
  • 444 — код иного населенного пункта;
  • 55 — шифр актуальности наименования.

Структура обозначений файлов Street.dbf несколько иная: 11 222 333 444 5555 66. Расшифруем:

  • 11 — шифр субъекта Российской федерации;
  • 222 — код района;
  • 333 — код определенного города;
  • 444 — код иного населенного пункта;
  • 5555 — код необходимой улицы;
  • 66 — шифр актуальности наименования.

Последнее значение (55 и 66) может быть представлено числом от 00 до 99. Притом, актуальное наименование означает только шифровка 00.

Также надо отметить следующие замечательные свойства классификатора:

  • Коды ОКАТО, почтовые индексы, номера инспекций соответствуют элементам адреса в КЛАДР.
  • В отдельных полях классификатора можно увидеть отметки, выделяющие региональные и районные административные центры.

Код КЛАДР > идентификационный код ФИАС


Таблица ADDROBJ хранит все адресные объекты с их идентификаторамиБудем использовать следующие колонки:
  • код КЛАДР (PlainCode);
  • наименование и тип текстом (FormalName и ShortName);
  • актуальность объекта (CurrStatus);
  • почтовый индекс (PostalCode);
  • собственный и родительский идентификатор ФИАС (AoGuid и ParentGuid);
  • уровень (AoLevel).
Москва, ул Александра Солженицына77000000000151900

Шаг 1. Выделяем из кода КЛАДР код до улицы, то есть берем первые 15 цифр: 77000000000151900.

  • Если КЛАДР меньше 15 цифр, берем 11 и дополняем нулями — это код до населённого пункта: 770000000000000;
  • Меньше 11 цифр — берем 8: 77000000000000000;
  • Меньше 8 — берем 5: 77000000000000000;
  • Меньше 5 — берем 2 цифры кода региона: 77000000000000000.

Шаг 2. Ищем код КЛАДР в поле PlainCode. Если нашлась одна запись, то сохраняем значение поля AoGuid и пропускаем следующий пункт. Но по нашему коду 770000000001519 находится три записи, нужна дополнительная проверка. Шаг 3. Находим актуальную запись. Значение поля CurrStatus = 0 означает, что запись актуальна. Выбираем ее и сохраняем значение поля AoGuid. Идентификационный код ФИАС найден!

  • Александра Солженицына, CurrStatus = 2;
  • Коммунистическая Б., CurrStatus = 1;
  • Александра Солженицына, CurrStatus = 0, AuGuid = f77948dc-7bc8-42cb-979e-2c958d162d63.
В качестве бонуса соберем текстовый адрес по найденному AoGuid:

  • берем PostalCode — это почтовый индекс: 109004
  • добавляем ShortName и FormalName: 109004, ул. Александра Солженицына
  • если объект является регионом (поле AoLevel = 1), то адрес готов. Но в нашем случаем AoLevel = 7 — это улица. Поэтому ищем родительский элемент по полю ParentGuid и повторяем предыдущий пункт;
  • для улицы Александра Солженицына родительская запись сразу имеет уровень региона — это Москва. Сохраняем ShortName и FormalName и собираем адрес: 109004, г. Москва, ул. Александра Солженицына

Но можно поступить еще проще и воспользоваться готовым сервисом. умеет подсказывать адреса в конкретных регионах, районах, городах и населенных пунктах. Понимает названия («Петергоф»), коды КЛАДР («7800000800000») и ФИАС («8f238984-812b-4bb1-850b-49749fb5c56d»).

КЛАДР и ФИАС

В 2013 году был совершен переход на новый реестр — Федеральную информационную адресную систему. Построена она по тому же типу, что и КЛАДР. Преимущество ФИАС в том, что здесь используется уникальный идентификатор, который уже не допускает появления неточностей в адресе. Последним же часто грешил КЛАДР.

Но это не единственное досадное его недоразумение.

Но это не единственное досадное его недоразумение. В старом адресном классификаторе был замечен и еще один «баг» — несколько разных адресов, ссылающихся на один объект, оказывались вдруг разными объектами. В ФИАС это тоже исправлено. Для новой системы характерно введение и временных меток, что важно для отслеживания хронологии переименования адресных объектов.

Таким образом, сегодня ФИАС все же предпочитают КЛАДР. Однако старый классификатор по-прежнему актуален, регулярно обновляется и доступен для свободного скачивания. Некоторые особенности его структуры, градации, важные кодовые обозначения и частности, правила работы с КЛАДР вы уже узнали из этой статьи.

Теги

Adblock
detector