Автоматизированная установка координат объектов учёта

В версии R21 появилась возможность отображать объекты на географической карте. Для этого для каждого объекта нужно указать его координаты, что является очень трудоёмким для больших систем.

Для облегчения задачи мы подготовили утилиту SetNodeCoordinates, которая автоматически определяет координаты объекта учёта по его адресу и сохраняет их в системе.

Для запуска утилиты нужно использовать учётную запись пользователя, имеющего право на редактирование объектов учёта (или администратора ЛЭРС УЧЁТ).

Скачать утилиту можно во вложении к этому посту.

Исходный код доступен в примерах использования lers framework.

Запускать приложение нужно с тремя параметрами:
Адрес сервера ЛЭРС УЧЁТ
Порт сервера ЛЭРС УЧЁТ
Логин
Пароль
Название города

Пример вызова:

SetNodeCoordinates server 10000 "admin" "admin" "Хабаровск"

Утилита подставляет название города к адресу объекта и пытается определить его координаты с помощью сервиса nominatim. Если у вас объекты располагаются в нескольких городах, укажите город, в котором находится большинство объектов учёта. Координаты остальных объектов придётся подправить вручную.
SetNodeCoordinates.zip (516 KB)

После неудачной попытки выдало:
Необработанное исключение: System.IO.FileNotFoundException: Невозможно загрузить
файл или сборку “Lers.System, Version=3.0.0.0, Culture=neutral, PublicKeyToken=
null” или один из зависимых от них компонентов. Не удается найти указанный файл.

в SetNodeCoorinates.Program.Main(String[] args)

Скачайте архив и попробуйте ещё раз.

У нас на одном объекте задействовано 2 лицензии и 18 точек учета, выскакивает ошибка:

Ошибка установки координат объектов учёта. Превышено ограничение на количество точек учета в объекте учета.
Этот объект учета может содержать до 10 точек учета.
Увеличьте количество лицензий в объекте, либо удалите лишние точки учета или переместите их в другой объект учета.

Спасибо за ваше обращение. Изменения с исправлениями по данной ошибке войдут в R21.04.

А утилиту то подправьте сейчас, пожалуйста.

Спасибо.

Тут проблема несколько глубже и она не в утилите. Поэтому остается только ждать обновления.

Процесс прошел, обработано 790 объектов. Но на карте их по прежнему не видно.

Ну покажите какие координаты выставлены в свойствах объекта учёта хотя бы у одного объекта.

Может не по адресу, тогда прошу прощения, но зачем так сложно? Почему нужно использовать внешний инструмент, а не интегрировать эту функцию в ЛЭРС Учет? И сразу при заведение объекта определять координаты, а если ранее были не определить, то позволить это сделать групповой операцией?

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

P.S. Раздел Предложения по улучшению открыт круглосуточно.