Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
15 дек 2024, 11:53

Записать значение в переменную - 1С

Автор Анюта17, 09 мая 2018, 09:12

0 Пользователей и 1 гость просматривают эту тему.

Анюта17

Взяла пример с интернета, загрузка карты. При загрузке высвечивается окошко и там прописана дистанция, можно ли ее вытащить из года явы в переменную? если да, то как?
Процедура ЗагрузитьКарту(Команда)
    // Вставить содержимое обработчика.
    Километраж = Неопределено;
   
    APIКлюч = "AEdx8VoBAAAA1o8uVAIA3if9sOvgIZskBLE87YSOcpIYVT8AAAAAAAAAAAAbEV0KCZf48qwG_xdBCD826xXsLA==";
   
    КодХТМЛ = "
    |<!DOCTYPE html PUBLIC ""-//W3C//DTD XHTML 1.0 Transitional//EN"" ""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"">
    |<html xmlns=""http://www.w3.org/1999/xhtml"">
    |<head>
    |    <title>Маршрут доставки</title>
    |    <meta http-equiv=""Content-Type"" content=""text/html; charset=utf-8"" />
    |    <script type=""text/javascript"" src=""http://api-maps.yandex.ru/1.1/index.xml?key=" + APIКлюч + "&modules=traffic"" charset=""utf-8"">
    |    </script>
    |    <script type=""text/javascript"">
    |        YMaps.jQuery(
    |            function showAddress () {
    |                var map = new YMaps.Map(YMaps.jQuery(""#YMapsID"")[0]),
    |                    traffic = new YMaps.Traffic.Control({
    |                            showInfoSwitcher: true,
    |                            infoLayerOptions: {
    |                                cursor: YMaps.Cursor.HELP
    |                            }
    |                        }, {
    |                            shown: true,
    |                            infoLayerShown: true
    |                        }
    |                    );
    |
    |                map.setCenter(new YMaps.GeoPoint(37.64, 55.76), 10);
    |                map.addControl(traffic);
    |                var toolBar = new YMaps.ToolBar();
    |                map.addControl(toolBar);
    |                map.addControl(new YMaps.Zoom());
    |                map.addControl(new YMaps.TypeControl());
    |                map.enableScrollZoom();
    |
    |                var router = new YMaps.Router(
    |                    [//~~ТелоФункции~~],
    |                    [],
    |                    { viewAutoApply: true },
    |                    { avoidTrafficJams: traffic.isShown() },
    |                    {avoidTrafficJams: true}
    |                );
    |
    |                map.addOverlay(router);
    |
    |                YMaps.Events.observe(
    |                    router, router.Events.Success, function (router) {
    |                        var route = router.getRoute(0);
    |                        var itineraryList = ['Количество построенных маршрутов: ' + router.getNumRoutes() + '; Дистанция: ' + Math.round(router.getDistance() /1000) + ' км.; Приблизительное время в пути: ' + Math.round(router.getDuration()/60) + ' мин.'];
    |                       
    |                        for (var n=0; n < router.getNumRoutes(); n++) {
    |                           var r = router.getRoute(n);
    |                           var d = r.getDistance();
    |                           itineraryList.push('Длинна маршрута: №' + Math.round(n) + ' ' + Math.round(d /1000) + 'км.');
    |                        }
    |
    |                        var action = [];
    |                        action['back'] = 'назад';
    |                        action['left'] = 'налево';
    |                        action['right'] = 'направо';
    |                        action['none'] = 'прямо';
    |
    //|                        for (var i=0; i < route.getNumRouteSegments(); i++) {
    //|                            var segment = route.getRouteSegment(i);
    //|                            itineraryList.push('Едем ' + action[segment.getAction()] + "" на "" + segment.getStreet() + ', проезжаем ' + segment.getDistance() + ' м.');
    //|                        }
    |
    |                        itineraryList.push('Останавливаемся.');
    |                        alert(itineraryList.join('\n'));
    |                    }
    |                );
    |            }
    |        );
    |    </script>
    |</head>
    |<body>
    |    <div id=""YMapsID"" style=""width:800px;height:600px"">
    |    </div>
    |</body>
    |</html>";
   
   
   
    //ЭлементыФормы.Карта.УстановитьТекст(КодХТМЛ);
    //Километраж = "Math.round(router.getDistance() /1000)";   
    МассивАдресов = Новый Массив;
   
    Для сч=0 По Объект.Пункты.Количество()-1 Цикл
        МассивАдресов.Добавить(Объект.Пункты[сч].Город + ", "+ Объект.Пункты[сч].Область +", "+ Объект.Пункты[сч].Улица);
    КонецЦикла;
   
    ТелоФункции = "";
   
    ИндексЭлемента = 1;
    Для Каждого Элемент Из МассивАдресов Цикл
        Если ИндексЭлемента < МассивАдресов.Количество() Тогда
            ТелоФункции = ТелоФункции + "'" + Элемент + "', ";
           
        Иначе
            ТелоФункции = ТелоФункции + "'" + Элемент + "'";
           
        КонецЕсли;
        ИндексЭлемента = ИндексЭлемента + 1;
    КонецЦикла;
   
    КодХТМЛ = СтрЗаменить(КодХТМЛ, "//~~ТелоФункции~~", ТелоФункции);
   
    Карта = КодХТМЛ;
КонецПроцедуры


Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск