Карты в ПланФиксе

Привязка задач к картам – штука соблазнительная, очень уж много всяких полезных штук можно выкрутить с помощью такой связки. Неудивительно, что команда ПланФикса два месяца не могла оторваться от работы над этим функционалом. Но все равно нужно говорить “стоп”, слезть с глобуса и дать вам самостоятельно покрутить то, что уже работает 🙂

Хватит кататься, дай людям попробовать!

Давайте посмотрим, как это выглядит на текущий момент.

Новый тип поля “Местоположение”
Теперь в задачи (а также, контакты, проекты, справочники и так далее) вы можете добавлять поля нового типа Местоположение. Суть этого поля в том, что вводите вы в него адрес, а получаете на выходе точку на карте. Выглядит это примерно так:

Поле типа Местоположение позволяет отображать задачи, контакты, проекты и другие объекты на карте

Обратите внимание, это отдельный, новый тип поля. Существующие адреса, которые вы хранили ранее в текстовом формате (например, в стандартном поле “Адрес” в карточке контакта), автоматически на карте отображаться не станут. Если у вас есть необходимость видеть на карте тот или иной объект, вам нужно будет осознанно добавить в него поле типа “Местоположение” и заполнить адресом, который распознает Google. Подсказка: можно сделать такое заполнение массовым действием, выбрав вариант “Установить значение поля из другого поля/задачи”.

Задачи на карте
Для списков задач мы сделали новый вид отображения с названием, аналогичным названию нового типа поля – “Местоположение”. Теперь любой список задач может быть отображен на карте:

Новый вид отображения задач на карте - Местоположение

Конечно, для отображения на карте в задачах должно быть поле типа “Местоположение”. Такие задачи имеют в списке узнаваемый отличительный знак и привязаны к введенному в это поле адресу:

Задачи, имеющие поле типа "Местоположение", могут отображаться на карте

Если кликнуть на геозначок на карте, всплывет название задачи. В моем случае название содержит марку устанавливаемого кондиционера и адрес установки. Сам список задач тоже будет спозиционирован на эту задачу:

Клик на карте открывает название задачи и позиционирует ее в списке задач фильтра

Цвет значка, кстати, определяется цветом статуса задачи. Так можно отслеживать выполнение заказов на установку:

Цвет значка задачи на карте определяется цветом ее статуса

Маршруты
ПланФикс не только показывает задачи на карте, но и умеет строить маршруты между ними, отображая общую протяженность и ориентировочное время на дорогу:

Маршрут, построенный по задачам на карте

Порядок точек в маршруте определяется порядком задач в списке – точке А на карте маршрута соответствует первая задача списка. Соответственно, вы можете управлять порядком перемещения по маршруту, перетаскивая задачи на нужное место или сортируя их по какому-то актуальному признаку.

Чтобы сделать работу с маршрутами удобнее, мы строим их внутри группы задач. Это означает, что вы можете строить маршруты по нужным вам условиям. Например, я ввел в шаблон задачи-заказа кондиционера поле “Район” и группирую заказы по районам города:

Группировка по нужному признаку позволяет строить маршруты внутри группы

Это в том числе помогает построить удобный маршрут бригады установщиков в рамках одного района, не мотая их по всему городу:

Маршрут бригады построен по одному району города

Но вообще подходы могут быть разными – например, вы можете сгруппировать задачи по исполнителю и строить удобный маршрут исходя из этого. Ну и так далее, думаю общая канва уже понятна.

Маршрут по каждой группе выводится своим цветом – обратите внимание на этот кружок возле названия группы:

Маршрут для каждой группы задач выводится другим цветом

Если на карте слишком много маршрутов и это вас путает, можно отключать лишние кликом на этот значок. Повторный клик опять включит отображение маршрута этой группы на карте.

Когда маршруты строятся по группам, в рамках каждой группы отображается его длина и время прохождения автотранспортом:

Длина маршрута и время его прохождения отображается рядом с названием группы

А клик на любой фрагмент маршрута покажет аналогичную информацию конкретно для этого “перегона”:

Клик на фрагмент маршрута показывает его протяженность и время, необходимое для проезда

Вот где-то примерно тут мы решили остановиться и выкатить все эти картографические изыски на вас, чтобы дальнейший путь развития этого функционала определять уже совместно 🙂

