Каталог решений - Пример получения адреса координат точки клика по карте, используя Яндекс.Карты и дальнейшего получения адреса строкой через сервис Dadata.ru

Пример получения адреса координат точки клика по карте, используя Яндекс.Карты и дальнейшего получения адреса строкой через сервис Dadata.ru

Пример получения адреса координат точки клика по карте, используя Яндекс.Карты и дальнейшего получения адреса строкой через сервис Dadata.ru

В наличии

Обратное геокодирование через dadata.ru, используя ЯндексКарты. Пример того, как можно, используя Яндекс, получить адрес строкой, используя не сервис Яндекса

Категория:

Описание

Добрый день
Идея не нова  — получить адрес в строку, ткнув на Я.Карте мышкой.

Реализация:

  • на форме лежит поле Html документа
  • пользователь видит Я.Карту
  • тыкает по интересующему объекту на карте мышкой. Ставится точка на карте, куда пользователь ткнул
  • со стороны 1С перехватываются координаты
  • дальше эти координаты отправляются на сервис dadata.ru — обратное геокодирование (API  https://dadata.ru/api/geolocate/ )

В результате пользователю показывается или полученный адрес, или координаты (если сервис не смог найти адрес)

Если пользователь согласен с тем, что предлагается, то нажимает Да — и при закрытии формы передаются все параметры, которые возвращается dadata.ru  (параметров много. Все на скриншоте не влезли)

Почему так?
На сейчас API яндекса стоит — 174000 год
А у dadata.ru максимальный тариф — 44000 год
(https://dadata.ru/pricing/)
Дата цен 26,08,2028 !

Да-да… у Яндекса методов в API на порядок больше, но и надо то — обратное геокодирование  …

В коде реализованы методы

  • инициализация карты с автоматическим центрированием карты по нескольким городам (цель: сотруднику из Краснодара гораздо приятнее, если карта при открытии будет позиционироваться на центре Краснодара, а не Москвы. Для нашей компании — регион определятся по фактическому трудоустройству сотрудника)
  • функция создания события нажатия на точку на карте (со стороны макета-карты)
  • функция отрисовки точки на карте в месте клика  (со стороны макета-карты)
  • функция стирания предыдущих кликов  (со стороны макета-карты)
  • позиционирования в любой точке по координатам (+масштаб выставляемого центра)  (со стороны макета-карты)
  • событие ловли клика по карте (со стороны 1С)
  • событие получение адреса строки через координаты от Яндекса по API dadata.ru (со стороны 1С)

Код открытый
В макете используются 3 ключа!!!

  • Ключ1 — яндекса. Самим Яндексом используется только для инициализации карты. Поэтому он в макете забит как 123456-78 и тд.
  • Ключ2 — dadata.ru — Token   — получить можно после регистрации в ЛК сайта. 
  • Ключ3 — dadata.ru — SecretKey  — получить можно после регистрации в ЛК сайта. 

 

Все ..
Спасибо
Всем приятного дня

 

П.С.

Тестировалось на УНФ 1.6

К конфигурации не привязано, работает через Файл — Открыть

Работать будет на любой конфигурации

has been added to your cart:
Оформление заказа