Внедрение карты Google Maps в проекты 1С

04.02.16

Интеграция - WEB-интеграция

Данная разработка позволяет быстро получить в базе 1С функционал работы с картой Google.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
ПримерРаботыСКартой.epf
.epf 6,40Kb
145 1 850 руб. Купить
ОбщийМодуль.NSI_РаботаСКартой.Модуль.txt
.txt 7,02Kb
75 1 850 руб. Купить
ОбщийМакет.NSI_МакетКартыGoogle.Макет.txt
.txt 4,51Kb
74 1 850 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Для работы с картой вставляем в общий модуль (сервер, вызов сервера) конфигурации текст, хранящийся в файле "NSI_РаботаСКартой.txt", а в общие макеты - текстовый документ, содержащийся в "NSI_МакетКартыGoogle.txt".

Карта возвращается в виде HTML-кода готового для вставки в строковый реквизит формы, выведенный на форму в виде HTML-поля.

Заполняется данный реквизит следующим образом:

Карта = NSI_РаботаСКартой.ПолучитьКартуGoogle(ТаблицаТочек, ОтображатьИнфоокноПриНаведении); 

Параметры функции:

Таблица выводимых точек - таблица, созданная методом: ТаблицаТочек = NSI_РаботаСКартой.СоздатьТаблицуДляПередачиКоординат();

Таблица содержит следующие поля:

Широта - число, в поле должна быть передана широта в координатах Google

Долгота - число, в поле должна быть передана долгота в координатах Google

Цвет - строка, указание маркера, используемого для обозначения точки. Здесь может быть либо ссылка на маркер, начинающаяся с "http", либо название одного из цветов - gray, green, orange, purple, red, white, yellow, black, blue, brown. В первом случае выводится маркер, указанный по ссылке, во втором случае - маленькая капелька требуемого цвета с тенью.

Текст - строка. HTML-текст всплывающей подсказки.

НавигационнаяСсылка - строка. Навигационная ссылка на объект, открываемый при нажатии на маркер в случае, если карта сформирована на появление всплывающего окна по наведению мыши.

При обработке щелчков мыши можно использовать следующие данные, получаемые конструкцией - Элементы.Карта.Документ.getElementByID(ИмяПараметра).value 

Используются следующие параметры:

ref - Навигационная ссылка, переданная нажатым маркером (для случая, когда информационное окно всплывает автоматически при наведении). В случае щелчка по маркеру в таком режиме элементу в 1С передается нажатие на элемент с id = "ref".

CenterLat, CenterLong, Zoom - соответственно широта, долгота точки центра и величина зума окна карты

HelpText - если функция отображения информационного окна при наведении отключена, то при щелчке по маркеру (если инфополе не открыто) система обрабатывает клик по элементу с id="HelpText", а потом забирает из Элементы.Карта.Документ.getElementByID("HelpText").value сформированный текст инфоокна. Если инфополе уже открыто, то щелчок по маркеру его закрывает.

Показывать информационное окно при наведении - булево. Если Истина, то при наведении на маркер открывается инфоокно с текстом, переданном в поле Текст соответствующей точки таблицы, если Ложь, то отрабатывает механизм, описанный выше (для поля HelpText).

 

Немного путано, но основной функционал показан в файле "Пример работы с картой". Перед запуском обработки вставьте первые два файла в модуль и макет соответственно.

Вступайте в нашу телеграмм-группу Инфостарт

См. также

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь 1С:Предприятие 8 1C:Бухгалтерия 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM / LOGICSTARS. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM / LOGICSTAR разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    22203    32    24    

26

SALE! 15%

WEB-интеграция Программист Бизнес-аналитик 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Оптовая торговля, дистрибуция, логистика ИТ-компания Платные (руб)

Модуль "Экспортер" — это расширение для 1С, предназначенное для автоматизации процессов выгрузки данных. Оно позволяет эффективно извлекать, преобразовывать и передавать данные из систем 1С в интеграционную платформу Spot2D. Подсистема упрощает настройку, снижает количество ручных операций и обеспечивает удобный контроль данных.