Нюансы и тонкости

  • Чтобы все это заработало, вам нужно подключить интеграцию с картографическими сервисами так, как это описано в справке.
  • На текущий момент отображение объектов и маршрутов поддерживаются на Google Maps и Open Street Maps. Знаю, что вы обязательно спросите про Яндекс.Карты, но с ними пока не получается, в силу особенностей лицензирования Яндексом такого использования.
  • Какую бы карту вы ни выбрали для отображения, вам обязательно придется подключить сервисы геокодирования от Гугла так, как это описано в справке. Именно они используются для превращения текстового адреса в геокоординаты и построения маршрутов. Если вы все сделаете правильно, то год (или 300 долларов, зачисленных добрым Гуглом на ваш счет) будете пользоваться всем этим счастьем совершенно бесплатно. Потом Гугл попросит свою копеечку. Такой расширенный пробный период позволит вам четко понимать, сколько это стоит – Гугл дает достаточно качественную статистику использования своих API, в том числе в деньгах помесячно. И (что важно) обещает не брать автоматом денег после того, как лимит пробного периода закончится – только вы сами сможете перейти на платное использование API, если увидите в этом реальную пользу для своего бизнеса.
  • Что касается политики самого ПланФикса, то у нас интеграция с картографическими сервисами доступна для всех платных, премиум- и пробных аккаунтов, без каких-либо дополнительных ограничений.

Все, я закончил этот длиннющий пост и могу отдохнуть 🙂 А вас, как обычно, прошу подключить карты в своих аккаунтах, подумать о том, как они помогут сделать вашу работу более эффективной, и поделиться с нами тем, чего для этого не хватает. Ну и заодно сообщать нам в Службу поддержки о найденных ошибках и неточностях в работе этого функционала.

