gifts2017

Маршруты в GoogleMaps для типовых конфигураций

Опубликовал Алексей Харламов (RocKeR_13) в раздел Обработки - Универсальные обработки

Данное решение позволяет проложить маршрут, используя GoogleMaps API без внесения изменений в конфигурацию

"Данное решение встраивается в типовую конфигурацию на управляемых формах в качестве дополнительной печатной формы (наличие БСП, а также хранение КИ в табличной части "КонтактнаяИнформация" объекта). Назначение обработки определяется автоматически: выбираются все документы, содержащие реквизиты "Контрагент" и "Организация". После этого среди дополнительных печатных форм документов вы сможете найти команду "Проложить маршрут". Маршрут прокладывается от фактического адреса организации до фактического адреса контрагента, указанных в документе. Помимо всего прочего выводится информация о маршруте (промежуточных точках, длине маршруте и времени пребывания в пути).

Как это работает?

Работа ведется с API от GoogleMaps. Маршрут выводится на форму в поле HTML-документа, описание которого находится в макете обработки. Помимо прокладки маршрута можно также ставить/убирать вспомогательные отметки на карте.

Обновление от 22 августа 2014 г.

- исправлена проблема с формированием маршрута при открытии;
- добавлена кнопка "Открыть в браузере" для просмотра маршрутов на сайте GoogleMaps;
- добавлена возможность выбора способов перемещения;
- доработано дерево информации о маршруте;
- добавлена возможность сохранения маршрута в текстовом виде с координатами промежуточных точек.



Обновление от 26 августа 2014 г.

В архиве к публикации вы теперь можете найти 2 обработки. "GoogleMapsExtPrint" - интегрируется как внешняя печатная форма, ее описание приводилось выше; "GoogleMapsService" - добавляется в качестве внешней обработки, ее можно вызвать из меню "Сервис-Дополнительные обработки", открывается с пустой (без маршрутов) картой для дальнейшей прокладки маршрутов. Начальное центрирование (г. Москва) вы можете изменить в обработчике "ПриСозданииНаСервере" (строка 18 основной формы обработки).

Обновление от 14 июля 2016 г.

Исправлена проблема с выполнением скриптов. Для исправления ошибки необходимо в макетах (на вкладке "Текст") обработок "
gm_GoogleMaps" строку 15

<SCRIPT type=text/javascript src="http://maps.googleapis.com/maps/api/js?&amp; key= ТутВашКлюч"></SCRIPT>

изменить на

<SCRIPT type=text/javascript src="http://maps.googleapis.com/maps/api/js?v=3.22&amp;key= ТутВашКлюч "></SCRIPT>

Вместо "ТутВашКлюч" по умолчанию стоит мой ключ разработчика с ограничениями на количество запросов в день. Для получения собственного ключа вам необходимо перейти по ссылке: https://developers.google.com/maps/documentation/javascript/get-api-key?hl=ru.

После получения ключа вам необходимо подставить его в строке 15 в макете "gm_GoogleMaps"

Обновление от 15 июля 2016 г.

Добавлена возможность сохранять маршрут в формате GPX

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

Наименование Файл Версия Размер Кол. Скачив.
GoogleMaps
.zip 43,49Kb
14.09.16
11
.zip 43,49Kb 11 Скачать

См. также

PowerTools от 1 000
Подписаться Добавить вознаграждение

Комментарии

1. Алексей 1 (AlX0id) 21.08.14 23:01
На быстрых машинах все работает прекрасно, однако, на медленных машинх вы можете получить ошибку при открытии. В этом случае достаточно нажать кнопку "Ок" и посмотреть маршрут по кнопке "Проложить маршрут". Другого решения для автоматической прокладки маршрута при открытии формы пока не нашел...

Может, просто обработчик ДокументСформирован запилить? Ну, или вкупе с обработчиком ожидания..
2. Алексей Харламов (RocKeR_13) 22.08.14 12:07
(1) AlX0id, спасибо за подсказку, а то зациклился я на событиях формы) Помогло
&НаКлиенте
Процедура ПолеHTMLДокДокументСформирован(Элемент)
	
	ПодключитьОбработчикОжидания("ПроложитьМаршрут", 0.1, Истина);	
	
КонецПроцедуры
...Показать Скрыть

Сейчас подпилю описание публикации и выложу доработанный вариант)
3. Роман Ша (Shamzelia) 23.06.16 13:00
А проблему решить как с ошибкой выполнения сценария, когда курсор попадает на карту???
4. Роман Ша (Shamzelia) 23.06.16 14:55
Поправьте обработку плз )
5. Алексей Харламов (RocKeR_13) 14.07.16 17:29
(4) Shamzelia, в описании к обновлению от 14 июля 2016 написал, как исправить. Загрузил новые обработки в публикацию!
6. М Л (sigur) 24.08.16 20:08
Ошибка "Script error"
строка 0
символ 0
"http://maps.googleapis.com/maps-api-v3/api/js/24/13/intl/ru_ALL/onion.js"

Где копать?
7. Igor Kitaev (pimenushka) 06.09.16 22:14
Такая же картина при увеличении карты. Ответа не нашел.
8. Алексей Харламов (RocKeR_13) 14.09.16 15:55
(6),(7) попробуйте в макете заменить строки 2 и 3 (в теге META) на следующие
<MET A http-equiv="Content-Type" content="text/html; charset=utf-8" />
<MET A http-equiv="X-UA-Compatible" content="IE=8" />

P.S. META должно быть слитно написано, почему-то добавляется автопробел тут
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа