Построение и сохранение маршрута на Яндекс-картах

1. qazaas 24.01.22 10:34 Сейчас в теме +1 $m
Здравствуйте! Подскажите момент по Яндекс-картам.
Ситуация следующая: есть некие документы заявок, в которых размещена Яндекс-карта (поле HTML-документа). На карте маршрут может строится по умолчанию, затем, при необходимости, редактируется, рассчитываются заправки на маршруте и он (маршрут) записывается в справочник. Все работает, все ок. Но это же самое необходимо реализовать в виде регламентной операции, чтобы пользователи не ждали, пока все это произойдет, а просто открыли заявку и карта бы просто подгрузилась из сохраненных данных со всеми расчетами.
Так вот, проблема в том, что построение маршрута происходит, как бы так сказать, на стороне Яндекса. Только при подключение API скрипта и загрузки страницы ПОЛНОСТЬЮ можно выполнить дальнейшие действия при нажатии на кнопки (выполнить скрипт по сохранению маршрута, рассчитать заправки и т.д.).
Тут два варианта - либо разобрать построение карты и маршрута и, вместе с сохранением, вогнать все в один скрипт, либо опять-таки, разобрать все это построение карты и маршрута и перевести в код 1С (с сохранением по идее проблем не возникнет). Условно, есть еще и третий вариант: каким-то макаром выполнить скрипт в объекте ДокументаHTML или Com-объекта ("HTMLFile"), обязательно отследить ПОЛНУЮ отработку скрипта, и тогда уже, после этого, можно будет обратиться к функции сохранения, т.к. во все необходимые переменные уже данные записались (но это не точно =) )

Под построением карты и маршрута понимается использование глобального класса ymaps, который доступен при подключении API.
Подключение API это использование скрипт типа
<sc ript src='https://api-maps.yandex.ru/2.0/?load=package.standard&lang=ru-RU&apikey=<API-ключ>' type='text/javascript'></sc ript>
или
<sc ript src='https://enterprise.api-maps.yandex.ru/2.1/?load=package.standard&lang=ru_RU&apikey=<API-ключ>' type='text/javascript'></sc ript>
Вознаграждение за ответ
Показать полностью
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. acces969 311 24.01.22 11:51 Сейчас в теме
Выполнение скрипта "каким то макаром" из 1с возможно прямым вызовом этой функции js по ее имени. Вроде Документ.CreateTrace();
Но я бы в вашей ситуации переносил логику в 1С. Это трудно, зато надежнее, чем работа по API с сервисом. Вы столкнулись сейчас с одной проблемой, даже если решите ее, то при последующей работе будут всплывать такие же труднорешаемые проблемы. А когда все в 1С, то вести учетную систему и расширять ее легко. Та же история маршрутов, архив, статистические отчеты итд.
3. qazaas 24.01.22 12:01 Сейчас в теме
(2) Да я не против, вот только это построение маршрута изначально "скрыто". Подключается скрипт API и уже он дает возможность обращаться к классу ymaps для создания карты и построения маршрута. Без него это сделать не получится. Это нужно либо как-то разобрать все их скрипты и перенести в свой код, чтобы самому создавать эти карты и строить маршруты (хотя, я полагаю, это будет очень громоздко), либо может как-то использовать источник скрипта с указанием API, но внутри него дописать необходимые функции (типа, <sc ript src=API,,,>Дополнительный код</sc ript>), вот только такой способ у меня не прошел.
С сохранением, по идее, проблем не возникнет. Трудности только с построением маршрута.
4. tango 499 24.01.22 12:22 Сейчас в теме
(3) скачайте скрипты и пользуйте локально
5. acces969 311 24.01.22 13:17 Сейчас в теме
(4) Маловероятно, что это возможно. 99% что у яндекса SAAS и закрытый протокол передачи данных с сервера на клиент (в скрипты странички).
Оставьте свое сообщение
Вакансии
Программист/тестировщик
Москва
зарплата от 130 000 руб. до 150 000 руб.
Полный день

Ведущий разработчик 1С / Team lead отдела разработки 1С
Москва
зарплата от 300 000 руб. до 300 000 руб.
Полный день

Программист 1С
Москва
зарплата от 130 000 руб. до 150 000 руб.
Полный день

Бизнес-аналитик
Москва
зарплата от 130 000 руб. до 150 000 руб.
Полный день

Ведущий консультант 1С:ERP
Москва
зарплата от 200 000 руб.
Полный день