17280 14688 руб.

20.12.2024    4382    22    4    

23

WEB-интеграция Программист Руководитель проекта 1С:Предприятие 8 1C:Бухгалтерия 1С:Франчайзи, автоматизация бизнеса Платные (руб)

Расширение значительно упрощает написание API на 1С. Веб программисты получают простой и понятный доступ к 1С. Описание API создаётся автоматически и представляется в виде удобном как для человека, так и для программной обработки. Основные преимущества: 1. Документация API создаётся автоматически. Удобна для программной обработки. 2. Изменить API столь же просто как настроить отчёт. Можно опубликовать существующий вариант отчёта. 3. Отчёты в API поддерживают параметры (Период, ДатаНачала и др.) 4. При создании простых методов не требуется изменять конфигурацию. 5. Поддерживается работа с планами обмена.<br/> 6. Возможно настроить отправку из 1С данных корреспондирующей системе, для случаев когда 1С сама "знает" какие данные нужно отправить. 7. После записи в 1С Ле Мурр может возвращать соответствие полученных идентификаторов созданным в 1С объектам данных.

36000 руб.

27.09.2024    10152    7    5    

11

WEB-интеграция Программист 1С:Предприятие 8 1С:Бухгалтерия 3.0 Бытовые услуги, сервис Платные (руб)

Внешняя обработка разработана для автоматизации передачи данных между сервисом Vetmanager с 1С: Бухгалтерия 3.0. Решение позволяет загружать документы и справочники из Ветменеджер в 1С:Бухгалтерию, сокращая время на ручной ввод данных и минимизируя ошибки.

12000 руб.

02.02.2021    20959    60    52    

38
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. CagoBHuK 33 22.08.12 09:52 Сейчас в теме
2. galich 166 22.08.12 11:38 Сейчас в теме
(1) CagoBHuK, указанная публикация - платная. В данном случае - упор был сделан на минимальное время внедрения в конфигурацию.
3. maxlenium 36 22.08.12 15:19 Сейчас в теме
Действительно публикаций было много, в т.ч. бесплатных. Без геокодирования обработка выглядит какой-то неполной.
4. galich 166 22.08.12 15:39 Сейчас в теме
Вначале было все сделано через геокодинг, но у гугла стоит ограничение на количество геокодируемой информации (максимум 10 запросов в секунду) + ограничение на количество операций геокодирования в день, в итоге на карту не выводилось более 10 точек. Было решено выполнять геокодинг при записи адреса, для чего отдельный веб-сервис написали. Данный механизм был опробован на выводе более 5000 точек, все отработало корректно.
Не претендую на первую публикацию по этой теме. Никого ведь не удивляет наличие десятка статей по консолям запросов. Что-то лучше в их статьях, что-то в моей, дело пользователя прочитать и выбрать, что ему нужно.
5. maxlenium 36 22.08.12 15:51 Сейчас в теме
(4) Понятно. Как упрошенная обработка - действительно стоящее решение. Геокод - это отдельная песня со своими премудростями.
6. V.Nikonov 124 29.08.12 15:47 Сейчас в теме
Кстати, геокодирование отвратно в маленких городах и для сельской местности!

Вот только интересно, кто сравнивал полноту баз адресов в различных источниках: Gugle, Yandex, и др.)
7. galich 166 29.08.12 16:10 Сейчас в теме
(6) V.Nikonov, по полноте не сравнивали. Знаю, что яндекс на данный момент ограничение на количество запросов геокодирования не установил, поэтому когда нужно было сопоставить 150 тыс. объектов за раз, пришлось воспользоваться сервисом яндекса.
Вопрос геокодирования для сельской местности решается сейчас только вручную :) Можно сделать отдельную обработку, которая по перемещению маркера на карте передает координаты выбранной точки и их записывать.
8. V.Nikonov 124 29.08.12 18:17 Сейчас в теме
(7) А хотя бы формат обращения к сервису для получения координат указываемой точки...?