59 комментариев

  1. А в справочниках этот тип поля можно использовать?
    И аналогично фильтровать подобным образом надо карте. ?

    У меня база объектов в справочнике. Если их можно отображать на карте, то это будет просто бомбически.

    И ещё клево если можно будет создавать внешнюю ссылку. Допустим объекты которые были закрыты нами (портфолио) можно автоматически транслировать на сайте.

    1. В справочниках использовать можно, но в них (и во всех других объектах, кроме задач) пока реализовано только отображение в карточке объекта, а отображения в списке и построения маршрутов нет. Решили обсуждать это на живых кейсах и потом реализовывать, чтобы не заниматься работой, которая никому не понадобится. Так что напишите в Службу поддержки, расскажите чуть подробнее о том, как планируете это использовать, обсудим и запланируем.

      По ссылке тоже нормальная мысль. Периодически звучат идеи вытаскивать какую-то информацию из недр ПланФикса наружу и демонстрировать ее миру. Может как раз с карт и получится начать. Но тут тоже нужен рисерч.

  2. Есть ли интеграция этого функционала с календарем гугл? Чтоб мой водитель, не имеющий доступа в пф, мог двигать в своем календаре события, и видеть перестроенный с помощью новой интеграции календарь задач.

    1. Тут нужно четкое понимание, кто что двигает, на что это влияет и что хочется увидеть в итоге. Пока у меня оно не сложилось. Если у вас оно есть – напишите, пожалуйста, поподробнее в Службу поддержки, мы обсудим и определим, реально это или нет.

      1. Написал в техпод, и сюда запостю, вдруг кто что добавит, или просто плюсанет/минусанет.

        Кейс:

        Есть водитель, он ездит по маршруту. Он не работает в ПФ, у него есть телефон с гугл календарем. Я накидываю ему задачи, где и примерно когда он должен появиться. Я в состоянии ему накидать столько, что он и за 24ч. не сможет управиться. Поэтому я бы хотел накидывать куда то задачи и что бы мне было наглядно видно когда мой водитель будет в том или ином месте. И чтоб мой водитель в своем телефоне видел это, и чтоб мог управлять своим календарем. Например он вдруг задерживается на одном месте, он бы мог передвинуть в своем гугл календаре время окончания своей аналитики и АПИ гугл карт тут же перестроило бы его календарь с учетом времени на перемещение из одной точки в другую. Сейчас у меня есть планировщик https://am-zap.planfix.ru/?action=planner&id=709708&clb там уже ведется работа с моим водителем. Проблема в том, что ему приходится все пункты переносить вручную. Было бы волшебно, если бы при редактировании списка в этом планировщике, все пункты перемещались по временной сетке с учетом времени на перемещение из одной точки в следующую.

  3. Здравствуйте,Дмитрий!
    Шикарная новость!
    Очень хочется верить,что и я ,немного,приложил руку к этому,так как нам очень необходим был этот функционал!
    Радует то,что вы,как обычно,сделали эту интеграцию очень красиво,функционально,и по-планфиксовски-изыскано!
    не перестаю восхищаться вашим развитием и верностью принципам!Спасибо!

    1. Спасибо, Михаил – и за слова, и за реальную помощь в работе над этим функционалом. Мы действительно почерпнули из общения с вами много полезного, что в итоге вылилось в этот релиз.

      1. Я не напрашиваюсь на комплимент,поймите правильно,я искренне восхищен Вашим отношением к клиентам и подходом к решению задач!
        Повторюсь,получилось очень элегантно!
        Я надеюсь,с введением этой доработки,вы расширите армию своих клиентов,за счет тех,кто перемещается по городу!
        На мой взгляд,это очень расширяет функционал Планфикс и дает новые горизонты!
        Спасибо еще раз!

  4. В таком представлении нет наглядной картины, когда курьер/водитель/сотрудник, т.е. лицо передвигающееся по карте будет в том или ином месте, и сможет ли он обслужить весь маршрут в течении своего рабочего дня. Возможно какой то пункт/пункты нужно перенести на след день. И это наглядно можно увидеть только на дневном календаре.

      1. Золотые слова. Это первое, что приходит на ум и видится наиболее логичным. Но по какой-то причине разработчики решили пока это не делать.

  5. Добавил поле “Адрес” с типом “Местоположение”, но работает как-то странно, по клику на маркер ничего с картой не происходит и почему-то маркер рандомно показывается для задач у которых поле не заполнено, то есть часть задач с пустым полем Адрес с прозрачным маркером, часть с закрашенным красным. В карточке задачи с пустым полем адрес карта показывает на точку 0,0.

    1. Думаю, тут будет правильнее написать в Службу поддержки с примерами – это позволит разобраться, есть какая-то ошибка или просто поведение системы рамходится с ожиданиями.

    1. В общем-то, все как обычно, сортируем по любому нужному признаку – и как отсрртируется, так и маршрут построится. А если включить ручную сортировку, то можно будет перетаскивать задачи по одной, выстраивая желаемый порядок.

  6. DaData – нет, не слышали.

    Показ карты – это действительно хорошо. Непонятно только насколько хорошо оно покажется в зависимости от того как его введешь.
    То что нельзя пометить существующее поле как Местоположение – странно (или преобразовать поле из одного формата в другой). То что не смогли с Яндекс.Картами – тоже странно, но да там есть особенности.

    Как это может помочь? Только более наглядное представление информации. При этом по тем же установщикам … это доступно как и диаграмма ганта только в списке задач. Что касается логистики – пользы очень мало (то что рядом, совсем не значит, что быстрее), но наглядность может помочь.

    Но все же многим бы больше понравилась интеграция с DaData, чтобы и по имени и адресам были правильные подсказки (автоматическое заполнение пола, реквизитов компаний и банков …). При этом каждый сам там регистрируется … Формат адреса по КЛАДР (или ФИАС) часто важнее где он отображается.

    Ну и кроме гугла и яндекса есть еще много сервисов. Тот же 2GIS (который умеет показывать подъезды), возможно, был бы удобнее …
    Все равно спасибо, пока не очень понимаю как можно использовать, но начало положено.

    1. DaData – возможно, можно заставить работать через API.
      2Gis – уж побойтесь, какой-то местечковый проектик, о котором никто не знает, за пределами некоторых местечек.
      Я живу в Киеву, тут абсолютное большинство не знает даже слова такого, 2gis. При том, что они работают в Киеве, и карта у них есть.
      Абсолютное, подавляющее большинство сидит в Гугл картах.
      Ну в самом деле, не Яндекс.карты же подвязывать, или какие-нибудь Рамблер.Карты\Карты Мейл ру, и прочее.

      1. Яндекс карты сейчас больше востребованы. Они и точнее и лучше для стран СНГ.

        Но по большому счету немного странная реализация. В поле нужно хранить координаты. Все.

        При этом отображать адрес, а вводить или адрес (тот же Яндекс автоматом переведет в координаты), или сами координаты.

        Нужен интерфейс “подвигать маркер”, часто пункт назначения не всегда корректный адрес, а где-то рядом. Много применений, когда вообще нормальных карт нет.

        При этом по ссылке (ее легко сформировать) отображать карту с маркером (маркерами) по указанным координатам.

        Очень хорошо, что планфикс работает в этом направлении (правда я больше жду других реализаций от них), но эта реализация очень странная. Заточена под один сервис (зачем?), адреса никак не бьются ни с КЛадр да вообще ни с чем (да и гугл карты обычно не полные) …
        Да, с ними проще начать работать (хотя там тоже лицензионные ограничения есть), но что потом делать? Были бы координаты – есть API Яндекса вычислить и построить маршруты (и это уже логистика), да грубо можно быстро измерить расстояние и самому построить маршрут (и по этому полю сделать сортировку).

        DaData интегрируется крайне легко и просто. Подключаешь их библиотеку и назначаешь классы полям … и по сути все (есть небольшие детали). Планфиксу реализовать – неделя, плюс две потестировать …попивая кофе.

        Я вот по разному посмотрел, вообще не вижу как применять. Правда тут уже были комментарии кому это нужно (я не понимаю, как оно может использоваться нормально в таком виде, но за неимением лучшего …)

        1. Ну давайте разбираться, а то много в кучу накидано разного, легко запутаться 🙂

          1. Интеграция с dadata в плане получения дополнительных данных по введенному адресу/названию компании есть в планах. К картам она имеет опосредованное отношение, в основном мы это видим как средство заполнения полей контакта/задачи всякой дополнительной информацией по клиенту. Использование именно геокодинга dadata мы пока не считаем приоритетной задачей – в том числе и потому, что это не их собственный продукт, они используют данные Open Street Map. Ну и маршрутов не строят тоже, так что выигрыш сомнительный. А денег надо платить сразу, в отличие от Гугла.

          2. Проясню по Я.Картам. Если у нас будут запросы от клиентов, которым актуальна работа именно с ними и которые готовы платить от 620 т.руб в год за эту возможность – мы проработаем добавим их как альтернативный вариант. Это же касается 2GIS. На наш взгляд, порог довольно высокий, поэтому для первого этапа ввода карт мы такую задачу себе не ставили. Вообще, полезно изучить подход Яндекса к лицензированию коммерческого использования карт, это охлаждает пыл.

          3. Технически в поле хранятся совместно адрес + координаты. На текущий момент не получится ввести сразу координаты или скопировать именно координаты, но только потому, что мы на этапе проработки не увидели реальных бизнес-кейсов, когда это необходимо. будут кейсы – появится интерфейсная возможность работать напрямую с координатами, а не с понятным всем адресом.

          4. Преобразовать данные адреса, хранящегося в текстовом виде, в адрес с координатами можно при помощи массовых действий – они позволяют заполнить данные поля типа “Местоположение” данными из другого поля, например текстового поля “Адрес”. Допишу по этому поводу отдельный кусочек в основном тексте записи.

          Ну и самое главное, чего не следует забывать: это только первый шаг. Куда эту ветку функционала поведет дальше, не знает пока никто, в том числе и мы сами. Тут все как обычно в ПланФиксе: пользователи присылают реальные примеры бизнес-использования, команда обдумывает их и планирует следующий шаг развития. По другому никак, иначе рождается монстр, который в итоге никому не нужен.

        2. “Нужен интерфейс «подвигать маркер», часто пункт назначения не всегда корректный адрес, а где-то рядом. Много применений, когда вообще нормальных карт нет.”

          отличная идея, кстати! Например, в нашем городе в Гугл картах до сих пор нет целого микрорайона, было бы реально удобно “подвигать маркер”.

  7. Извините, не совсем понял про серсис Гугл.
    Google дает триал период на 1 год, после чего, нужно платить 300 долларов, верно? А если их не заплатить, то… То что?
    Отключится сервис карт?
    Что если регистрировать каждый год новый аккаунт в Гугл для этих целей, чтобы каждый раз триалом пользоваться?
    Или я что-то не понимаю?

    1. Они могут и раньше отключить. Там лицензионные ограничения свои (мне Яндекс в этом плане больше нравится, несмотря на то, что сам Яндекс я очень не люблю) и они, имхо, хуже чем в Яндексе. Корпорация добра …

      1. У Яндекса нет вариантов бесплатного использования API в коммерческих проектах. Тарифы авансовые, на год вперед, от 120к рублей. Плюс 500тыр, если хотите хранить геоданные у себя в системе (как мы делаем в гуглом), а не ходить каждый раз при обращении к карте в Яндекс за преобразованием адреса в гео. То есть, минимальный порог входа 620 тыр в год авансом.

        Если у вас есть другая информация – поделитесь, будет полезно.

    2. >> Google дает триал период на 1 год, после чего, нужно платить 300 долларов, верно? А если их не заплатить, то… То что?
      Отключится сервис карт?

      – Да, должны отключить. Дадут ли возможность регистрировать раз в год новый и использовать, не знаю. Сейчас они заманивают к себе клиентов, конкурируя с облачными сервисами других провайдеров, что будет через год – посмотрим.

      1. Какие условия у Open Street Maps?
        Честно говоря, они мне больше нравятся, чем Яндекс и Гугл.
        И не только из-за открытости.

        Яндекс.Карты (спасибо санкциям) не работают в Украине, да и за пределами РФ, РБ и Молдовы, слабо распространены.
        Карты многих стран у Яндекса просто отсутствуют.

        Google карты универсальнее, но часто их карты просто отвратительны. Я уже который год не могу добиться от Гугла, чтобы переименовал улицы (на карте стоят старые названия). Многих домов нет, и сложно добавить новое.

        OpenStreetMaps лишина этих недочетов.
        Но как у них с лицензированием – не знаю.
        Предполагаю, что должно быть заметно лучше, чем у Гугла и Яндекса.

        1. Сами карты Open Street Map можно использовать прямо сейчас – в настройках интеграции есть такой вариант. Подключение геокодинга (преобразования из текстового адреса в координаты) от OSM пока недоступно, они в принципе не предоставляют такой услуги на уровне сервиса, насколько я знаю – нужно только поднимать отдельный сервер и настраивать обновления данных на нем.

        1. Когда мы обсуждали такую возможность на этапе реализации, то решили, что не очень понятно, для чего это нужно, т.к. список задач+ карта занимают много места – практически, весь экран. Соответственно, в планировщик кроме них ничего особо и не засунешь уже.

          А Вас для чего карта именно в планировщике? Как планируете использовать?

          1. Мы занимаемся долгосрочной сдачей в аренду жилья. В управлении около 300 объектов.
            Есть отдел кто занимается сдачей. И у них есть свой планировщик, где удобно отображены все объекты в статусах “Сдать”, “Выселение” и “Забронировано”.
            И когда они общаются по телефону с клиентом хорошо бы видеть на карте свободные объекты, чтобы быстро подобрать нужный.
            Карту мы хотим добавить в конце планировщика, чтобы менеджер мог пролистнуть вправо и увидеть ее.

              1. Интересная идея, смотреть не от проекта, а через планировщик, это позволит более гибко отбирать задачи. И для начала сделать как в справочниках, без маршрутов, только метку на карте.
                Сделать отдельный вид элемента планировщика – карта, и фильтром туда тащить задачи и их поля типа “местоположение”. и все на большой карте отображать.

  8. Планируются ли интеграция с другим картографическими сервисами? Из за “блокировки” приема платежей из России не подключить гугл карты (((

    1. Тут не стоит рассчитывать на быстрое появление интеграций с чисто российскими сервисами. Более быстрый способ решить проблему – найти способ платить за границу, их с каждым днем все больше.

      Задача на интеграцию с российскими картографическими сервисами у нас в очереди тоже есть, ваш запрос я туда добавил. Но запросов пока не так много, поэтому приоритет у задачи невысокий и ждать придется долго, скорее всего.

      1. Странно, многие сервисы доставки, использующие те же сервисы гугл, прекрасно отдают координаты по API.
        Например, вот так :
        “address”: “Москва, ул. Покровка, 11”,
        “latitude”: “55.7592577”,
        “longitude”: “37.6436554”

        Причем они пишут в описании API: мы используем Google Maps API для геокодирования адреса.

Добавить комментарий