2.5. Работа с табличными данными
Таблица — совокупность связанных данных, хранящихся в структурированном виде в базе данных. Она состоит из столбцов и строк.
В системе поддерживаются следующие виды табличных данных:
Слои,
Таблицы с данными,
Справочники.
Слои отличаются от таблиц с данными и справочников наличием пространственной информации о расположении объектов (геометрии, координат объектов), которая позволяет отобразить их на карте. Таблицы с данными и справочники не содержат геометрию. В справочниках есть ограничение по количеству записей, так как они используются для облегчения работы с атрибутивной информацией по объектам и подгружаются в виде выпадающих списков. Помимо справочников, представленных в виде редактируемых таблиц, есть системные справочники. Они формируются автоматически на основе данных, введенных в систему (например, справочники пользователей, видов работ, приоритетов).
Создание и настройка связи со слоем осуществляется в «MapSurfer», а редактирование значений справочника или таблицы, а также заполнение атрибутов слоя возможно в «ActiveMap Messages» и «MapEditor».
Для работы с табличными данными следует перейти в раздел меню «Слои и таблицы». Откроется окно со вкладками «Слои», «Таблицы с данными» и «Справочник» (Рис. 2.88). Используя строку поиска, можно найти необходимую таблицу.
2.5.1. Слои
Во вкладке «Слои» можно включить отображение отдельных слоев и их групп, выбрать подложку (базовую карту) (Рис. 2.89). После проставления галочек во вкладке «Слои» объекты выбранного слоя отобразятся в окне «Карта заданий», во вкладке «Карта» панели информации по заданию, а также в окнах других слоев.
Чтобы открыть табличное представление слоя, необходимо кликнуть дважды по выделенной строке с названием слоя или нажать кнопку (Рис. 2.90).
Среди слоев выделяется группа сервисных объектов (объектов обслуживания). Принципы работы со слоями будут рассмотрены на примере сервисных объектов.
Объекты обслуживания (сервисные объекты) — слои, содержащие объекты интереса организации пользователя, с которыми связано осуществление ее деятельности. В «ActiveMap Messages» можно посмотреть все задания, прикрепленные к конкретному объекту обслуживания внутри слоя. При создании заданий с привязкой к таким объектам поля задания заполнятся автоматически согласно настроенному маппингу (соответствию атрибута слоя и поля задания), подробнее о создании заданий — в разделе Cоздание заданий в окне объектов обслуживания.
Работа с объектами обслуживания осуществляется в двух разделах меню:
«Слои и таблицы» — вкладка «Слои». Чтобы открыть табличное представление слоя (Рис. 2.91), необходимо кликнуть дважды по выделенной строке с названием слоя или нажать кнопку .
«Объекты обслуживания» — раздел содержит вкладки с названиями слоев объектов обслуживания и вкладку импорта новой таблицы с объектами из MS Excel. При переходе на любую из вкладок с названием слоя откроется табличное представление — окно со списком объектов выбранного слоя и картой с отметками их расположения (Рис. 2.91).
Данное окно предназначено для редактирования, добавления и удаления объектов, а также для создания заданий с привязкой к объектам обслуживания. Окно содержит следующие элементы:
Строка меню.
Область фильтра.
Таблица со списком объектов.
Панель инструментов карты.
Карта с отметками расположения объектов и слоями, подключенными в разделе меню «Слои».
При первом открытии окна все объекты слоя расположены в видимой области карты. По карте можно перемещаться с помощью кнопок и колесика мыши и клавиш клавиатуры (стрелки, знаки «+» и «-«). При закрытии окна слоя положение карты запоминается в рамках текущей сессии работы приложения. Благодаря этому при повторном открытии окна положение карты останется прежним.
2.5.1.2. Инструменты карты
В левом верхнем углу карты находится панель с инструментами:
— включить режима отображения информации по выбранному объекту, при условии, что включен слой (Слои -> Выбрать нужный слой). Режим подробно описан в пункте Вкладка «Карта».
2.5.1.3. Фильтры в окне слоя
Для облегчения поиска объектов можно использовать фильтры, сортировать строки таблицы и выбирать объекты на карте. Можно указать несколько условий фильтрации, добавляя обычные и комбинированные фильтры. Комбинированные фильтры устанавливают приоритеты для условий (аналог скобок). Для перемещения к результатам фильтрации на карте следует нажать кнопку «Вписать в карту» на панели инструментов. На рисунке Рис. 2.96 приведен пример результата использования обычных фильтров (Пиктограмма=Урны и Адрес=Агрономическая или Адрес=Шаляпина):
На рисунке Рис. 2.97 приведен пример результата использования комбинированного фильтра (Пиктограмма=Урны и (Адрес=Агрономическая или Адрес=Шаляпина)):
Для удаления значений, введенных в поле фильтрации, достаточно нажать «Очистить». Для полного сброса условий фильтрации необходимо нажать «Закрыть» слева от фильтра, а затем — «Применить», чтобы в таблице отобразились строки со всеми объектами.
Выбор объекта на карте осуществляется с помощью кнопок «Выбрать на карте» , «Выбрать на карте прямоугольником» , «Выбрать на карте многоугольником» и срабатывает как фильтр для списка объектов (после выбора на карте в таблице слева от карты отобразятся только строки с выделенными объектами — Рис. 2.98). Для того чтобы очистить результаты фильтра «Выбор на карте», нужно нажать «Закрыть» рядом с красной надписью «Выбрано на карте:». При этом очищаются только данные фильтра «Выбор на карте», результаты основного фильтра сохраняются.
2.5.1.4. Отчеты в окне слоя
При наличии связанных отчетов в строке меню таблицы слоя присутствует дополнительный раздел «Отчеты». У авторизованного пользователя должны быть права на данный отчет.
Для формирования отчета в таблице слоя можно предварительно выделить интересующие объекты и нажать на «Отчеты» (Рис. 2.99).
Откроется окно с перечнем доступных отчетов (Рис. 2.100). Id выбранных объектов отобразятся в поле ввода в открывшемся окне. Если требуется сформировать отчет по всему слою, то нужно выбрать все строки в таблице. Id можно ввести и вручную, через запятую в поле «id объекта слоя».
Далее следует нажать на кнопку «Создать отчет». В блоке «Готовые отчеты» отобразится процесс формирования отчета. Когда отчет готов, файл станет доступен для просмотра (Рис. 2.101, Рис. 2.102).
Если в параметрах отчета есть поля для id объекта, то сформировать отчет по выбранному объекту можно в его карточке (Рис. 2.103).
2.5.1.5. Создание объектов обслуживания
Поддерживается единичное создание и массовая загрузка новых объектов обслуживания.
2.5.1.5.1. Единичное создание новых объектов обслуживания
Для создания нового объекта обслуживания необходимо нажать «Добавить» в нижней части окна слоя сервисных объектов или отметить положение объекта на карте с помощью инструмента (Рис. 2.104).
После выполнения любого из этих действий откроется окно создания объекта обслуживания (Рис. 2.105). Отличие будет состоять только в отсутствии или наличии метки объекта на карте при открытии окна создания.
В окне создания необходимо:
Заполнить имеющиеся поля (включая наименование объекта) — ввести или выбрать из таблицы/выпадающего списка, если к слою прикреплены таблицы данных/обычные или системные справочники (подробнее в разделе Таблицы с данными и справочники).
Отметить/отредактировать положение объекта на карте или ввести координаты объекта вручную, нажав кнопку .
При необходимости можно прикрепить к объекту файлы, добавить ссылки на страницы (Рис. 2.106). Файлы можно добавлять путем перетаскивания из открытой папки.
Для завершения создания следует нажать «Сохранить». Созданный объект отобразится в таблице и на карте в окне слоя объектов обслуживания.
2.5.1.5.2. Массовое создание новых объектов обслуживания
Массовая загрузка объектов может осуществляться как путем создания новой таблицы, так и путем добавления в существующий слой объектов обслуживания. Можно импортировать как ранее сохраненные шаблоны слоев, так и оригинальные файлы с данными об объектах. Для сохранения шаблона слоя необходимо перейти в раздел «Импорт» окна слоя сервисных объектов, во вкладку «Сохранить шаблон с примерами». Откроется окно для сохранения шаблона. Следует заполнить и сохранить полученный шаблон. Во всех стандартных окнах выбора или сохранения файла запоминается путь, чтобы открыть ту же папку при повторном обращении.
Для массовой загрузки объектов в новую таблицу необходимо в главном окне Программы в разделе «Объекты обслуживания» перейти во вкладку «Импорт таблицы из MS Excel» и выбрать интересующий *.xlsx-файл. Откроется окно с настройками создания таблицы (Рис. 2.107). По умолчанию программа определит рабочий лист, с которого будут импортироваться данные, а также диапазон для загрузки. При необходимости можно указать другой диапазон (первая строка должна быть заголовком) и нажать «Пересчитать».
Далее в окне предпросмотра следует сопоставить колонки файла с типом данных в колонке и, при наличии, выбрать поле с адресом или геометрией (с географическими координатами):
получить координаты по адресу (для точечных объектов) — выбрать поле в формате адреса для последующего автоматического геокодирования;
выбрать колонку в формате GeoJson (для точечных, линейных и полигональных объектов);
выбрать объединенное поле широты и долготы (для точечных объектов) — координаты должны быть разделены запятой, а целая часть координаты от плавающей — точкой.
Одно и то же поле можно использовать как для указания координат, так и для заполнения какого-либо поля слоя в окне импорта через файл MS Excel. Если убрать тип импортируемых данных для колонки, нажав на крестик справа от названия типа данных, колонка не будет импортирована в систему.
Окно содержит 2 вкладки: «Основное» и «Стиль». Во вкладке «Основное» следует указать название создаваемой таблицы и поле заголовка, определить кластер и группу, к которым она будет относиться. По умолчанию название таблицы берется из наименования файла MS Excel, в качестве заголовка используется первое поле с типом «Строка». Значения по умолчанию можно изменить.
Во вкладке «Стиль» (Рис. 2.108) можно выбрать тип геометрии (точка, линия, полигон) и стиль отображения объектов на карте (для точечных объектов: форму геометрических символов, размер, прозрачность, основной цвет символа и обводки; для линейных: прозрачность, толщину, основной цвет линии и обводки; для полигональных: прозрачность, основной цвет фигуры и обводки).
После того как все значения отмечены, следует нажать «Загрузить» для старта импорта, «Закрыть» — для отмены. Если кнопка не активна, в нижней части окна отобразится сообщение о причинах заблокированного состояния кнопки «Загрузить». Данное сообщение отображается в окнах «Импорта/обновления заданий», «Импорта таблицы из MS Excel» и «Импорта/обновления объектов». Импорт невозможен, если не указана группа слоя (Рис. 2.109), если в импортируемой таблице есть несколько полей с одинаковыми названиями.
После успешного завершения импорта название нового слоя отобразится во вкладке «Объекты обслуживания». Для данного слоя автоматически будет настроено соответствие полей объекта и задания (заголовок задания будет браться из заголовка слоя, координаты объекта будут скопированы в задание, соответствие других полей настраивается отдельно). Текущий пользователь, загрузивший таблицу, будет обладать полным набором прав на просмотр, редактирование и управление таблицей. Также будут предоставлены права по умолчанию на просмотр объектов для всех ролей пользователей.
Для массовой загрузки объектов в существующий слой объектов обслуживания необходимо открыть окно слоя, в нем перейти в раздел «Импорт», во вкладку «Импортировать объекты из MS Excel» и выбрать интересующий *.xlsx-файл. Откроется окно предпросмотра с настройками импорта файла (Рис. 2.110), где можно указать импортируемые листы и диапазон ячеек, сопоставить колонки файла и слоя и выбрать поле с адресом для автоматического геокодирования или геометрией в одном из форматов: GeoJson (для точечных, линейных и полигональных объектов), объединенное поле или раздельные поля широты и долготы (для точечных объектов).
При совпадении названий колонок файла и слоя Программа произведет автоматическое сопоставление, которое можно отредактировать вручную. После указания всех настроек следует нажать «Загрузить» для старта импорта файла. Загруженные объекты отобразятся в окне сервисных объектов. Для отмены импорта следует нажать «Закрыть».
Важно
Заголовки колонок считываются с первой строки импортируемого *.xlsx-файла. Наличие заголовков обязательно для импорта.
Предупреждение
Перед началом загрузки данных в «ActiveMap Messages» необходимо закрыть импортируемый файл, если он открыт во внешних программах.
2.5.1.5.3. Копирование существующих объектов обслуживания
Для создания копии существующего объекта обслуживания следует выделить его в списке объектов или на карте и перейти в раздел «Инструменты», «Копировать» в окне текущего слоя (Рис. 2.111).
Выйдет сообщение о подтверждении копирования данных объекта (Рис. 2.112). Здесь же можно включить копирование файлов, прикрепленных к объекту.
После подтверждения копирования выйдет окно создания объекта, где можно отредактировать атрибутивную информацию, местоположение, добавить новые или удалить ранее прикрепленные файлы. Для завершения создания копии следует нажать «Сохранить», для отмены — «Закрыть».
2.5.1.6. Редактирование объектов обслуживания
Для редактирования объекта обслуживания следует щелкнуть дважды левой кнопкой мыши по названию объекта в списке, откроется окно изменения объекта (Рис. 2.113).
Окно «Изменение» содержит вкладки «Данные» и «Связанные задания». Кроме них могут быть дополнительные вкладки с названием связанных слоев.
Во вкладке «Данные» можно отредактировать атрибутивные данные, местоположение объекта на карте, ввести координаты объекта, если они не были введены ранее, добавить страницу, добавить, скачать или удалить прикрепленные файлы с помощью контекстного меню или кнопок в нижней части окна. Файлы можно добавлять путем перетаскивания из открытой папки. Кнопки «Скачать» и «Удалить» становятся активными после выбора одного или нескольких файлов.
Во вкладке «Связанные задания» можно просмотреть и отредактировать все задания, связанные с данным объектом обслуживания (Рис. 2.114). Для облегчения поиска можно воспользоваться фильтрами в левой части окна.
Если к объектам текущего (родительского) слоя привязаны объекты другого (дочернего) слоя, в окне изменения объекта обслуживания появится дополнительная вкладка с названием связанного слоя. Таких слоев (и вкладок) может быть несколько. Примером подобной связи является связь между слоем опор и слоем оборудования, расположенного на этих опорах, между слоем парков и урн, размещенных в парке. За связь между слоями отвечает поле с типом данных «Слой», настраиваемое в «MapSurfer» и заполняемое при создании объекта в дочернем слое. Во вкладке с названием связанного слоя отображается информация о привязанном объекте (Рис. 2.115).
Привязанных объектов может быть несколько. Для облегчения поиска по большому количеству объектов можно воспользоваться фильтром.
При этом в окне редактирования объекта дочернего слоя будет вкладка с названием связанного родительского слоя (Рис. 2.116).
При нажатии на название поля, отвечающего за связь между слоями, откроется окно редактирования связанного объекта в родительском слое (Рис. 2.115).
Общими для всех вкладок окна являются кнопки:
«Создать задание» — используется для создания заданий с привязкой к текущему объекту обслуживания (подробнее — в разделе Cоздание заданий в окне объектов обслуживания).
«Сохранить» — позволяет сохранить изменения, внесенные в объект обслуживания.
«Закрыть» — закрывает окно изменения.
Для массового редактирования объектов обслуживания необходимо:
Перейти в раздел меню «Экспорт» окна объектов обслуживания и выбрать пункт «Экспорт данных в файл MS Excel». Откроется окно для сохранения файла.
Открыть и отредактировать сохраненный файл.
Перейти в раздел меню «Импорт» окна объектов обслуживания, выбрать пункт «Обновить объекты из MS Excel» и указать отредактированный файл.
2.5.1.7. Удаление объектов обслуживания
Для удаления объекта обслуживания необходимо выделить его в списке однократным нажатием левой кнопкой мыши или на карте, предварительно нажав кнопку «Выбрать на карте» , «Выбрать на карте прямоугольником» или «Выбрать на карте многоугольником» , и нажать «Удалить» в нижней части окна. В списке можно выделить несколько объектов, используя клавиши «Ctrl» и «Shift» или сочетание «Ctrl+A» для выделения всех объектов в списке. После нажатия кнопки «Удалить» выйдет сообщение с предупреждением: «Вы действительно хотите удалить выбранную запись/выбранные объекты?». Для удаления следует нажать «Да», для отмены — «Нет».
2.5.2. Таблицы с данными и справочники
Работа с табличным представлением справочника и таблицы схожа с работой со слоем. Чтобы открыть его, необходимо в окне «Слои и таблицы» во вкладке «Таблица с данными»/«Справочник» найти интересующую таблицу (вручную или с помощью строки поиска), кликнуть дважды по выделенной строке с названием таблицы или нажать кнопку (Рис. 2.117).
Откроется окно (Рис. 2.118), поддерживающее единичное создание и редактирование записи, а также импорт и экспорт данных. Для отбора объектов по параметрам можно воспользоваться фильтром в верхней части окна.
Таблицы с данными и справочники, как правило, связаны со слоями и используются для облегчения заполнения атрибутивной информации при создании/редактировании объекта слоя. Создание и настройка связи со слоем осуществляется в «MapSurfer», а редактирование значений справочника или таблицы, а также заполнение атрибутов слоя возможно в «ActiveMap Messages» и «MapEditor».
Для заполнения атрибутов слоя при настроенной связи атрибута с таблицей данных следует нажать кнопку (Рис. 2.119), в открывшейся таблице выделить необходимое значение, а затем нажать кнопку (Рис. 2.120) и сохранить изменения в окне объекта.
Для просмотра сведений о выбранном объекте связанной таблицы данных следует нажать . В открывшемся окне, помимо основной информации, доступна вкладка с названием связанного слоя (слоев). При переходе на нее отображается список объектов, в которых используется выбранное значение (Рис. 2.121).
При настроенной связи атрибута со справочником (обычным или системным) следует выбрать значение из выпадающего списка, а затем сохранить изменения в окне объекта (Рис. 2.122).
Если используется обычный справочник, можно перейти по ссылке данного атрибута (для системного справочника такой возможности нет). Будет отображено окно выбранного в справочнике значения, станет доступна вкладка с названием связанного слоя (слоев). Вкладка содержит список объектов данного слоя, в которых используется выбранное значение (Рис. 2.123).