Геокодирование и обратное геокодирование в 1С. Управляемое приложение


Обработка на управляемых формах.
Две закладки.
Первая — пример геокодирования.
Вторая — пример обратного геокодирования

Обработка на управляемых формах.

Получает GPS-координаты (широту и долготу) указанного адреса, используя геолокационные сервисы Google Карты. 
Преобразует адрес в координаты, а также координаты в адрес. 

Обработка может быть подключена к любой 1С-конфигурации и выдавать информацию автоматически по команде из конфигурации.

Две закладки:

  • Первая — по строчному адресу — получаем координаты точек (так же можем узнать расстояние между двумя адресами)
  • Вторая — по GPS-координатам получаем адрес (с разбивкой на страну, город, область, район и т.д.)

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

Пример применения и использования кода: 

Магазин часов… Заходит клиент и на рекламной брошюре увидел часы, спрашивает у продавца — есть ли в наличии… Если нет, то продавец оперативно отвечает где ближайший магазин, в котором есть данный товар… Рассчитать расстояние от магазинов, где есть товар и показать ближний… 

А в общем возможностей крутить данный код — множество… 

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


Update 10.07.2026

Убрал потребность в ключе. 
Изменил технологию чтения ХМЛ.
Провел обработку исключений.

20 Comments

  1. Yashazz

    Ух, какая штука! Чем пользуетесь? Каким-то сервисом или всё сами?

    Reply ↓
  2. Fenicss

    Я как понимаю к картам привязки никакой нет?? Откуда берутся координаты (вручную вводим или с устройства)? Чуть чуть бы побольше описания обработки было лучше.

    Reply ↓
  3. mzelensky

    Присоединюсь к (1) и (2) посту — очень интересная штука. Но нигде не написано как именно идет расчет.

    Reply ↓
  4. bforce

    На описание автор поскупился, а могла бы получиться хорошая статья, которая вероятно была бы в топе.

    Reply ↓
  5. revil

    Обработка 1С 8.2.

    Получает GPS-координаты (широту и долготу) указанного адреса, успользуя геолокационные сервисы Яндекс.Карты.

    Преобразует адрес в координаты, а также координаты в адрес.

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

    открывающейся в дополнительном окне.

    Обработка может быть подключена к любой 1С-конфигурации и выдавать информацию автоматически по команде из конфигурации.

    Вопросы и предложения по доработке просьба отправлять на acepost@mail.ru или aceregid.livejournal.com

    Reply ↓
  6. mzelensky

    (5) ты добавь это в описание.

    Reply ↓
  7. revil

    Я не автор 🙂

    Reply ↓
  8. Alexander.Shvets

    Описание подправлю.

    (7) revil, «при перетаскивании метки на карте, открывающейся в дополнительном окне.» Думал реализовать, но ручки не дошли. Доработаем 😉 А если есть желание дорабатывать своими ручками — буду признателен за ссылочку на источник 😉

    (2) Fenicss, Вручную, но ничто не мешает подключить внешние событие и передавать координаты с устройств.

    (3) mzelensky, Расчет расстояния ведется математическим способом с учетом окружности Земли. Можно заставить считать сам сервис, если на то есть желание…

    (1) GoogleMaps API. Такой же подход работает и на остальных подобных сервисах (Яндекс и т.д.)

    (4) bforce, Подправил описание. После модерации — обновится 😉

    Reply ↓
  9. maxlenium

    Обработка интересная. Но складывается впечатление, что мир заново родился. В предыдущие годы было множество схожих разработок по геодированию и отображению карт. Обратное же геокодирование, скорее всего, представлено впервые.

    Reply ↓
  10. Иной

    Собственно интересуют возможности применения. То есть можно ли рассчитать расстояние по маршруту, который будет состоять из точек не линейно (от точки к точке), а с привязкой к дорогам?

    Reply ↓
  11. Alexander.Shvets

    (10) Иной, Возможности — на сколько хватит фантазии… =) Обработка предназначена для программиста 1С, так как за готовое решение конкретных задач берется денюжка =)))

    Пример применения и использования кода:

    Магазин часов… Заходит клиент и на рекламной брошуре увидел часы, спрашивает у продавца — есть ли в наличии… Если нет, то продавец оперативно отвечает где ближайший магазин, в котором есть данный товар… Расчитать расстояние от магазинов где есть товар и показать ближний…

    А в общем возможностей крутить данный код — множество…

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

    На счет маршрутов — возможность такая есть. Постараюсь добавить в следующем релизе обработки. Правда за оперативность не отвечаю. =)))

    Reply ↓
  12. CagoBHuK
  13. Иной

    (12) CagoBHuK, Ну почему же так сразу, человек же даёт свое решение, можно сказать, открыто. А не продаёт за денюжку =), если я правильно понял.

    Это просто инструментарий для разработчика.

    Reply ↓
  14. Yashazz

    (8) Тю-ю… Чужим сервисом пользоваться для геокодирования — это уж баян. Полезный, нужный, но баян…

    Reply ↓
  15. Alexander.Shvets

    (14) Ну, перед такой жесткой критикой — открываем код и смотрим на методы… =)

    Конечно суть задачи — действительно дело давнее… Но вот реализация задач никогда не стоят на месте. =)

    Все таки сам искал что-то подобное, маленькое и оптимизированное… Но находил обработины, которые по стопятсот раз отправляли запросы/синхронизировались/забивали временную папку не нужным хламом… У меня кроме оперативы не юзается больше ничего… Никаких длл… Единственное что надо — доступ в инет…

    Может кому и пригодиться 😉

    Reply ↓
  16. Yashazz

    (15) Дык я ж не в упрёк, а скорее от расстройства. Вот скажите, как вы решали вопрос множественного геокодирования — у Гугла есть единая функция, возвращающая результаты при обычном синхронном вызове, или вам пришлось постараться это сделать? Я недавно решал такую задачу для Яндекс API, там пришлось извращаться, с тех пор ищу, может, есть более красивое решение.

    Reply ↓
  17. Annjko

    Ребята, подскажите пожалуйста — ключ гугла не рабочий — где б взять?

    Reply ↓
  18. irtk

    {Форма.Форма.Форма(295)}: Object field not found (Улица)

    Улица = СтруктураЗаполнения.Улица;

    что же делать?

    Reply ↓
  19. Alexander.Shvets

    (18) irtk, К сожалению, используемый в обработке гугл-ключ не активный. Для работы — его нужно получить на сайте Гугла. Обновлю и добавлю поле ввода в обработке для ключа

    Reply ↓
  20. Alexander.Shvets

    (18) irtk, После проверки модератором — скачайте обработку. теперь работает без ключа

    Reply ↓

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *