Ввод адреса с подсказкой и разбиением по структуре КЛАДР (dadata.ru)

Опубликовал Михаил Немчинов (mnemchinov) в раздел Обработки - Универсальные обработки

Демонстрация использования подсказки адреса при вводе с помощью сервиса dadata.ru и разбор результата по структуре КЛАДР

Катализатором написания обработки послужили две вещи: во первых, необходимость прикручивания КЛАДРа в самописную конфу, во вторых, публикация Работаем с сервисом подсказок на формах: dadata.ru
Прикручивать КЛАДР по БСП  достаточно затруднительно, жалко базу, да и нет такой уж жесткой необходимости.
Обработка не является панацеей от КЛАДРа, но может послужить базисом для написания более сложного механизма.

Принцип действия заключается в отправке REST запроса вводимого в реквизит Адрес текста на сервис https://dadata.ru/ и разбора ответа от него. 
Перед использованием необходимо получить Token на сайте https://dadata.ru/api/

Скачать файлы

Наименование Файл Версия Размер
ВводАдреса
.epf 9,75Kb
26.06.15
165
.epf 9,75Kb 165 Скачать

См. также

Комментарии
1. Сергей (seermak) 656 15.07.14 06:07 Сейчас в теме
Появился новый бесплатный ресурс http://fias.nalog.ru/Public/SearchPage.aspx?Division=2 Вот если его прикрутить к 1С было бы куда интереснее
2. Михаил Немчинов (mnemchinov) 84 15.07.14 09:13 Сейчас в теме
(1) seermak, Не понимаю чем он интереснее... Во первых, ФИАС на данный момент еще сырой и неудобоваримый продукт (загружать и обрабатывать xml в 1,5 Гига то еще удовольствие + в самих данных ФИАС пока есть ошибки). Во вторых, в dadata до 10000 запросов в сутки бесплатно - для бухгалтера или даже расчетчика среднего предприятия более чем достаточно. Ну и в третьих, задача ввода адреса по структуре удобным для пользователя способом и без написания сложного механизма (для программиста) - решена.
olegovich; +1 Ответить
3. Сергей (seermak) 656 16.07.14 06:40 Сейчас в теме
(1) 1.О скачивании данных с сайта разговору не было (проверка производится Online) 2. ресурс государственный и бесплатный 3. 10000 / 3 = 3333(букв) всего обращений к ресурсу при вводе адреса - улетают мухой при работе. 4.Посмотрите, как реализован ресурс поиска адресов по яндекс-картам(здесь где-то на сайте есть обработка). В остальном согласен
4. Михаил Немчинов (mnemchinov) 84 16.07.14 09:08 Сейчас в теме
(3) seermak, Посмотрел обработки по работе с Яндекс картами - везде поиск идет по api. На сколько мне известно, фиас предназначен для скачивания и не имеет api (могу ошибаться, поправьте если не прав). Возможно есть варианты с использованием ПолеHTMLДокумента, но получится полный изврат, учитывая, что это онлайн подсказка.
Есть еще бесплатный ресурс для адресов: kladr-api.ru, но там возврат идет в json. Обещали сделать xml, но когда не известно. Вот если прикрутить его, то было бы совсем интересно.
Пока вполне удовлетворяет предложенная реализация.
olegovich; +1 Ответить
5. Михаил Немчинов (mnemchinov) 84 16.07.14 09:19 Сейчас в теме
(3) seermak, >...3. 10000 / 3 = 3333(букв) всего обращений к ресурсу...
А почему именно на "3"? :)
6. Сергей (seermak) 656 16.07.14 10:22 Сейчас в теме
потому что обращение в ресурсу в процедуре автоподбор начинается после ввода 3 символа. Я смотрел реализацию в ФИАС = одни POST- запросы. Кладр-облако обращается: "Сервис предоставляет он-лайн интерфейс к базе адресов Российской Федерации(«ФИАС»)". Просто интересно - все равно все скатывается к ФИАС (включая разговоры об уходе от КЛАДРа).Я в своей конфигурации организовал поиск места рождения по яндекс картам - переставить полученную строку в "правильном" формате КЛАДРа труда не составляет(в общих модулях КонтактнаяИнформация и УправлениеконтактнойИнформацией есть все необходимые процедуры для преобразования строки в структуру хранения КИ. "Возможно есть варианты с использованием ПолеHTMLДокумента" - надо использовать не ПолеHTMLДокумента, а HTTP-запросы.... Получить адрес без привязки к КЛАДРу но в его формате это ведь здорово (а не таскать в базе более 4 млн адресных записей - бухи любят загружать весь КЛАДР на всякий случай). Ваш вариант - тоже вариант(не нравится только одно - частный ресурс и платность)
7. Михаил Немчинов (mnemchinov) 84 16.07.14 11:01 Сейчас в теме
(6) seermak, На счет платного и частного ресурса полностью поддерживаю. Идея с пост запросами в фиас понятна - надо будет как-нибудь попробовать, пока нет времени. Идея с Яндекс картами тоже интересна и понятна. У нас на Облако МФО крутится уже около 30 баз на сервере (каждые два дня прирост +1 база в среднем), вводят адреса каждый день, пока укладываемся в бесплатные 10000, но скоро видимо будем превышать этот суточный лимит. Тогда придется реализовывать данные идеи. Как сделаю что-нибудь - выложу на инфостарт.
8. Михаил Немчинов (mnemchinov) 84 16.07.14 11:03 Сейчас в теме
(6) seermak, Так и не понял про "3". Ведь вроде экономим три символа, а вы делите....
9. Елена Журавлева (lyalius) 16.07.14 15:13 Сейчас в теме
(7) mnemchinov, неужели цена 2800 рублей в год за платную версию dadata.ru (24*7, неограниченное кол-во запросов) так останавливает? если пересчитать на ваши часы, вы же больше потратите на собственный сервис.
10. Елена Журавлева (lyalius) 16.07.14 15:15 Сейчас в теме
(7) mnemchinov, кстати определение геокоординат по яндекс картам будет в дадате к осени.
11. Михаил Немчинов (mnemchinov) 84 17.07.14 09:49 Сейчас в теме
(9) lyalius, Дело вовсе не в жалко :) Не в качестве рекламы, сервис отличный - ребята постарались, молодцы. Цены, в принципе, тоже адекватные. Но когда есть бесплатная альтернатива и делаешь "для себя" вопрос переходит в статус принципа + спортивный интерес. Это по поводу платности. А по поводу "частный", то здесь всё просто: нет гарантий, что завтра владельцы сервиса не прекратят поддержку или не взвинтят цены или что-то еще по каким-либо субъективным причинам. Нет договоренности - нет ответственности. И тогда переделывать всю концепцию... нет уж, увольте. Только поймите меня правильно - я говорю о рисках, а не называю разработчиков/владельцев сервиса безответственными.
olegovich; +1 Ответить
12. Сергей (seermak) 656 18.07.14 11:55 Сейчас в теме
(7) и мне стукните в личку - эта тема инткресна для меня
13. Елена Журавлева (lyalius) 19.08.14 09:32 Сейчас в теме
Дали на вас ссылку на dadata.ru, как на рекомендуемую интеграцию с 1С. Поздравляем :)
mnemchinov; +1 Ответить
14. Елена Журавлева (lyalius) 10.09.14 13:46 Сейчас в теме
(6) seermak, а мне вариант с частным ресурсом и платностью больше нравится. Есть кому поддерживать сервис и понятно, на какие деньги.
mnemchinov; +1 Ответить 1
15. Сергей (seermak) 656 10.09.14 18:42 Сейчас в теме
(14) вот альтернатива = http://kladr-api.ru/ причем я уже сделал обработку и для 8.2 и 8.3
16. Елена Журавлева (lyalius) 15.09.14 12:59 Сейчас в теме
(15) seermak, да, альтернатива :)

