Посоветуйте рассылку друзьям и знакомым. Для этого просто перешлите это письмо. Подписаться на рассылку можно на сайте или письмом.
Здравствуйте, уважаемые читатели!
Сообщу Вам приятную новость, что рассылку перевели в категорию "Серебряные", и намомент написания выпуска количество подписчиков составило почти 800 человек. На сайте рассылки появляются новые ссылки, статьи и разработки, поэтому не забывайте периодически его посещать.
Итак, для написания обработки для работы с файлами kladr.dbf и street.dbf предложу следующий алгоритм. Для быстрого поиска данных в файлах, их нужно проиндексировать. Для kladr.dbf сделаем 4 индексных поля, назовем их Регионы, Районы, Города, ПоКоду. Каждому из них будет соответствовать следующее правило индексации: Регионы - индексирование по полю "Name" с условием, что правые 9 символов равны "000000000". Это означает, что будут проиндексированы только регионы; Районы -
индексирование по полю "Code" с условием, что правые 6 символов равны "000000". Будут проиндексированы районы; Города - индексирование по полю "Code" с условием, что правые 3 символа равны "000". Индексируются города; ПоКоду - индексирование по полю "Code". Полное индексирование по коду. Для street.dbf достаточно одного индекса: ПоКоду - индексирование по полю "Code" - полная индексация по коду.
Далее нужно настроить работу с диалогом формы. Нужно сделать две закладки: на первую поместить строковые поля ввода с кнопками выбора "Регион, Район, и т.д.", а на вторую - таблицу значений. Порядок работы таков: пользователь начинает выбирать адрес, начиная с региона. Обрабатывая событие ПриНачалеВыбораЗначения(), устанавливаем индекс "Регионы" и делаем выборку из kladr.dbf в таблицу значений. Таблица значений будет содержать регионы, и при выборе одного из них устанавливаем
индекс "Районы", очищаем таблицу значений и снова делаем в нее и так далее.
Важно: позиционирование на записи файла dbf не теряется при смене индекса.
Я описал самые значимые моменты алгоритма работы с файлами классификатора адресов. Саму обработку можно скачать на сайте в разделе Скачать. В архиве есть описание, какие настройки нужно сделать для правильной работы. Код обработки открыт для полного доступа, так что Вы сами сможете посмотреть реализацию алгоритма и попробовать обработку в действии.