1с яндекс карты получить координаты по адресу
Ставит задачу на прямое либо обратное геокодирование.
Формат запроса
Примечание. При одновременном использовании параметров bbox и\\n ll+spn , параметр bbox будет более\\n приоритетным.
Игнорируется если в параметре geocode указаны координаты.
Значение по умолчанию: xml .
Значение по умолчанию: 10 .
Максимальное допустимое значение: 100 .
Значение по умолчанию:\\n 0 .
language — двузначный код языка. Указывается в формате\\n ISO 639-1. Задает язык, на котором будут отображаться\\n названия географических объектов.
region — двузначный код страны. Указывается в формате ISO 3166-1. Определяет региональные особенности.
Список поддерживаемых значений:
Значение по умолчанию: ru_RU .
Если указан адрес, то он преобразуется в координаты объекта. Этот процесс называется прямым геокодированием.
Если указаны координаты, они преобразуются в адрес объекта. Этот процесс называется обратным геокодированием.
Доступны несколько форматов записи координат.
Значение по умолчанию: longlat .
Флаг, задающий ограничение поиска указанной областью. Область задается параметрами ll и spn либо bbox . Возможные значения:
Протяженность области поиска. Центр области задается параметром ll .
Примечание. Если в параметре geocode указаны координаты и параметр kind имеет значение district , параметр spn не учитывается.
Альтернативный способ задания области поиска.
Границы задаются в виде географических координат (в последовательности «долгота, широта») левого нижнего и правого верхнего углов области.
Примечание. При одновременном использовании параметров bbox и ll+spn , параметр bbox будет более приоритетным.
Игнорируется если в параметре geocode указаны координаты.
Формат ответа геокодера:
Значение по умолчанию: xml .
Максимальное количество возвращаемых объектов. Если указан параметр skip то значение нужно задать явно.
Значение по умолчанию: 10 .
Максимальное допустимое значение: 100 .
Значение по умолчанию: 0 .
Язык ответа и региональные особенности карты.
Формат записи
language — двузначный код языка. Указывается в формате ISO 639-1. Задает язык, на котором будут отображаться названия географических объектов.
region — двузначный код страны. Указывается в формате ISO 3166-1. Определяет региональные особенности.
Список поддерживаемых значений:
Значение по умолчанию: ru_RU .
Имя JavaScript-функции, которой передается ответ геокодера (в соответствии с соглашениями JSONP).
Параметр учитывается только если ответ возвращается в формате JSON.
Если указан адрес, то он преобразуется в координаты объекта. Этот процесс называется прямым геокодированием.
Если указаны координаты, они преобразуются в адрес объекта. Этот процесс называется обратным геокодированием.
Доступны несколько форматов записи координат.
Значение по умолчанию: longlat .
Флаг, задающий ограничение поиска указанной областью. Область задается параметрами ll и spn либо bbox . Возможные значения:
Протяженность области поиска. Центр области задается параметром ll .
Примечание. Если в параметре geocode указаны координаты и параметр kind имеет значение district , параметр spn не учитывается.
Альтернативный способ задания области поиска.
Границы задаются в виде географических координат (в последовательности «долгота, широта») левого нижнего и правого верхнего углов области.
Примечание. При одновременном использовании параметров bbox и ll+spn , параметр bbox будет более приоритетным.
Игнорируется если в параметре geocode указаны координаты.
Формат ответа геокодера:
Значение по умолчанию: xml .
Максимальное количество возвращаемых объектов. Если указан параметр skip то значение нужно задать явно.
Значение по умолчанию: 10 .
Максимальное допустимое значение: 100 .
Значение по умолчанию: 0 .
Язык ответа и региональные особенности карты.
Формат записи
language — двузначный код языка. Указывается в формате ISO 639-1. Задает язык, на котором будут отображаться названия географических объектов.
region — двузначный код страны. Указывается в формате ISO 3166-1. Определяет региональные особенности.
Список поддерживаемых значений:
Значение по умолчанию: ru_RU .
Имя JavaScript-функции, которой передается ответ геокодера (в соответствии с соглашениями JSONP).
Параметр учитывается только если ответ возвращается в формате JSON.
Формат записи географических координат в запросе
Географические координаты в параметре geocode задаются последовательно в одном из следующих форматов:
Разделителем может быть пробел, запятая или точка с запятой. Слева и справа от символов-разделителей допускаются пробелы.
Координаты запроса в ответе геокодера
Геокодер возвращает заданные координаты в элементе metaDataProperty/GeocoderResponseMetaData/Point/pos . Координаты указаны в формате «[долгота] [широта]» :
Пример запроса
В ответе геокодера будут географические координаты этого здания, а также дополнительная информация о найденном объекте (см. страницу Ответ геокодера).
При обратном геокодировании в запросе указываются координаты искомого объекта:
Написать статью и не выложить пример ее реализации в деле: не очень хороший тон. Поэтому выкладываю пример управления объектом яндекс карт скриптами из 1С.
Обработка очень старая, храню для себя и если кому уж очень интересно (не работает под новые платформы)
- Ищет введенный адрес, выдавая несколько результатов.
- При щелчке по варианту в таблице результатов показывает балун выделенного варианта на карте
- При щелчке по балуну варианта на карте выделяет его в таблице результатов
- При щелчке по карте возвращает координаты щелчка в поле «Координаты Щелчка по карте».
- Также реализован запрет обращения к карте до полной загрузки, что предотвращает ошибочные вызовы.
- Карта открывается во весь HTML элемент
Данный функционал должен полностью покрыть потребности для определения координат на карте. Тестировалось все под тонким и толстым клиентом.
Карта
Специальные предложения
Скачал вашу обработку, выдается ошибка при поиске адреса.
по щелчку на карте координаты отображаются.
посмотрите пожалуйста в чем может быть ошибка!
С 8.3.14+ перешли на WebKit. Поле HTML документа сменилось с COM-объекта на Внешний объект с изменением DOM модели со всеми вытекающими.
Автор. Удали файл из раздачи. Пожалуйста. Скачивать - только старт деньги тратить. Всё равно переписывать все придется.
Просмотры 20372
Загрузки 185
Рейтинг 26
Создание 27.03.16 13:03
Обновление 27.07.16 13:11
№ Публикации 506854
Конфигурация Конфигурации 1cv8
Операционная система Windows
Вид учета Не имеет значения
Доступ к файлу Абонемент ($m)
Код открыт Да
См. также
Конвертация любых адресов, написанных в свободной форме, к ФИАС Промо
Допустим у нас есть база с адресами клиентов, и написаны они могут быть как душе угодно. С опечатками, без индексов, без разделителей, в совершенно любом формате. Вот было бы здорово иметь функцию, которая одним нажатием кнопки преобразует любую белиберду к строгому представлению адреса по ФИАС? Восстановит индекс, исправит опечатки и вернёт на 100% валидный адрес. Для всех, кто мечтательно сказал "ДА!", выкладываю данную обработку.
2 стартмани
30.06.2020 11177 100 XilDen 15
Сервис push-уведомлений для 1С (Push Notification Service For 1C - PNS4OneS)
1 стартмани
02.02.2022 4561 18 ltfriend 5
Создание интерактивных обучающих курсов с помощью Vanessa Interactive
Приветствую Вас, коллеги. Сегодня Вам предлагается рассмотреть технологию создания интерактивных обучающих курсов, системы Onboarding, интерактивной справки для любых конфигураций разработанных на базе платформы 1С при работе в web клиенте. Прошу посмотреть ролик, кому неинтересно, как это работает, можно дальше не читать. Тестировалось на 1С:Предприятие 8.3 (8.3.20.1646).
1 стартмани
02.02.2022 3239 0 Viktor_Ermakov 2
Универсальный метод, html шаблоны, страницы с авторизацией и без, многоязычность, страница авторизации, etc.
1 стартмани
22.01.2022 4410 7 vl-sher1 29
Модуль обмена с QIWI Промо
Компании, которые используют систему моментальных платежей QIWI, ценят ее за удобство по скорости выплат и для платежей по запросу. Но такие переводы сложны для учета, а при большом объеме проводимых операций отнимают много времени и превращаются в дополнительную головную боль. Мы сотрудничали с компаниями, которые отправляют большое количество платеже на QIWI, и часто слышали боль бухгалтеров о том, как им сложно работать с такими переводами. Поэтому мы автоматизировали выплаты через QIWI в 1С и создали модуль интеграции 1С c API QIWI Wallet и QIWI TopUp.
5 стартмани
25.05.2020 10641 1 Neti 10
Расширение конфигурации для Web-доступа к 1С (1С в роли back-end)
Для реализации того, чтобы 1С формировала и отдавала страницу, которую можно было бы открыть через браузер было написано расширение, которое позволяет публиковать из 1С произвольные ресурсы, будь то API, сайт или изображения / прочие файлы.
1 стартмани
01.04.2021 11842 13 SaschaG 4
Работа с картами в 1С на примере бесплатной библиотеки Leaflet
Разработка функционала отображения и выбора пунктов доставки на карте прямо в 1С с помощью бесплатной библиотеки Leaflet. Тестирование производилось на платформе 8.3.15.1534 на тонком клиенте.
1 стартмани
31.03.2021 14953 49 Parsec1C 18
1 стартмани
24.03.2021 10653 17 ltfriend 12
BIM: взаимодействие с платформой Autodesk Forge Промо
Предлагаемый пример демонстрирует широкие возможности для взаимодействия «1С:Предприятие» с платформой Autodesk Forge и позволяет вам получить базовые представления о применения технологий информационного моделирования в строительстве. Поддерживаются все версии платформы от 8.3.12 и выше до 8.3.18.
1 стартмани
25.11.2020 58126 13 kandr 3
Загрузка данных о продажах ОЗОН из API Ozon и Отчетов в формате *.xlsx в документ "Отчет комиссионера"
Обработки предназначены для следующих конфигураций: Бухгалтерия предприятия, редакция 3.0; Управление нашей фирмой, редакция 1.6; Управление торговлей, редакция 10.3; Управление торговлей, редакция 11; Комплексная автоматизация 2; ERP Управление предприятием 2
Внимание! Перед использованием обработки следует ознакомиться с здесь почитайте комментарии), либо предлагают решение с получением ключа карт. Во многих публикациях для отображения карт используется "Поле HTML документа" на форме 1С. Этот объект уже давно устарел и не поддерживает возможности HTML 5. В итоге, чтобы отобразить страницу на форме 1С приходится долго "плясать с бубном".
Программист, которому впервые дали задание вывести на карту точку будет тратить лишнее время и СтартМани на поиски лучшего варианта, корректировать реестр Windows, как предложено здесь и в итоге столкнётся с тем, что стабильного рабочего варианта найти не удастся.
Мы предлагаем вариант решения, который будет работать везде и без специальных условий. Мы принципиально не используем объект WebBrowser Control, чтобы всё работало всегда и у всех.
Пример 1. Метка на карте
Для добавления метки на карте достаточно знать её координаты.
Результат нажатия на кнопку “Показать метку” будет таким:
Как это работает?
Для кнопки “Показать метку” назначена процедура:
Функция для получения текста HTML:
Все экспортные функции и процедуры обработки описаны вспомогательными комментариями, поэтому будет легко догадаться о назначении параметров.
Функция “ДобавитьМетку” добавляет на карту метку с описанием.
Если необходимо на одной карте показать сразу несколько меток, то функцию “ДобавитьМетку” нужно вызывать несколько раз.
Для отображения результата составленного текста HTML используется процедура “ПоказатьНаКартеНаКлиенте”.
При выполнении этой процедуры в первый раз - появится окно с выбором программы-браузера. После выбора - откроется окно с картой.
Пример 2: Маршрут на карте
Процедура кнопки “Показать маршрут”:
Пример 3: Получение координат из адреса (геокодирование)
Не всегда в типовой базе 1С имеются данные о координатах пункта назначения. Но зато есть адрес, представленный стройкой. Иногда даже заполненный по всем правилам КЛАДР (ФИАС).
Для таких случаев имеется возможность преобразовать строку почтового адреса в координаты: долготу и широту.
Функция “ПолучитьКоординатыПоАдресу” выполняет обращение к сервису геокодирования и разбирает ответ в структуру, содержащую координаты и адрес, для которого были определены координаты.
Пример 4. Расчет длины пути маршрута
Этот пример появился в версии 2.0 нашей обработки.
Эту задачу можно решить тремя способами.
Способ 1 - платный
и убрав директиву вначале текста страницы HTML
Длина маршрута записывается скриптом в отдельный тег с идентификатором "dist", для того, чтобы потом было удобней парсить.
Отображение маршрута на карте не реализовано для повышения производительности. В этом примере карта вообще не нужна для отображения, поэтому в своих разработках вам придётся подумать как её скрыть. К сожалению, нерисовать карту нельзя. Длина не вычислится.
Если вынести операцию получения длины на отдельную базу и опубликовать на ней веб сервис, то можно реализовать псевдо вычисление на сервере. База пользователя будет обращаться к веб сервису, передавая в него точки маршрута. После этого каждые n секунд будет опрашивать веб сервис на появление в нем результата вычисления.
В базе, с опубликованным веб сервисом, должен быть всегда запущен клиент.
При получении точек маршрута web-сервис запишет их как входящее задание на вычисление, например, в свой регистр сведений. Клиент каждые m секунд будет опрашивать регистр сведений на получение новых заданий. При появлении таких - берет первое (самое старое) невыполненное задание и начинает рисовать карту на своей форме. После отрисовки - возвращает результат в регистр сведений.
Примерно так:
Способ 3 - возможно, лучше всех
В предыдущем способе формируется текст страницы HTML для выполнения расчёта длины маршрута на клиенте средствами браузера. Этот текст можно попробовать использовать на сервере, применив COM-объект "AltBrowser.Browser". Применив методы простого парсинга можно получить значение из контейнера div и использовать в 1С.
Этот способ в данной статье не рассматривается.
Заключение
Все сложные операции с формированием текста HTML страницы карты и методами взаимодействия с сервисом Яндекс.Карты в нашей обработке имеют открытый код, который всегда можно доработать под свои нужды.
Обработка находится в составе конфигурации. Выложена целая конфигурация, так как в ней находится общая форма с примером использования обработки.
Чтобы использовать данную обработку, необходимо получить API-ключ Яндекса в Кабинете разработчика (ссылка на форме обработки).
В таблице "Адреса на карте" вбивается адрес (координаты определяются автоматически).
В таблице "Маршрут" добавляются автоматически из таблицы "Адреса на карте" (при выборе адреса галкой). Можно менять порядок строк маршрута.
При желание обработку можно будет доработать для своих нужд.
Тестирование производилось на платформе 8.3.13 и 8.3.15. Будет работать на любой платформе в обычном и управляемом приложении.
Обработка делает следующее:
- выводятся метки и прокладывается маршрут между метками.
- выводятся разноцветные метки, прокладывается маршрут между метками и подсчитывается расстояние при прокладке маршрута между адресами;
- выводятся метки, на нажатии которых высвечивается балун с содержимым;
- метки на карте группируются (кластеризуются) при уменьшении масштаба.
- построение маршрутов между двумя точками;
- возможно выбрать вид маршрута: автомобильный, общественный транспорт, пешеходный (пеший);
- при автомобильном маршруте есть возможность учитывать пробки.
Работа с Яндекс-картами в 1С (вывод меток, прокладка маршрута, отображение балуна, вывод меток в кластеры) (обычное приложение):
Работа с Яндекс-картами в 1С (вывод меток, прокладка маршрута, отображение балуна, вывод меток в кластеры) (управляемое приложение):
Работа с Яндекс-картами в 1С (вывод меток, прокладка маршрута, отображение балуна, вывод меток в кластеры) (обычное и управляемое приложение):
Специальные предложения
Автор запретил комментарии
Просмотры 6429
Загрузки 43
Рейтинг 9
Создание 13.01.20 10:50
Обновление 23.02.20 20:44
№ Публикации 1178717
Конфигурация Конфигурации 1cv8
Операционная система Не имеет значения
Вид учета Не имеет значения
Доступ к файлу Абонемент ($m)
Код открыт Да
См. также
Конвертация любых адресов, написанных в свободной форме, к ФИАС Промо
Допустим у нас есть база с адресами клиентов, и написаны они могут быть как душе угодно. С опечатками, без индексов, без разделителей, в совершенно любом формате. Вот было бы здорово иметь функцию, которая одним нажатием кнопки преобразует любую белиберду к строгому представлению адреса по ФИАС? Восстановит индекс, исправит опечатки и вернёт на 100% валидный адрес. Для всех, кто мечтательно сказал "ДА!", выкладываю данную обработку.
2 стартмани
30.06.2020 11177 100 XilDen 15
Сервис push-уведомлений для 1С (Push Notification Service For 1C - PNS4OneS)
1 стартмани
02.02.2022 4561 18 ltfriend 5
Создание интерактивных обучающих курсов с помощью Vanessa Interactive
Приветствую Вас, коллеги. Сегодня Вам предлагается рассмотреть технологию создания интерактивных обучающих курсов, системы Onboarding, интерактивной справки для любых конфигураций разработанных на базе платформы 1С при работе в web клиенте. Прошу посмотреть ролик, кому неинтересно, как это работает, можно дальше не читать. Тестировалось на 1С:Предприятие 8.3 (8.3.20.1646).
1 стартмани
02.02.2022 3239 0 Viktor_Ermakov 2
Универсальный метод, html шаблоны, страницы с авторизацией и без, многоязычность, страница авторизации, etc.
1 стартмани
22.01.2022 4410 7 vl-sher1 29
Модуль обмена с QIWI Промо
Компании, которые используют систему моментальных платежей QIWI, ценят ее за удобство по скорости выплат и для платежей по запросу. Но такие переводы сложны для учета, а при большом объеме проводимых операций отнимают много времени и превращаются в дополнительную головную боль. Мы сотрудничали с компаниями, которые отправляют большое количество платеже на QIWI, и часто слышали боль бухгалтеров о том, как им сложно работать с такими переводами. Поэтому мы автоматизировали выплаты через QIWI в 1С и создали модуль интеграции 1С c API QIWI Wallet и QIWI TopUp.
5 стартмани
25.05.2020 10641 1 Neti 10
Расширение конфигурации для Web-доступа к 1С (1С в роли back-end)
Для реализации того, чтобы 1С формировала и отдавала страницу, которую можно было бы открыть через браузер было написано расширение, которое позволяет публиковать из 1С произвольные ресурсы, будь то API, сайт или изображения / прочие файлы.
1 стартмани
01.04.2021 11842 13 SaschaG 4
Работа с картами в 1С на примере бесплатной библиотеки Leaflet
Разработка функционала отображения и выбора пунктов доставки на карте прямо в 1С с помощью бесплатной библиотеки Leaflet. Тестирование производилось на платформе 8.3.15.1534 на тонком клиенте.
1 стартмани
31.03.2021 14953 49 Parsec1C 18
1 стартмани
24.03.2021 10653 17 ltfriend 12
BIM: взаимодействие с платформой Autodesk Forge Промо
Предлагаемый пример демонстрирует широкие возможности для взаимодействия «1С:Предприятие» с платформой Autodesk Forge и позволяет вам получить базовые представления о применения технологий информационного моделирования в строительстве. Поддерживаются все версии платформы от 8.3.12 и выше до 8.3.18.
1 стартмани
25.11.2020 58126 13 kandr 3
Загрузка данных о продажах ОЗОН из API Ozon и Отчетов в формате *.xlsx в документ "Отчет комиссионера"
Обработки предназначены для следующих конфигураций: Бухгалтерия предприятия, редакция 3.0; Управление нашей фирмой, редакция 1.6; Управление торговлей, редакция 10.3; Управление торговлей, редакция 11; Комплексная автоматизация 2; ERP Управление предприятием 2
Внимание! Перед использованием обработки следует ознакомиться с здесь почитайте комментарии), либо предлагают решение с получением ключа карт. Во многих публикациях для отображения карт используется "Поле HTML документа" на форме 1С. Этот объект уже давно устарел и не поддерживает возможности HTML 5. В итоге, чтобы отобразить страницу на форме 1С приходится долго "плясать с бубном".
Программист, которому впервые дали задание вывести на карту точку будет тратить лишнее время и СтартМани на поиски лучшего варианта, корректировать реестр Windows, как предложено здесь и в итоге столкнётся с тем, что стабильного рабочего варианта найти не удастся.
Мы предлагаем вариант решения, который будет работать везде и без специальных условий. Мы принципиально не используем объект WebBrowser Control, чтобы всё работало всегда и у всех.
Пример 1. Метка на карте
Для добавления метки на карте достаточно знать её координаты.
Результат нажатия на кнопку “Показать метку” будет таким:
Как это работает?
Для кнопки “Показать метку” назначена процедура:
Функция для получения текста HTML:
Все экспортные функции и процедуры обработки описаны вспомогательными комментариями, поэтому будет легко догадаться о назначении параметров.
Функция “ДобавитьМетку” добавляет на карту метку с описанием.
Если необходимо на одной карте показать сразу несколько меток, то функцию “ДобавитьМетку” нужно вызывать несколько раз.
Для отображения результата составленного текста HTML используется процедура “ПоказатьНаКартеНаКлиенте”.
При выполнении этой процедуры в первый раз - появится окно с выбором программы-браузера. После выбора - откроется окно с картой.
Пример 2: Маршрут на карте
Процедура кнопки “Показать маршрут”:
Пример 3: Получение координат из адреса (геокодирование)
Не всегда в типовой базе 1С имеются данные о координатах пункта назначения. Но зато есть адрес, представленный стройкой. Иногда даже заполненный по всем правилам КЛАДР (ФИАС).
Для таких случаев имеется возможность преобразовать строку почтового адреса в координаты: долготу и широту.
Функция “ПолучитьКоординатыПоАдресу” выполняет обращение к сервису геокодирования и разбирает ответ в структуру, содержащую координаты и адрес, для которого были определены координаты.
Пример 4. Расчет длины пути маршрута
Этот пример появился в версии 2.0 нашей обработки.
Эту задачу можно решить тремя способами.
Способ 1 - платный
и убрав директиву вначале текста страницы HTML
Длина маршрута записывается скриптом в отдельный тег с идентификатором "dist", для того, чтобы потом было удобней парсить.
Отображение маршрута на карте не реализовано для повышения производительности. В этом примере карта вообще не нужна для отображения, поэтому в своих разработках вам придётся подумать как её скрыть. К сожалению, нерисовать карту нельзя. Длина не вычислится.
Если вынести операцию получения длины на отдельную базу и опубликовать на ней веб сервис, то можно реализовать псевдо вычисление на сервере. База пользователя будет обращаться к веб сервису, передавая в него точки маршрута. После этого каждые n секунд будет опрашивать веб сервис на появление в нем результата вычисления.
В базе, с опубликованным веб сервисом, должен быть всегда запущен клиент.
При получении точек маршрута web-сервис запишет их как входящее задание на вычисление, например, в свой регистр сведений. Клиент каждые m секунд будет опрашивать регистр сведений на получение новых заданий. При появлении таких - берет первое (самое старое) невыполненное задание и начинает рисовать карту на своей форме. После отрисовки - возвращает результат в регистр сведений.
Примерно так:
Способ 3 - возможно, лучше всех
В предыдущем способе формируется текст страницы HTML для выполнения расчёта длины маршрута на клиенте средствами браузера. Этот текст можно попробовать использовать на сервере, применив COM-объект "AltBrowser.Browser". Применив методы простого парсинга можно получить значение из контейнера div и использовать в 1С.
Этот способ в данной статье не рассматривается.
Заключение
Все сложные операции с формированием текста HTML страницы карты и методами взаимодействия с сервисом Яндекс.Карты в нашей обработке имеют открытый код, который всегда можно доработать под свои нужды.
Обработка находится в составе конфигурации. Выложена целая конфигурация, так как в ней находится общая форма с примером использования обработки.
Читайте также:
- 1с убрать нули в дробной части
- Драйвер для планшета самсунг gt p3110 для подключения к компьютеру
- Не работает аватан в опере просит переустановить флеш плеер
- 1с как ограничить ввод по строке
- Как отменить слияние веток git visual studio