Мы от них отличаемся тем, что делаем скрипты для проверки всех компонентов форм (адреса, ФИО и компаний), не только для адресов. Плюс еще возвращаем всякие приятные плюшки типа стоимостей квартир и в ближайшем будущем - метро и геокоординат :)

А так да, каждый выбирает то, что ему ближе. Kladr-api бесплатен для некоммерческого использования, для коммерческого у них тарифы больше, чем у нас.
17. Елена Журавлева (lyalius) 17.09.14 17:11 Сейчас в теме
(15) seermak, mnemchinov, кстати посмотрите у нас ввод юрлиц еще появился :) Пара интернет-магазинов уже подключила, прикольно выглядит — вводят первую букву компании, а сервис находит полное название, ИНН, ОГРН и юридический адрес.
18. Михаил Немчинов (mnemchinov) 84 17.09.14 15:30 Сейчас в теме
(17) lyalius, Интересно... Надо подумать куда прикрутить к нашему сервису...
19. reznic Резник (reznic) 91 23.11.14 09:55 Сейчас в теме
(7) mnemchinov, типа ресурс свой пропиарили, только я не понимаю дураков которые доверяют свои учетные данные онлайн сервисам, получить адрес это одно а доверить учетные данные хрена пойми кому это другое
20. Елена Журавлева (lyalius) 26.11.14 23:47 Сейчас в теме
(19) reznic, вы доверяете данные hflabs.ru (разработчик dadata.ru), мы уже 9 лет на рынке работаем с клиентскими данными. Вот список наших клиентов: http://hflabs.ru/clients-partners/.
21. reznic Резник (reznic) 91 30.11.14 16:37 Сейчас в теме
22. Елена Журавлева (lyalius) 02.12.14 17:24 Сейчас в теме
(21) reznic, я руководитель hflabs.ru и проекта dadata.ru
23. reznic Резник (reznic) 91 02.12.14 22:59 Сейчас в теме
Ну та если Вы заметили о дадата я ничего плохого не сказал, и мы им даже пользуемся

Я против хранения учетных, персональных и прочих данных в облоках
24. Елена Журавлева (lyalius) 03.12.14 19:29 Сейчас в теме
(23) reznic, спасибо :) По поводу учетных данных — в том-то и дело, что мы их не храним :) Если у нас обрабатывают файлы, мы их удаляем в течение 2 часов. А запросы через API не сохраняются.
mnemchinov; +1 Ответить
25. reznic Резник (reznic) 91 03.12.14 23:54 Сейчас в теме
Да речь не о Вас была а о скрытой рекламе облака мфо из 7 поста

Обезличенные адреса меня не интересуют а другого мы через Вас не гоняет :)

Раз говорите что удаляете то пусть так оно и будет :)
26. Олег Медведев (olgerd666) 25 21.02.17 09:32 Сейчас в теме
	
	HTTPЗапрос = Новый HTTPЗапрос();
	HTTPЗапрос.АдресРесурса = "/api/4_1/rs/suggest/address";
	
	HTTPЗапрос.Заголовки.Вставить("Content-Type", "application/xml");
	HTTPЗапрос.Заголовки.Вставить("Accept", "application/xml");
	HTTPЗапрос.Заголовки.Вставить("Authorization", "Token "+Token); 
	HTTPЗапрос.УстановитьТелоИзСтроки("<req><query>" + Текст + "</query></req>"); 
	
	Соединение = Новый HTTPСоединение("suggestions.dadata.ru/suggestions",,,,,, Новый ЗащищенноеСоединениеOpenSSL);
	
	ОтветHTTP = Соединение.ОтправитьДляОбработки(HTTPЗапрос);
...Показать Скрыть

изменился API dadata
Оставьте свое сообщение