Форма выбора координат Yandex карт (управляемая форма)

Опубликовал Kоstik Matiushkin (motkot) в раздел Обработки - Универсальные обработки

Обработка позволяет найти нужный адрес на карте Yandex. Отправить сообщение форме-владельцу или всем формам, со строкой координат.

 

Доброго времени суток!

Навеяно всеми обработками, связанными со словом "Yandex", которые встречаются на данном сайте. Отдельное спасибо всем авторам этих обработок.

Данная обработка служит для оповещения формы-владельца (а если ее нет всех форм) данными в виде строки координат формата ";". Думаю полезно будет для выбора координат элемента справочника наподобие "Бизнес -регион".

Основные возможности: 

1. Поиск адресов (ограничение по количеству результатов задается на форме).

2. "Планирование" карты к выбранному результату на карте.

3. Выбор координат и оповещение форм.

4. Форма обработки полностью создается программным путем.

Кому-то может пригодится как пример или возможно в своей конфигурации.

P.S. Критика, найденные ошибки, недочеты - приветствуются.

P.P.S. На счет добавления возможностей, функционала и т.п. - пишите, чего-нить придумаем.


Обновление от 18.09.2012 

Добавлено:

1. При "клике" на карте появляется метка зеленого цвета, на месте клика. Метка предыдущего клика удаляется.

2. По истечению 30 секунд метка последнего "клика" тоже удаляется.

 

Обновление от 07.12.2011 

Исправлено:

1. Некорректный выбор координат (разделитель должен быть "."), при клике на карте.

 

Обновление от 07.09.2011

Добавлено:

1. Количество результатов поиска.

2. Точность найденных результатов.

3. Некоторые интерфейсные изменения.

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

Наименование Файл Версия Размер
Выбор координат Yandex
.epf 15,83Kb
19.03.14
223
.epf 15,83Kb 223 Скачать бесплатно

См. также

Вознаграждение за ответ
Показать полностью
Комментарии
1. BigB (BigB) 156 07.09.11 11:20 Сейчас в теме
При открытии пишет:
{Форма.Форма.Форма(289)}: Поле объекта не обнаружено (Информация32)
ПоказатьОповещениеПользователя("Работа с картой Yandex", , "Загрузка карты...", БиблиотекаКартинок.Информация32);
2. Kоstik Matiushkin (motkot) 52 07.09.11 11:58 Сейчас в теме
BigB пишет:
При открытии пишет:
{Форма.Форма.Форма(289)}: Поле объекта не обнаружено (Информация32)
ПоказатьОповещениеПользователя("Работа с картой Yandex", , "Загрузка карты...", БиблиотекаКартинок.Информация32);


Исправлено, обработку выложил.
Ruster1983; BigB; +2 Ответить
3. Дмитрий Шерстобитов (DitriX) 2365 07.09.11 15:00 Сейчас в теме
Добавьте погоду :) Т.е. открываешь карту на всю страну, а там над каждым регионом - погода :)
А потом еще миниграфик с рейтингом продаж, и вообще можно тогда больше никуда не залазить :)
4. Kоstik Matiushkin (motkot) 52 07.09.11 16:21 Сейчас в теме
DitriX пишет:
Добавьте погоду Т.е. открываешь карту на всю страну, а там над каждым регионом - погода
А потом еще миниграфик с рейтингом продаж, и вообще можно тогда больше никуда не залазить


Ну погода это конечно немного другое :) не для этой задачи... Можно сделать, но жалко времени.
А на счет продаж, да, такой универсальный отчет есть. И замечу - у Вас есть опыт использования СКД в другой обработке/отчете ;)
5. Дмитрий Шерстобитов (DitriX) 2365 07.09.11 18:50 Сейчас в теме
А на счет продаж, да, такой универсальный отчет есть

На карте, с графиками по региону, с выставлением маршрута и все это интерактивно?
Гео схемы не в счет, они "квадратные"
И замечу - у Вас есть опыт использования СКД в другой обработке/отчете

Не понял что то, это вопрос? утверждение?

Просто не все делается ради результата, что то делается ради интереса и удовольствия.
А вот это было бы так раз интересно сделать, или посмотреть варианты.
А раз вы спросили что добавить - я ответил... А добавлять или нет - ваше дело...
6. Kоstik Matiushkin (motkot) 52 08.09.11 09:12 Сейчас в теме
DitriX пишет:
с выставлением маршрута

Имелось ввиду маршрут чего?

DitriX пишет:
и все это интерактивно

А как иначе?
7. Mike Gor (mgor) 7 06.12.11 18:10 Сейчас в теме
Небольшой косяк:
- если координаты брать из таблицы поиска, то десятичный разделитель числа - точка и всё ок!
- а если, кликая мышкой по карте, то разделитель - запятая и дальше эти координаты использовать нельзя.

Я бы подправил:

Процедура ТекстHTMLПриНажатии(Элемент, ДанныеСобытия, СтандартнаяОбработка)
ТочкаШирота = СтрЗаменить(Элемент.Документ.body.getAttribute("CoordLat"),",",".");
ТочкаДолгота = СтрЗаменить(Элемент.Документ.body.getAttribute("CoordLng"),",",".");
8. Kоstik Matiushkin (motkot) 52 07.12.11 11:18 Сейчас в теме
9. Сергей Дячок (DyachokSF) 02.01.12 19:36 Сейчас в теме
а для того что бы пользоваться этой программой разрешение от yandex?
10. Kоstik Matiushkin (motkot) 52 02.01.12 21:17 Сейчас в теме
(9) DyachokSF, данная обработка выложена для примера/ознакомления, изучения одного из варианта использования сервиса от Яндекс. Кто хочет использовать ее в своих коммерческих целях подставит свой ключ (он бесплатный после регистрации на сайте Яндекс карт). Все остальное изложено в SDK по картам.
Не совсем понятно о каком разрешении идет речь?
11. Сергей Дячок (DyachokSF) 05.01.12 12:21 Сейчас в теме
Платить сайту maps.yandex.ru для использования яндекс мап нужно?
12. Kоstik Matiushkin (motkot) 52 05.01.12 14:13 Сейчас в теме
(11) DyachokSF, зайдите на сайт, уточните. На момент оформления публикации не нужно. На самом деле там совершенно другие вещи используются, подробнее на Api Yandex Maps
13. Андрей Данилюк (DanilaDru) 232 15.09.12 18:48 Сейчас в теме
Спасибо. Хорошая наработка, плюсую. Относительно усовершенствования. Предлагаю при клике на карту для ручного определения координат выводить маркер в том месте, а то не понятно где щелкнул и что за координата.
14. Kоstik Matiushkin (motkot) 52 16.09.12 19:42 Сейчас в теме
(13) DanilaDru, спасибо за комментарий, сейчас пока некогда, но учту.
15. Андрей Данилюк (DanilaDru) 232 18.09.12 11:26 Сейчас в теме
По сути у Вас уже все есть для этого. У карты объявлен метод AddPointOnMap() при клике на карте в случает если ДействиеКарты = 1 можно вызвать
Элементы.ПолеХТМЛ.Документ.parentWindow.eval("AddPointOnMap(" + СтрЗаменить(ТочкаДолгота, ",",".") + "," + СтрЗаменить(ТочкаШирота,",",".") + ")");

Это отрисует маркер в точке, на которой кликнули.
16. Kоstik Matiushkin (motkot) 52 19.09.12 15:54 Сейчас в теме
(15) DanilaDru, готово, только не просто добавлением строчки, чуть сложнее. ну ниче, делать было нечего...
17. Kоstik Matiushkin (motkot) 52 19.09.12 22:02 Сейчас в теме
Глянул API яндекса, там оказывается версия вышла 2.0, толи в 1С-ке клиент порезан, толи версия API еще сыровата, не взлетает чето без ошибок.
18. miroha Мирошниченко (miroha) 16.10.13 19:07 Сейчас в теме
Мега крутая штука!!! Для себя убрал рамки, ограничил высоту табличной части, привязал к справочнику Киоски. Теперь менеджеры заводят правильный полный адрес.
Не понял функцию с синим маркером.
19. Kоstik Matiushkin (motkot) 52 17.10.13 19:07 Сейчас в теме
(18) miroha, а что непонятно на счет синего маркера? очень рад, что обработка пригодилась.
20. Alex Steiner (OrsoBear) 19.12.13 11:05 Сейчас в теме
Все же не понятно. Лазил на сайте Яндекса, предложили за 5000 в месяц API 3.0 в данном случае получается можно работать без оплат?
И еще момент.
Если у меня база работает через прокси сервер, сможет ли обработка цепляться к карте?
21. Alex Steiner (OrsoBear) 19.12.13 11:06 Сейчас в теме
Прошу простить, пришлось добавить еще один комментарий, чтобы подписаться на ответы этой темы.

Есть ли возможность в Вашем варианте работы указывать зоны в виде окружности определенного радиуса, или полигон?
22. Kоstik Matiushkin (motkot) 52 19.12.13 18:58 Сейчас в теме
(20) OrsoBear, изучите информацию по http://api.yandex.ru/maps/doc/intro/concepts/intro.xml - там все есть, Вам нужна версия 1.х (платно или нет ищите там, постами выше я писал, что на момент публикации никто ни у кого не просил денег). Возможно мы говорим вообще о разных механизмах. Дайте ссылку, где с Вас просят деньги.
На счет прокси - вся работа осуществляется с клиентской части, если клиентское приложение авторизовалось на прокси - то работать будет. Если работа с прокси реализовано каким-то хитрым образом - придется допиливать.
23. Kоstik Matiushkin (motkot) 52 19.12.13 18:59 Сейчас в теме
(21) OrsoBear, нет, сейчас просто ставятся метки. В описании же вроде как писал, что обработка умеет. Обработка изначально планировалась для привязки к некой сущности в базе типа "бизнес-регионы" для удобства выбора координат этого региона менеджерами.
24. Юрий Водич (YuriFm) 17.12.15 13:44 Сейчас в теме
как можно без вывода на форму карты, выполнять поиск адресов. если сделать объект формы невидимым вылетает ошибка.
25. Kоstik Matiushkin (motkot) 52 17.12.15 17:17 Сейчас в теме
(24) YuriFm, я недавно подобную другую задачу решал, сделал вывод - что никак. Т.к. чтобы работали скрипты да и сама страница, нужно наличие поля HTML документа обязательно на форме, с видимостью.
26. Юрий Водич (YuriFm) 18.12.15 17:32 Сейчас в теме
(25) motkot, да, вы правы. Сделал так. Поле HTML документа вынес на отдельную вкладку, и при открытии формы её делаю активной. У поля HTML-документ возникает событие ДокументСформирован, когда он построен и готов к использованию, в этом событие переключаю вкладку на нужную. Пока что так.