Очередная обработка — пример построения маршрутов на картах яндекс через API. На основании списка адресов рассчитывает путь от точки до точки на карте.
Рассчитывает расстояние по маршруту.
Может использоваться при построении маршрутов в 1с.
Я знаю их тут много, но я написал свою.
Достоинства
Работа с яндекс картами через яндекс API. Возможно как образец, поэтому не дорого.
Очередная обработка — пример построения маршрутов на картах яндекс через API. На основании списка адресов рассчитывает путь от точки до точки на карте.
Перейти к публикации
А чего не на УФ?
УП?
Хотелось бы управляемые формы.
глючит «Получение элемента по индексу для значения не определено
Р = СтрЗаменить(МАссив[0], «;», Символы.ПС);»
Сделаю на УП не проблема, выложу. Каким образом глючит? я когда тестировал не глючило.
А работает по всей РФ или ток Москва? Просто не так давно тестироал похожую обработку и работала она ток по Москве и Московской области.
(6) mzelensky, я тестировал маршруты из Москвы в Минск потом в Нальчик а потом в Саратов, работала, работает как работают яндекс карты в нете.
Обработка сможет построить маршрут более чем по 10 точкам?
(8) kostia.ck, Не пробовал если честно.
(8) kostia.ck, Можно, я пробовал 15, нормально было.
(4) ssn5810, Я добавил новую обработку. чуть подправил эту беду. Если хочешь исправить то добавь в формирование адресов счетчик. и результат счетчика в «ПодключитьОбработчикОжидания(«ЗаписатьМаршрутВТЧ»,счетчик,Ложь);» В итоге будет кашерно.
Вообще клинит даже закрыть не дает
при добавлении в маршрут или адреса
{Форма.Форма.Форма(14)}: Получение элемента по индексу для значения не определено
Р = СтрЗаменить(МАссив[0], «;», Символы.ПС);
прогу можно закрыть только через диспетчер задач, КРУТО !!!!
(12) ssn5810, я же сказал как изменить, во вторых возможно надо сделать fix IE. Либо нет медленный слишком. Я просто исправил эту проблему. У меня работает стабильно. эта ошибка ещё возможна при пустых либо коряво набранных адресов. я несколько раз прогнал и проблемы не было. я выложил исправленную. попробуйте
(13) ssn5810, прога работает, может вам надо разбираться не с обработкой?!
пробовал «улучшеную», платформа 1С8.2.13 УТ
клинит при добавлении в маршрута или адреса
{Форма.Форма.Форма(14)}: Получение элемента по индексу для значения не определено
Р = СтрЗаменить(МАссив[0], «;», Символы.ПС);
Ответили: (14)
(16) ssn5810, у других не клинит. Разбирайтесь.
Жалко не во всех странах маршрут пролаживает, но будем надеяться Яндекс будут дописывать.
PS. Год-два назад Беларуси не было в прокладке маршрутов.
Интересно для любой конфы? нужны какие нито библиотеки или еще что&
Обработка работает, просто надо сначала адреса писать а потом кнопку запустить нажимать
Еще бы можно было отмечать прямо на карте точки маршрута а не писать хотя бы, получилось бы что то типо прокладки маршрута в ручную. А вообще он по какому принципу маршрут сам прокладывает? Ну молчу конечно про поиск оптимального маршрута между скажем 5 точками маршрута)
Очень инретесно про принцип прокладывания маршрута, скажем есть 20 адресов, как между ними будет прокладыватлься путь? есть ли время в пути? Планируется ли дальнейшее развитие функционала?
(22) acherey, Можно расстояние между точек, время, пробки. Это просто вариант который вы можете развиват ьсами с помощью API
Развивать тяжело, хочеться уже готовое ))).
А за пример использования спасибо.
Кто может подсказать, что для подобных задач лучше Яндекс или Гугл?
Развивать тяжело, хочеться уже готовое ))).
А за пример использования спасибо.
Кто может подсказать, что для подобных задач лучше Яндекс или Гугл?
(25) GreenFox, Яндекс. Гугл русских улиц не знает
Попробовал и сравнил с данными, полученные с GPS трекеров. Разница составила 5-7% , причем разброс как в большую , так и в меньшую сторону. Будем посмотреть …
Отличная обработка, как раз то,что мне нужно! Столько времени мне сэкономил. Спасибо огромнейшее!
спасибо автору!
беларусь как?
а почему сделано через такой необычный механизм ожидания? нет ли стандартных методов ожидания?.
(31) Angeros, Ну вообще я много разных способов придумать пытался, это самый эффективный. Но данная обработка всего лишь шаблон для продвижения дальше. Если есть идеи буду рад.
(32) Все классно, я до этого сам не догадался, хотя и задача стоит другая. Вызов процедуры чтения результата происходит, через обработку ожидания, которая периодически проверяет результаты работы скрипта. Изящно но в тоже время довольно не стандартно в контексте стандартной модели кодинга в 1с. Больше похоже на принцип из явыскрипт
Очень похоже у вас в этой области больше знаний. Потому спрошу еще пару вопросов по теме.
Задача.
Есть массив точек которые надо посетить, начальная и конечная точки есть одна и та-же. Необходимо посетить их все пройдя минимальный путь. Для начала мне потребуется выбрать путь от начала до второй, от начала до третей и т.д. — идем в ближайшую. из ближайшей далее все сначала повторяем, но исключим те точки которые уже посетили. Так предполагается найти наш путь.
Получает чтобы разрешить эту задачу необходимо запускать заковыристый механизм, который вы описали несколько раз. и по ходу вопросы.
Почему не использовалось работа с версией Яндекс карт 2.0?! Можно ли вообще передать вызов из яваскрипта в 1с. пытался с событиями разобраться но все очень натянуто?. Можно как-то контролировать работу callback функции внутри яваскрипта, чтобы управление в 1с передавалось только по окончании работы скрипта включая возврат результатов.? Возможно ли вообще работать с ява скрипт из 1с без объекта хтмл?
Может я не понимаю что то но в задаче вы имеете ввиду веерный тип развозки логистики? Я прошу прощения просто не пойму логику посещения точек. Если задаем путь от начала до конца то он определяет от начала через точки.
Отвечаю на вопросы. Я не в курсе был про яндекс карты 2.0 и использовал первые попавшиеся API на сайте яндекса. Вызов из яндекс скрипта..не пробовал… но можно по идее все, хотел передать эту обработку уже через c#, если честно у самого было много идей по этому поводу… но заказчику тогда хватило и этого, да и смысла разрабатывать это дело под 1с не вижу смысла нет потребностей у людей, идей много было тогда. Но скажу что долго парился с проблемой передачи в 1с и обратно данных. Честно говоря самого этот способ бесит. Пришлось разрулить по детски. А вообще была проблема с тем что если не использовать механизм таких задержек то данные не возвращаются и идет потеря.
Жаль, что не прокладывает оптимальный маршрут. Долго бился с тем, чтоб я.карты отображали оптимальный маршрут между несколькими точками, но все тщетно. И кстати заменить обработчик ожидания можно и нужно.
//YMaps.Events.observe(router, router.Events.Success, function () {
Вот в этой процедуре и надо записать
document.title = ‘Сообщить(«Расстояние тут… вроде через getLenght()… но надо пробовать»);’;
А на событие поляHTMLдокумента «onpropertychange» повесить
Если ЭлементыФормы.ПолеHTMLДокумента.Документ.title <> «» Тогда
Выполнить(ЭлементыФормы.ПолеHTMLДокумента.Документ.title);
КонецЕсли;
Ну или как-то так. Думаю задумка понятна, а в 1С ее не проверял. Вероятно, что ошибку выдаст, которую легко исправить.
Яндекс карта. допустим есть несколько меток, можно ли как-то смасштабировать карту (не руками, а программно), что бы масштаб был максимально увеличен и в тоже время все метки были видны (в границах карты)?
с api 2.0 работает??
Супер!!!