Интеграция 1С и 2ГИС

Опубликовал Егор Иванов (Infactum) в раздел Обмен - Обмен с другими системами

Возникла необходимость визуализировать клиентскую базу. Выбор пал на 2ГИС.
Результатам стала относительно универсальная обработка для формирования слоя с собственными данными.

Обработка содержит алгоритм и ряд процедур для формирования KMZ файла минималистической структуры:

  1. Формирование стилей отображения меток на карте
  2. Добавление новых меток
  3. Формирование слоя
  4. Компоновка KML слоя и сопутствующих файлов в KMZ

Полноценный пример, который вы можете скачать, был создан для решения более конкретной задачи. Нужно было вывести всех клиентов из базы на карте с учетом их статуса. Статус формировался на основе выполнения ряда условий. Адрес клиента должен быть заполнен по КЛАДРу. В случае, если в одном здании содержится несколько контрагентов, то для них создается единая метка на карте. Общий вид результата можно увидеть на карте.

Скачать файлы

Наименование Файл Версия Размер
Обработка выгрузки
.epf 15,77Kb
07.08.12
293
.epf 15,77Kb 293 Скачать

См. также

Комментарии
1. Доржи Балбаров (Angeros) 08.08.12 04:06 Сейчас в теме
Почему решили работатьс дубль гис а не с яндексом? яндекс поддерживает больше городов.
2. Егор Иванов (Infactum) 213 08.08.12 05:38 Сейчас в теме
(1) Angeros, у 2ГИС карты актуальнее. По крайней мере в моем городе. Помимо этого 2ГИС - это оффлайн режим.
3. Доржи Балбаров (Angeros) 08.08.12 05:51 Сейчас в теме
Согласен... а моего родного там нету. Кстати а как насчет маршрутизации, существует ли возможность через механизм маршрутизации 2гиса проложить маршрут в нем из 1с.
4. Сергей (seermak) 654 08.08.12 06:26 Сейчас в теме
При повторном открытии информация дублируется((((( В параметрах надо включать дополнительные слои - а то ничего не увидишь
5. Егор Иванов (Infactum) 213 08.08.12 06:58 Сейчас в теме
(4) seermak, Так слой и не надо каждый раз открывать. Нужно в 2ГИС в дополнительных слоях добавить обновляемую группу. Файлом для обновления будет ваш слой.
Например в моей базе выгрузка производится регламентированным заданием. В результате я всегда имею актуальную информацию на карте.
Плагин для дополнительных слоев конечно нужно. Кроме как через плагины, взаимодействовать с 2ГИС не получится. Так как этот плагин входит в стандартную поставку, не вижу причин его не использовать.

(3) Angeros, Прокладку маршрута сделать можно, но тогда придется написать свой плагин, который будет служить прослойкой между 1с И 2ГИС. Можно еще воспользоваться онлайн API, но лицензионное соглашение запрещает его использование в бизнес решениях.
6. Сергей (seermak) 654 08.08.12 09:49 Сейчас в теме
(5) да, так гораздо лучше))))
7. qweasd qweasdzc (serega3333) 08.08.12 15:37 Сейчас в теме
прикольно, надо будет попробовать, только получается в пределах одного города можно смотреть? если по всем россии контрагенты, лучше я так понимаю яндексом пользоваться
8. Егор Иванов (Infactum) 213 08.08.12 15:40 Сейчас в теме
(7) serega3333, верно. Одновременно только один город.
9. Алекс Ю (AlexO) 115 08.08.12 15:47 Сейчас в теме
10. kiril lipatov (kilokilo) 16 08.08.12 16:57 Сейчас в теме
11. Дмитрий Ярославцев (DimanYa) 09.08.12 09:31 Сейчас в теме
Просто отлично, сейчас скачаю и попробую на нашей базе
12. Анна Е (al461sy) 30 09.08.12 10:12 Сейчас в теме
очень полезная вещь, будем тестировать!
13. Сергей (seermak) 654 09.08.12 17:05 Сейчас в теме
протестировал - работает нормально, единственное адреса править приходится - адресные сокращения убирать(((
14. Егор Иванов (Infactum) 213 09.08.12 17:59 Сейчас в теме
(13) seermak, так там же была для этого функция с фееричным названием "ДопилитьНапильником". Но к сожалению универсальной ее сделать не получилось.
15. Сергей (seermak) 654 09.08.12 18:29 Сейчас в теме
(14) вот и пилю...... По Москве еще проблема - с трудом понимает дома с к (19к1 и т.д.) в КЛАДре они все слитно пишутся а в ГИСе раздельно - но это уже глюки ГИСа....
16. f f (fnv) 13.08.12 11:47 Сейчас в теме
(14) Infactum, "ДопилитьНапильником" действительно феерично))))
Автору публикации спасибо.
17. Alexey (zarius) 145 13.08.12 12:03 Сейчас в теме
Для оффлайна советую посмотреть в сторону SAS Planet
18. Егор Иванов (Infactum) 213 13.08.12 18:39 Сейчас в теме
(17) zarius, Как уже было отмечено выше для некоторых городов, в том числе моего, карты 2ГИС актуальнее чем у гугля, яндекса и прочих.
Если рассмотреть предложенный вами SAS.Planet, то он вроде как не может скачать карту с сайта 2ГИС. Да и смысл это делать если у них уже есть приложение с оффлайн режимом.
Ну и самое главное - не нашел, может ли SAS.Planet получать координаты дома (для установки метки) зная только его адрес.
19. Антон Васильев (AVVG) 15.08.12 09:52 Сейчас в теме
А скажите пожалуйста вроде нашел то что давно искал, тока если все точки из 1С расставим маршрут уже в 2Гисе проложить можно?
А так уже бомба а то вечно по географическому положению тока работают.
Спасибо большое
20. Антон Васильев (AVVG) 15.08.12 09:53 Сейчас в теме
21. Егор Иванов (Infactum) 213 15.08.12 11:49 Сейчас в теме
(19) AVVG, Можно. Есть варианты автомобильного маршрута и на городском транспорте. Про качество маршрута трудно что-либо сказать, сам редко пользуюсь.
22. Евгений Фербер (omut) 16.08.12 03:45 Сейчас в теме
Класс. Замечание только одно возникло: в принципе, то что 2ГИС не понял адрес, это еще пол-беды. А вот как сделать, чтобы это ее непонимание она озвучила? Т.е. создали слой, пользователь смотрит карту. И если адрес не распознается, то точка на карте не появляется. А хотелось бы, чтобы такие адреса где-то можно было увидеть и оперативно в 1С подправить неверные форматы-данные. В противном случае точки просто молча теряются.
23. Николай (echonok) 10 16.08.12 17:12 Сейчас в теме
Не могу понять, а как добавить слой в карту 2ГИСа? Плагины дополнительные какие-то нужно скачивать?
24. Егор Иванов (Infactum) 213 16.08.12 17:19 Сейчас в теме
(23) echonok, Нужный плагин устанавливается вместе с 2ГИС по умолчанию. Опять же по умолчанию 2ГИС сам открывает слои. Самостоятельно можно добавить нажав кнопку "Справочники - дополнительные слои" и далее в списке слева добавить каталог или обновляемый каталог (на ваш выбор).
25. Вадим Никонов (V.Nikonov) 113 16.08.12 20:49 Сейчас в теме
С городами (крупными) проблем нет. А что делать с мелкими городами? А особенно туго с мелкими населёнными пунктами... Получать метки на информационном слое по географическим координатам (Широта-долгота) можно?
26. Егор Иванов (Infactum) 213 16.08.12 21:29 Сейчас в теме
(25) V.Nikonov, 2ГИС это не карта всей России, как яндекс.карты или google maps. Нет там мелких городов и населенных пунктов (не считая пригородов и ближайшего окружения). Так что ваша проблема из другой области.
Тем не менее получать по координатам метку можно. Только эту возможность я не включал в обработку. Смысла нет, тут уже полно работ было, реализующих геолокацию на основе более подходящих типов карт.
28. Вадим Никонов (V.Nikonov) 113 17.08.12 08:23 Сейчас в теме
На Яндексе и Гугле нет подробностей для сельской местности (нет улиц и домов), но карта существует...
В моей ситуации есть ГИС-подсистема для ЭТП бегающих по клиентам для сбора заказов с КПК/планшетами. Оттуда я могу получить географические координаты и привязать их к точкам. Т.к. штатная подсистема просмотра ГИС-информации лицензирована (т.е. ограничено количество рабочих мест), то есть желание воспользоваться информацией (Фактические координаты ТТ) для просмотра на картах из 1с8:УТ... А ТТ находятся не только в областном центре для которого есть 2ГИС карта, но и по области.
Вторая сложность в том, что далеко не всегда Адрес доставки ТТ пишется в соответствии с КЛАДР. Едва удается добиться того, что бы уточняющие сведения дописывались к стандартному КЛАДР-адресу после адреса... Соответственно, любопытно, "ДопилитьНапильником" не сможет отбросить эти "суфиксы". Как сервис распознавания адреса переварит это излишек?
29. Вадим Никонов (V.Nikonov) 113 17.08.12 08:28 Сейчас в теме
Ещё вопрос про отбрасывание адресных сокращений. Как перевариваются сервисом ситуации с одинаковыми названиями Площади, Улицы, Переулка.. Ведь их Имя собственное может повторяться...
30. Яшин Антон (Anyxwar) 106 23.08.12 09:30 Сейчас в теме
В общем первый раз из 1с работаю с картами.Если автору не сложно то пожалуйста распишите алгоритм действий.Я думаю я такой не один буду.Т.к. методом народного тыка с лету не получилось
31. Егор Иванов (Infactum) 213 24.08.12 06:11 Сейчас в теме
(30) Anyxwar, Да там все элементарно.
Открываем модуль обработки, ищем функцию ПолучитьИсходныеДанные(). Вам необходимо описать свой алгоритм формирование ТЗ с исходными данными, а мою заглушку удалить.
ТЗ должна содержать следующую информацию: Город, Улицу, Дом, Корпус, Контрагента, Информация (просто комментарий), Телефонный код города и телефон, 2 условия (определяют каким цветом выводится информация: красный, желтый, зеленый). Все адреса заполняйте по КЛАДРу.
Так же надо поправить строку с указанием города в заголовке слоя 2ГИС. У меня там написано "Челябинск", так что по этой фразе можете легко в коде найти и исправить на свой. Либо слегка переделать алгоритм, чтобы он был более универсальным и брал город из исходных данных.
Все, теперь можно сделать слой и открыть в 2ГИС. Если не знаете как, смотрите прошлые мои комментарии.
Последнее о чем стоит упомянуть - возможноя разница между адресами в КЛАДР и 2ГИС в вашем городе. Такое можно определить только анализируя адреса контрагентов, которые не вывелись на карту. Для решения этой проблемы есть функция ДопилитьНапильником().
33. Яшин Антон (Anyxwar) 106 24.08.12 12:09 Сейчас в теме
34. Дмитрий Г (Дмитрий74Чел) 13 30.08.12 13:43 Сейчас в теме
(31) Infactum, добавьте описание подключения "для чайников", в описание обработки. Уже не один раз вас спросили.
35. Александр *** (a1ex4ndr) 03.09.12 02:57 Сейчас в теме
я тоже думаю, что описание подключения лучше в общем описании обработки искать, а не в комментариях к обработке...
36. Александр Кикабидзе (capshow) 06.09.12 16:11 Сейчас в теме
Какие примеры практического применения этой реализации?
Насколько я понял, это вывести в 1С оффлайн карту (адрес клиента, местонахождение склада...), когда нет интернета, верно?
А не собираетесь расширять функционал маршрутами, расчетом оптимальных? Или уже есть? Например, логистическим компаниям было бы очень удобно
37. Александр МАН (1977) 2 07.09.12 17:06 Сейчас в теме
Контрогентов, можно будедет видеть? Можно использовать для CRM....
38. Артем Ватан (v.a.ryag) 31 11.09.12 14:15 Сейчас в теме
В закладочки, надо обязательно скачать)