P.S. Сельская местность частично разрешается за счет специализированных систем АСУМТП (Например, Оптимум-GIS от CDC, или Чикаго от "Системные технологии")... Там встроенная функция снятия координат с использованием КПК и недокументированные средства считывания координат из БД.
9. galich 166 29.08.12 18:35 Сейчас в теме
(8) V.Nikonov, https://developers.google.com/maps/documentation/javascript/geocoding
там есть примеры html-страниц с геокодингом.
http://api.yandex.ru/maps/doc/jsapi/2.x/ref/reference/geocode.xml - это для яндекса.
Там же описаны форматы ответов.
10. plastilin 8 22.11.12 22:05 Сейчас в теме
(7) у Яши ограничение на 25000 запросов в день... и только в некомерческих проектах
11. BTRVODKA 10 15.09.13 04:37 Сейчас в теме
Спасибо автору за разработку!
12. dmbal 710 02.11.13 18:12 Сейчас в теме
Как в этой форме изменить вид маркера?
13. galich 166 02.11.13 21:42 Сейчас в теме
14. galich 166 02.11.13 21:44 Сейчас в теме
Вместо цвета в структуре передайте адрес значка маркера, который Вам нужен.
15. dmbal 710 02.11.13 22:18 Сейчас в теме
Мне нужны маркеры как на других картах, покрупнее и с буквами A B C ... :) Как их получить??
16. galich 166 02.11.13 23:53 Сейчас в теме
(15) dmbal, попробуйте следующую строку:

http://chart.googleapis.com/chart?chst=d_map_spin&chld=1|0|FFFF42|12|b|F|S

Синтаксис (переводить лень было - думаю, тут английский вполне прозрачен)

chst=d_map_spin
chld=<scale_factor>|<rotation_deg>|<fill_color>|<font_size>|<font_style>|<text_line_1>|...|<text_line_n>

<scale_factor>
A scaling factor to specify the pin size. This is a positive floating point number where 0.5 is the size of unscaled pins. 0.25 would be half that size, 1 would be twice that size, and so on.

<rotation_deg>
The rotation of the pin, in degrees. Positive and negative values are allowed. Specify 0 for a vertical pin.

<fill_color>
The bubble fill color, as a six-digit HTML hexadecimal color.

<font_size>
The text font size, in pixels.

<font_style>
Either '_' (underscore) for normal text or 'b' for boldface text.

<text_line_1>...<text_line_n>
One or more lines of text, delimited by | characters.

Основные цвета
Red: FC6355 Teal: 55D7D7 Yellow: FCF356 Purple: 7D54FC Pink: E14E9D Orange: EF9D3F Black: 000000 Brown: 9E7151 Gray: A8A8A8 Dark blue: 0336D1 White: ffffff

В принципе, можно и любые другие из палитры RGB использовать.

Если хочется с другими видами баллонов поэксперементировать - читайте тут
17. galich 166 02.11.13 23:56 Сейчас в теме
Блин, все угловые скобки infostart выкинул из текста - полный текст ответа лучше прочитать в своем вопросе, щелкнув по Ответили: (16) :)
18. dmbal 710 03.11.13 12:55 Сейчас в теме
В "читайте тут" то, что мне нужно называется Shadowed Icons, пример приведенный тоже прикольно, но очень крупно :( Хочется Shadowed Icons.
19. galich 166 03.11.13 13:49 Сейчас в теме
Так поставьте 0.75 вместо 1 в скейле и будет щасте ) а с shadowed icons все хорошо, кроме того, что они не масштабируются. А в целом по интернету таких наборов иконок много на любой вкус и цвет. Попробуйте в гугле набрать google maps marker, первые пятнадцать ссылок на разные реппозитории направят.
20. dmbal 710 03.11.13 13:57 Сейчас в теме
УРА!!! получилось! спасибо за публикацию и помощь. Поставил бы еще один плюс, если б мог!
Для отправки сообщения требуется регистрация/авторизация