-
Описание платформы
- Общие сведения о CoGIS
- Компоненты и функциональные возможности платформы
- Возможности интеграции
- Технологии
- Импортонезависимость
- Полезные ссылки
- О разработчике
- Приложение А – CoGIS как корпоративная ГИС – Система для использования маркшейдерами и геологами нефтедобывающих предприятий
- Приложение Б – CoGIS как региональная ГИС – Единая картографическая система Ямало-Ненецкого автономного округа (ЕКС ЯНАО)
- Приложение В – CoGIS как муниципальная ГИС – Муниципальный портал «Мой Новосибирск»
- Приложение Г – CoGIS как муниципальная или региональная ГИС – Портал «Терраскоп»
- Руководство администратора по установке и настройке
-
Руководство по созданию картографических приложений
- Введение
- Основные принципы работы в Конструкторе
- Настройка Каталога карт
- Сервисы
-
Шаблоны Карточки объекта
- Настройки отображения Карточки объекта
- Настройки шаблона Карточки объекта
- Блоки. Общие настройки
- Блок Атрибуты
- Блок Связанные объекты
- Блок Дочерние объекты
- Блок Связанные объекты с атрибутами
- Блок Слабо связанные объекты
- Блок Файлы
- Блок Координаты
- Блок История изменений
- Блок HTML-код
- Блок Набор значений в строковом поле
- Кнопки. Доступные инструменты
- Кнопки. Дополнительные инструменты
- Кнопки. Элемент Стандартный инструмент
- Кнопки. Элемент Создание/сохранение
- Кнопки. Элемент Генерация отчета
- Кнопки. Элемент Вызов задачи сервиса геообработки
- Кнопки. Элемент Создание связанного объекта
- Кнопки. Элемент Создание объекта в другом слое
- Кнопки. Элемент Вызов JavaScript-кода
- Кнопки. Элемент HTML-блок
- Настройки условий видимости
- Настройка сообщения для недоступных элементов
- Использование созданного шаблона
-
Статистика, виджеты и плагины
- Виджет. Общие положения
- Виджет. Настройки отображения
- Виджет. Общие настройки блоков
- Виджет. Отображение содержимого блоков
- Виджет. Блок График
- Виджет. Блок Круговая диаграмма по строкам
- Виджет. Блок Круговая диаграмма по столбцам
- Виджет. Блок Диаграмма XY
- Виджет. Блок Расчетное значение
- Виджет. Блок Таблица с исходными данными
- Виджет. Настройки пересчета блока
- Виджет. Интерактив блока с картой
- Виджет. Блок HTML-код
- Виджет. Блок Страница со ссылкой
- Виджет. Блок Фильтрация слоя
- Виджет. Блок Кнопки фильтрации
- Виджет. Блок Генерация отчета
- Виджет. Блок Фильтр блоков
- Виджет. Блок Импорт данных из файла
- Виджет. Блок Кнопки создания объектов
- Виджет. Блок 3D-панорама из 360-градусных фотографий
- Виджет. Блок Вызов ИИ-агента
- Виджет. Блок Управление видимостью слоев
- Виджет. Блок Запуск инструмента геообработки
- Переход на сайт
- JavaScript-плагин
- Группа/список
- Отчеты
- Инструменты и настройка карты
-
Расположение инструментов на странице
- Использование панели инструментов Измерение
- Использование панели инструментов Рисование
- Использование инструмента Переход по координатам
- Использование инструмента Поделиться ссылкой
- Использование инструмента Загрузка данных из файла
- Использование инструмента Выгрузка данных
- Использование настроек карты
- Использование инструмента Печать карты
- Использование инструмента Избранное
- Использование инструмента Показать моё местоположение
- Использование инструмента Мини-карта
- Использование инструмента Шторка
-
HTML-кастомизация
- Отображение Каталога карт
- Скрытие меток и линий в 3D KML моделях
- Отображение виджета с помощью CSS-стилей
- Условная видимость виджета с помощью JavaScript
- Интерактив блока виджета с картой
- Кнопка Сохранить в Карточке объекта
- Настраиваемые кнопки в Карточке объекта
- Геопривязка 3D модели на основе GLB файла
- Дополнительные функции ИИ-ассистента
- ИИ-ассистенты (function calling)
- API
- Настройка карты для мобильного приложения
-
Правила SOE
- Назначение
- Управление возможностями SOE
- Добавление файла правил SOE
- Поиск правила SOE
- Плагины. Общие сведения.
- Редактирование объектов. Плагин Редактирование.
- Плагин ограничения на просмотр данных картографического сервиса
- Отслеживание истории изменений объектов
- Загрузка и выгрузка данных
- Галерея изображений
- Подсчет количества объектов в слое
- Расширенный поиск объектов. Гибкий поиск и ближайшие объекты.
- Запуск задач по расписанию
- Приложение А - Макросы, используемые в настройках
-
Руководство по публикации ГИС-сервисов
- Введение
- Начало работы в CoGIS Server Manager
-
Каталог сервисов
- Общие принципы
- Просмотр сведений о сервисе или папке
- Изменение статуса сервиса
- Панель инструментов сервиса
- Получение описания и адреса REST API для выбранного сервиса
- Навигация по Каталогу
- Добавление новой папки
- Удаление и копирование сервиса или папки
- Запуск и останов нескольких сервисов одновременно
- Поиск по Каталогу
- Фильтрация в Каталоге
- Настройка прав доступа к папкам
- Настройки папки
- Цветовые схемы и размер шрифта CoGIS Server Manager
- Публикация картографических сервисов
- Публикация сервисов изображений
- Публикация картографических сервисов мозаики
- Публикация сервисов с 3D тайлами
- Публикация сервисов с 3D моделью
- Публикация сервисов геокодирования
- Публикация сервисов геообработки
- Публикация сервисов сетевого анализа
- Геометрический сервис
- Приложение А – Перечень готовых инструментов геообработки в CoGIS Server
-
Руководство по созданию картографических проектов
- Введение
- Настройки подключения к базе данных
- Свойства QGS-проекта
- Слои и таблицы
- Свойства слоя
-
Настройки переменных
- Отслеживание изменений (Edit Tracker)
- Кластеризация и смещение накладывающихся объектов
- Подтипы
- Полумасштабозависимость
- Отношение «многие-ко-многим»
- Статичные подписи
- Представление на основе SQL-запроса (SQL-based view)
- Тепловые карты
- Псевдо 3D
- Номера слоев
- Обрезка карты по слою (MaskLayer)
- Символ ЛЭП
- Подмена источника для отображения
- Фильтр на слой с возможностью использования макросов
- Диаграммы 3D
- Сортировка объектов слоя по полю для выдачи в запросе
- Выключение слоя из картографического сервиса
- Выключение стороннего тайлового сервиса из картографического сервиса
- Отображение видимой наблюдателем области
- Нумерация узлов линейных и полигональных объектов
- Проверка фильтров на слой по регулярному выражению
- Ограничение использования подзапросов в SQL-фильтрах
- Указание шага временно́й шкалы
- Подмена атрибутивного поля для сортировки по значениям домена
- Создание сервиса геокодирования
- Вложения (Attachments)
- История изменений
- Автообновляемость тайлов
- Шаблоны печати на основе макетов QGIS (формат qpt)
- Руководство по работе в мобильных приложениях
- Руководство по установке и настройке SOE for ArcGIS
- Требования к аппаратному обеспечению
Редактирование объектов. Плагин Редактирование.
Редактирование объектов и табличных записей на карте. Плагин Редактирование. Общие положения.
CoGIS SOE
позволяет создавать и редактировать пространственные объекты, их атрибуты, вложенные файлы и связи с другими объектами. Таким образом, функционал ГИС-сервера может быть значительно расширен за счет возможности ограничивать область действия пользователя определенными слоями, областями внутри слоев, типами объектов.
В рамках одного сервиса можно настроить несколько правил с разными ограничениями для разных групп пользователей.
Операции и условия их применения, задаваемые в плагине типа
Редактирование
, позволяют:
- Создавать, после чего обновлять и удалять на карте:
- объекты в слое картографического сервиса и их значения; редактировать геометрию объектов; объединять объекты;
- записи в таблицах картографического сервиса;
- файлы, прикрепленные в Карточке объекта или к записям в таблицах.
Настройка плагина Редактирование
На панели управления нажмите
Добавить плагин
, из списка доступных плагинов выберите плагин
Редактирование,
пример ниже, см.
Рисунок 713
.
Задайте принципы работы плагина редактирования, а именно:
- Будут ли пользователям разрешены операции редактирования. Если есть необходимость разрешать или запрещать выполнение операции в зависимости от каких-то данных, задайте Условие на разрешение операций , укажите имя таблицы базы данных, и введите определяющий запрос. Условие выполнится, если по определяющему запросу вернется хотя бы один объект из указанной таблицы, удовлетворяющий запросу.
- Какие операции будут разрешены.
- Какой группе пользователей будет разрешено выполнять операции.
- Над объектами какого слоя картографического сервиса будут выполняться операции. Какие ограничения будут применяться.
- Будет ли пользователям разрешено редактировать значение объекта в указанном атрибутивном поле.
- Будет ли пользователям разрешено редактировать геометрию объектов.
- Каким ограничениям должен удовлетворять отредактированный объект.
- Будут ли переопределены настройки картографического сервиса:
-
Какое максимальное количество файлов пользователи смогут прикрепить к объекту. Какого размера должны быть файлы, и какими свойствами должна обладать картинка. На карте файлы к объекту прикрепляются в его
Карточке объекта
посредством кнопки
, если создан шаблон
Карточки объекта
, одним из блоков которого является блок
Файлы
. Как создать шаблон
Карточки объекта
и блок
Файлы
, описано в пункте
Шаблон Карточки объекта
, см. п.
4.13
.
Рисунок 713 - Настройки плагина Редактирование в разделе Правила SOE
Рабочий процесс настроек
плагина
Редактирование:
-
В панели управления
Правила SOE
нажмите на кнопку
Добавить плагин
и выберите плагин
Редактирование
.
- Плагин в дереве Каталога плагинов по умолчанию отображается с названием, определенным по типу плагина. Для переименования плагина предназначено поле Название .
- В опции Сервис укажите название картографического сервиса, к которому установлено подключение в Конструкторе для интерактивной карты, и функциональность которого будет расширять плагин Редактирования .
-
Разрешает операции
- для разрешения операции переключите тумблер в положение
Да
, а для запрещения - в положение
Нет
. Для установки дополнительных ограничений в рамках данного правила, кликните на кнопку
и задайте необходимые опции.
- Операции - включите или отключите кнопки для разрешения выполнения операций, по умолчанию будут доступны все операции. Если выполнение операций разрешено, то по умолчанию будут доступны все операции. Выберите, какие операции выполняться не будут, и нажмите соответствующую кнопку. Описание кнопок, активирующих выполнение операций, приведено ниже, см. Таблица 14 .
Таблица 14 - Кнопки, активирующие выполнение операций
|
Над чем выполняется операция
|
Тип операции
|
||
|
Операции над объектом
|
Создание
|
Обновление
|
Удаление
|
|
Операции над связями
|
Добавление
|
Обновление
|
Удаление
|
|
Операции над вложениями
|
Добавление
|
Обновление
|
Удаление
|
- В опции Для пользователей укажите в выпадающем списке, какая группа пользователей или групп пользователей сможет выполнять операции.
-
Вы можете задать, к объектам каких слоев картографического сервиса будут применяться операции редактирования. Для этого в поле
Слои
нажмите на кнопку
Добавить
и укажите номера слоев, соблюдая правила ввода - номера слоев можно указать через дефис или запятую.
Например 0,1,5-10,14.
-
Если необходимо задать настройки по ограничению слоев картографического сервиса, кликните на кнопку
и поставьте нужные отметки, см.
Рисунок 714
.
Рисунок 714 - Настройки ограничений для слоев
Определяющий запрос
- заданные настройки могут применяться к объектам слоя, значения которых удовлетворяют определенному условию. Условие записывается в виде SQL-выражения в поле
Определяющий запрос
, которое открывается нажатием на кнопку
, пример выражения ниже, см.
Рисунок 715
.
Выражение строится в следующем виде:
-
<Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
-
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
- Status = ‘Выполнен’
- Length > 20.
Рисунок 715 - Пример ограничения с помощью Определяющего запроса для слоя
Ограничение по экстенту
- укажите территорию экстента, в границах которой пользователь сможет создавать или редактировать объекты, для этого отметьте опцию
Ограничение по экстенту
и задайте координаты
XMax
,
XMin
,
YMax
,
YMin
и координатную систему экстента карты, см.
Рисунок 716
.
Рисунок 716 - Пример ограничения по экстенту карты
Определите объект слоя картографического сервиса. Для этого отметьте опцию
Ограничение по объектам
, укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- Если необходимо, добавьте дополнительные параметры к плагину Редактирование:
- По умолчанию пользователям разрешено изменять геометрию объекта. Чтобы запретить эту операцию, укажите Нет для опции Редактировать геометрию .
- Помимо возможности создавать или обновлять объекты, вы можете предоставить пользователям возможность ввода или изменения значений определенных атрибутивных полей.
Рисунок 717 - Пример заданных значений по умолчанию в плагине Редактирование
- Задайте дополнительные параметры для добавления вложений к объектам, которые пользователи смогут прикрепить, их количество, размеры и свойства, см. Рисунок 718 .
Рисунок 718 - Дополнительные параметры для добавления вложений к объектам
-
Автоматически поворачивать JPG-фото при загрузке
- включите опцию, чтобы автоматически поворачивать фото в формате JPG по EXIF коду.
По умолчанию включена.
Принцип работы плагина Редактирование с вложенными геотриггерами
При настройке раздела Правила SOE необходимо понимать принцип работы плагина
Редактирования
и вложенных в него геотриггеров.
- Сначала нужно задать соответствующие настройки к картографическому сервису плагина Редактирование и добавить каскад геотриггеров с настройками к картографическому приложению. Заданные настройки можно проверить на странице Правила SOE, см. Рисунок 719 .
- Рисунок 719 - Пример настройки плагина Редактирование и вложенных в него геотриггеров
- Для указанного плагина Редактирование , помимо стандартной проверки названия сервиса, указанных пользователей и слоя, CoGIS проверяет заданные ограничения на фильтры к слою/слоям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам , пример ниже, см. Рисунок 720 . Например, если у пользователя нет прав на редактирование, появится соответствующее сообщение.
- После проверки заданных настроек плагина Редактирование , происходит формирование нового состояния объекта для будущего обновления, а затем объект обновляется в базе данных в соответствии с новыми значениями, например, при создании объекта автоматически заполняются атрибутивные значения в поле указанного слоя, назначенные с помощью опции Значение по умолчанию .
- Рисунок 720 - Пример настройки плагина Редактирование с доступом для определенной группы пользователей для определенного слоя и ограничением при помощи определяющего запроса
- После отработки плагина Редактирование CoGIS начнет запуск вложенных в него геотриггеров. Например, один геотриггер может изменить состояние объекта, а второй геотриггер будет применен к уже обновленному объекту. Например, при создании точечного объекта первый геотриггер связывает его с полигональными объектами, расположенными в пределах заданного экстента, а затем срабатывает второй геотриггер, который выполняет подсчет получившихся связей, пример настроек показан выше, см. Рисунок 719 .
- Для геотриггера можно задать условия, при которых разрешено изменение объектов, с помощью настроек: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам . В свою очередь, для данных ограничений можно указать следующие условия, пример ниже, см. Рисунок 721 :
- После выполнения этапов 1-4, описанных выше, CoGIS возвращается к плагину Редактирование для проверки условий, заданных в настройках Ограничения после редактирования , см. Рисунок 722 .
- На этом этапе происходит финальная проверка плагина Редактирования для изменения объекта, если они соблюдены, то производится окончательная транзакция в базу данных и измененный объект становится доступен всем пользователям.
- Если условия на изменения объекта не были соблюдены, появится соответствующее сообщение, и окончательное сохранение объекта в базу данных не будет выполнено. В этом случае геотриггеры, которые были настроены на запуск по завершению сохранения изменений в базу данных, тоже не будут выполнены.
- Следует отметить, что этапы работы плагина Редактирования и вложенных в него геотриггеров незаметны для пользователя и обычно выполняются в течение нескольких секунд.
- Рисунок 722 - Пример настройки плагина Редактирование с настройкой Ограничения после редактирования
Геотриггеры
Геотриггеры. Общие положения.
Геотриггер срабатывает при выполнении одной из операций плагина редактирования.
Геотриггеры можно вложить в плагин редактирования, в этом случае геотриггеры будут срабатывать при выполнении одной из операций данного плагина редактирования подробнее см. п.
14.6.3
.
Если вы создали геотриггеры вне плагина редактирования и не указали в поле
Сервис
название картографического сервиса, тогда геотриггеры будут срабатывать при выполнении операции любого плагина редактирования, что не вполне корректно. Для корректной работы укажите в поле
Сервис
название картографического сервиса, чью функциональность расширяет плагин редактирования, при выполнении операции которого будет выполняться геотриггер.
В плагин редактирования или папку можно добавить следующие геотриггеры:
- Создание пространственных связей;
- Редактирование связанных объектов;
- Обновление поля;
- Геокодирование;
- Построение буферной зоны;
- Рассылка сообщений;
- Подсчет количества связей;
- Рассчитать геометрические атрибуты;
- Вызов SQL-команды;
- Вызов задачи геообработки;
- Вызов .NET метода.
Для этого на панели управления нажмите
Добавить геотриггер
и выберите геотриггер. В поле
Сервис
укажите название картографического сервиса. Укажите, для какой группы пользователей будет выполняться геотриггер. Для этого в выпадающем списке
Для пользователей
выберите группу.
Геотриггеры считываются снизу вверх. При пересечении настроек используются и применяются самые нижние геотриггеры.
Для описания всех геотриггеров одного типа в строке поиска введите название геотриггера, например
Создание пространственных связей
.
-
- кнопка позволяет включить или отключить геотриггер;
При создании геотриггер включен по умолчанию. Нажмите на кнопку, чтобы отключить геотриггер. Отключенный геотриггер помечен светло-серым цветом. -
- кнопка позволяет склонировать геотриггер;
По нажатии на кнопку создается новый геотриггер с настройками, идентичными выбранному. Новый геотриггер добавляется в список ниже выбранного. -
- кнопка позволяет удалить геотриггер.
- Рисунок 723 - Доступные действия с геотриггерами
Шаблоны геотриггеров
В разделе
Правила SOE
можно создать и настроить собственные шаблоны геотриггеров на основе любого из стандартных геотриггеров. Например, для создания шаблона геотриггера
Рассылка уведомлений
использовался стандартный геотриггер
Вызов SQL-команды
, к которому были добавлены дополнительные параметры, где, при помощи SQL-команды было задано: кому отправлять уведомление, категория уведомления, текст уведомления по sms, тема письма и текст для уведомления по электронной почте и т.д
.,
пример ниже, см.
Рисунок 724
.
Чтобы создать собственный шаблон геотриггера, используя стандартные геотриггеры, нажмите на кнопку
Редактирование шаблонных геотриггеров,
обратите внимание на то, что вместо каталога правил появится режим
Каталог шаблонов
, добавьте нужный геотриггер, задайте название и соответствующие настройки.
Чтобы сохранить ваш шаблон геотриггера с заданными настройками, выберите его в режиме
Каталог шаблонов
и на панели инструментов нажмите кнопку
Экспорт в XML-файл
, а если необходимо его импортировать, нажмите на кнопку
Импорт в XML файл
.
Для шаблонов по стандартным геотриггерам
Рассылка сообщений
,
Вызов SQL-команды
,
Вызов задачи геообработки
,
Вызов .Net метода
вы также можете использовать макросы вида
{Relations.
rel_table
.
submacros
}
(см. описание макроса в п.
14.6.4.8.1
), где в качестве
rel_table
используется настроенный источник в параметре
Источники
(см. подробнее в описании геотриггеров - пп.
14.6.4.8
,
14.6.4.11
-
14.6.4.13
).
Рисунок 724 - Пример настройки собственного шаблона геотриггера Рассылка уведомлений на основе стандартного геотриггера Вызов SQL-команды
Связывание объектов по пересечению. Создание пространственных связей.
При создании объекта или изменении его местоположения геотриггер
Создание пространственных связей
автоматически создает или редактирует связи между объектами слоев картографического сервиса по их пересечению на местности. Информация о классе отношений, хранящем связи между объектами слоев картографического сервиса, содержится на странице картографического сервиса. Если после изменения местоположения объект не пересекся с другим объектом или объект был удален, геотриггер удалит заданную связь.
Чтобы добавить геотриггер, нажмите
, выберите
Создание пространственных связей
, выделенный ниже,
см.
Рисунок 725
и задайте необходимые настройки см.
Рисунок 726
.
Рисунок 725 - Добавление геотриггера Создание пространственных связей
Рисунок 726 - Настройки геотриггера Создание пространственных связей
При необходимости задайте название добавленному геотриггеру в опции
Название
.
В опции
Сервис
укажите название картографического сервиса, к которому установлено подключение в
Конструкторе
для интерактивной карты, и функциональность которого будет расширять геотриггер.
В параметре
Операции
определите, при выполнении каких операций плагина
Редактирование
будет срабатывать геотриггер: создание, редактирование или удаление объекта.
В опции
Для пользователей
выберите из выпадающего списка, для каких пользователей или групп пользователей будет выполняться геотриггер:
- Любых ;
- Неавторизованных ;
- Авторизованных ;
- Входящих в любую из групп ;
- Входящих во все группы .
-
Задайте, в каких слоях картографического сервиса при изменениях будет выполняться геотриггер. Для этого в поле
Слои
нажмите
и укажите номера слоев.
- Задайте проверку ограничений, заданных для редактирования объектов: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам , подробнее см. п. 14.6.3 . В результате геотриггер будет запущен только при соблюдении заданных условий, а также если у объекта будут изменены атрибутивные поля, указанные в условии Срабатывать, если изменены поля.
Пункт 1.
Если включена опция
Условие на исходное состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «до обновления» или до сохранения объекта в базе данных.
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- Рисунок 727 - Настройка ограничения Условие на исходное состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам
Пункт 2.
Если включена опция
Условие на изменяемое состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «после обновления» или после выполнения изменений в базе данных, однако до завершения транзакции в базе данных.
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- В опции Срабатывать, если изменены поля укажите атрибутивное поле/поля, при изменении значений которых будет выполняться геотриггер.
- Рисунок 728 - Настройка ограничения Условие на изменяемое состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам и Срабатывать, если изменены поля
В группе настроек
Параметры
задайте следующие настройки:
- Найти связанный слой - укажите тип связи объекта. В выпадающем списке выберите, каким образом находить связь между объектами слоев - по названию класса пространственных объектов или по названию класса отношений.
- Имя класса объектов/связи - укажите название класса пространственных объектов или название класса отношений.
- С какими объектами можно связывать созданный или редактируемый объект. Задайте Определяющий запрос на SQL.
- Тип выбора объектов для связывания - укажите, каким образом выбрать объект для создания связи, если созданный объект пересекся с несколькими объектами:
- Пространственные отношения - выберите из выпадающего списка пространственные отношения при определении связи.
- Удалять другие связи - включите Да/Нет. Должны ли при создании новой связи удаляться другие, если тип связи «один-ко-многим» или «многие-ко-многим».
- Минимальный процент пересечения - укажите для линейных и полигональных объектов минимальный процент пересечения.
- Буфер для связывания - укажите дополнительную буферную зону для поиска пересечения в «буфер для связывания».
Автоматическая запись значения одного из связанных объектов. Редактирование связанных объектов.
Данный геотриггер срабатывает при выполнении следующих операций:
- создание связи между объектами;
- удаление связи между объектами;
- обновление одного из связанных объектов.
Геотриггер автоматически записывает в атрибутивное поле следующие значения:
- простое значение, константа;
- составное или расчетное значение;
- значение связанного объекта;
- значение при отсутствии связи у объекта;
- геометрия связанного объекта.
Чтобы добавить геотриггер, нажмите кнопку
Добавить геотриггер
, выберите
Редактирование связанных объектов
, выделенный ниже, см.
Рисунок 729
и добавьте необходимые настройки, см.
Рисунок 730
.
Рисунок 729 - Добавление геотриггера Редактирование связанных объектов
Рисунок 730 - Настройки геотриггера Редактирование связанных объектов
При необходимости задайте название добавленному геотриггеру в опции
Название
.
В опции
Сервис
укажите название картографического сервиса, к которому установлено подключение в
Конструкторе
для интерактивной карты, и функциональность которого будет расширять геотриггер.
В параметре
Операции
определите, при выполнении каких операций плагина
Редактирование
будет выполняться геотриггер: создание, удаление связи между объектами, обновление одного из связанных объектов.
В опции
Для пользователей
выберите из выпадающего списка, для каких пользователей или групп пользователей будет выполняться геотриггер:
- Любых ;
- Неавторизованных ;
- Авторизованных ;
- Входящих в любую из групп ;
- Входящих во все группы .
-
Для какого слоя картографического сервиса будет выполняться геотриггер. Для этого в поле
Слои
нажмите
и укажите номера слоев.
- Задайте проверку ограничений, заданных для редактирования объектов: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам , подробнее см. п. 14.6.3 . В результате геотриггер будет запущен только при соблюдении заданных условий, а также если у объекта будут изменены атрибутивные поля, указанные в условии Срабатывать, если изменены поля .
Пункт 1.
если включена опция
Условие на исходное состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «до обновления» или до сохранения объекта в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 731
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- Рисунок 731 - Настройка ограничения Условие на исходное состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам
Пункт 2.
если включена опция
Условие на изменяемое состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «после обновления», или после выполнения изменений в базе данных, однако до завершения транзакции в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 732
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- В опции Срабатывать, если изменены поля укажите атрибутивное поле/поля, при изменении значений которых будет выполняться геотриггер.
- Рисунок 732 - Настройка ограничения Условие на изменяемое состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам и Срабатывать, если изменены поля
В группе настроек Параметры задайте следующие настройки:
- Найти связанный слой - укажите тип связи объекта. В выпадающем списке выберите, каким образом находить связь между объектами слоев - по названию класса пространственных объектов или по названию класса отношений.
- Имя класса объектов/связи - укажите название класса пространственных объектов или название класса отношений.
- Название поля для записи значения - укажите название атрибутивного поля, в которое будет записано значение.
- Значение - выберите интерпретатор при задании выражения для расчета необходимого значения:
- Тип объединения - объединение, сумма, среднее, количество, минимальное значение, максимальное значение.
- Разделитель - дополнительная буферная зона для поиска пересечения.
- Нужно ли объединять различные значения.
- Максимальное кол-во значений .
- Сортировка по полю .
Автоматическая запись значений в атрибутивные поля объекта. Обновление поля.
Данный геотриггер выполняется при выполнении следующих операций плагина редактирования:
- создание объекта;
- обновление объекта.
Геотриггер автоматически записывает в указанные атрибутивные поля следующие значения:
- простое значение, константа;
- составное или расчетное значение;
- значение одного или нескольких атрибутивных полей своего класса;
- значение при отсутствии связи у объекта;
- геометрия объекта.
Чтобы добавить геотриггер, нажмите кнопку
Добавить геотриггер
, выберите
Обновление поля
,
см.
Рисунок 733
и добавьте необходимые настройки, см.
Рисунок 734
.
Рисунок 733 - Добавление геотриггера Обновление поля
Рисунок 734 - Настройки геотриггера Обновление поля
При необходимости задайте название добавленному геотриггеру в опции
Название
.
В опции
Сервис
укажите название картографического сервиса, к которому установлено подключение в
Конструкторе
для интерактивной карты, и функциональность которого будет расширять геотриггер.
В параметре
Операции
определите, при выполнении каких операций плагина
Редактирование
будет выполняться геотриггер: создание, обновление объекта.
В опции
Для пользователей
выберите из выпадающего списка, для каких пользователей или групп пользователей будет выполняться геотриггер:
- Любых ;
- Неавторизованных ;
- Авторизованных ;
- Входящих в любую из групп ;
- Входящих во все группы .
-
Для какого слоя картографического сервиса будет выполняться геотриггер. Для этого в поле
Слои
нажмите
и укажите номера слоев.
- Задайте проверку ограничений, заданных для редактирования объектов: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам , подробнее см. п. 8.4.3. В результате геотриггер будет запущен только при соблюдении заданных условий, а также если у объекта будут изменены атрибутивные поля, указанные в условии Срабатывать, если изменены поля .
Пункт 1.
если включена опция
Условие на исходное состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «до обновления» или до сохранения объекта в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 735
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- Рисунок 735 - Настройка ограничения Условие на исходное состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам
Пункт 2.
если включена опция
Условие на изменяемое состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «после обновления» или после выполнения изменений в базе данных, однако до завершения транзакции в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 736
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
-
В опции
Срабатывать, если изменены поля
укажите атрибутивное поле/поля.
При этом если опция Срабатывать, если изменены все поля отключена, то при изменении хотя бы одного из указанных полей будет выполняться геотриггер. Если опция Срабатывать, если изменены все поля отмечена, геотриггер будет выполняться, только в случае изменения всех указанных полей.Если поля не заданы, проверка на изменение полей для запуска геотриггера проводиться не будет; геотриггер будет срабатывать при создании или обновлении геометрии объекта (в зависимости от того, что выбрано в параметре Операции , см. выше).
- Рисунок 736 - Настройка ограничения Условие на изменяемое состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам и Срабатывать, если изменены поля
В группе настроек
Параметры
задайте следующие настройки:
- Обновляемые поля - выберите способ получения значений для заполнения/обновления атрибутивных полей при срабатывании геотриггера:
-
Определяющий запрос для измененных полей
- укажите, когда должен срабатывать геотриггер;
Задайте SQL-фильтр для атрибутивных полей, значения которых были изменены.
-
Использовать форматированные значения
-
Да
,
Нет
(положение по умолчанию) - выберите, заменять ли коды доменов на значения.
Опция применима, если выбран способ получения значений обновляемых полей Название поля . В иных случаях опция игнорируется.
- Таблица 15 - Макросы
Прямое и обратное геокодирование при создании и обновлении объектов
Данный геотриггер срабатывает при выполнении следующих операций плагина редактирования:
- создание объекта;
- обновление объекта.
Геотриггер используется при прямом и обратном геокодировании, создании или обновлении объектов на карте и загрузке файлов определенных форматов, содержащих адреса или координаты. То есть, геотриггер выполняет следующие задачи:
- создание объекта по адресу;
- создание объектов по адресам при загрузке Excel- или CSV-файла, содержащего адреса;
- определение адреса объекта при его создании или изменении местоположения на карте, запись значения в атрибутивное поле;
- пакетная запись адресов объектов, создаваемых по координатам, в соответствующие атрибутивные поля при загрузке Excel-, CSV-, SHP-файла, содержащего координаты.
Чтобы добавить геотриггер, нажмите кнопку
Добавить геотриггер
и выберите
Геокодирование
, выделенный ниже, см.
Рисунок 737
и задайте необходимые настройки, см.
Рисунок 738
.
Рисунок 737 - Добавление геотриггера Геокодирование
Рисунок 738 - Настройки геотриггера Геокодирование
Задайте
Название
геотриггера.
В параметре Операции определите, при выполнении каких операций плагина Редактирование будет выполняться геотриггер: создание, обновление объекта.
В опции
Для пользователей
выберите из выпадающего списка, для каких пользователей или групп пользователей будет выполняться геотриггер:
- Любых ;
- Неавторизованных ;
- Авторизованных ;
- Входящих в любую из групп ;
- Входящих во все группы .
-
Для какого слоя картографического сервиса будет выполняться геотриггер. Для этого в поле
Слои
нажмите
и укажите номера слоев.
- Задайте проверку ограничений, заданных для редактирования объектов: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам , подробнее см. п. 8.4.3. В результате геотриггер будет запущен только при соблюдении заданных условий, а также если у объекта будут изменены атрибутивные поля, указанные в условии Срабатывать, если изменены поля .
Пункт 1.
если включена опция
Условие на исходное состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «до обновления» или до сохранения объекта в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 739
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- Рисунок 739 - Настройка ограничения Условие на исходное состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам
Пункт 2.
если включена опция
Условие на изменяемое состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «после обновления» или после выполнения изменений в базе данных, однако до завершения транзакции в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 740
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- В опции Срабатывать, если изменены поля укажите атрибутивное поле/поля, при изменении значений которых будет выполняться геотриггер.
- Рисунок 740 - Настройка ограничения Условие на изменяемое состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам и Срабатывать, если изменены поля
В группе настроек
Параметры
укажите следующие настройки:
- Укажите адрес сервиса геокодирования, на основе которого будет работать геотриггер. По данному адресу сервиса геокодирования должно быть установлено подключение в Конструкторе во вкладке Сервисы , Сервис геокодирования , описание которого приведено в пункте Сервис геокодирования , см. п. 4.10 .
- Как сопоставить значения. Сопоставление атрибутивного поля сервиса геокодирования с атрибутивным полем слоя, в котором создан или отредактирован объект. Укажите атрибутивное поле сервиса геокодирования в поле Атрибут сервиса и название атрибутивного поля слоя, в котором создан или отредактирован объект в поле Значение из объекта .
- Поля в классе пространственных объектов для записи в них адреса при поиске координат по адресу.
- При вводе адреса объекта в соответствующее атрибутивное поле местоположение объекта будет автоматически изменяться. Данная настройка установлена по умолчанию - для опции Обновлять расположение по адресу выбрано Да .
- При изменении местоположения объекта автоматически будет определено местоположение объекта и перезаписан адрес в значении соответствующего атрибутивного поля. Данная настройка установлена по умолчанию - для опции Обновлять адрес по расположению выбрано Да .
- Если изменены и адрес, и геометрия, по умолчанию у адреса приоритет, и координаты будут пересчитаны. Если приоритетнее геометрия, переключите Приоритет адреса в положение Нет .
- Радиус поиска адреса относительно редактируемого объекта, например, для установки адресного ориентира объекту, который находится вблизи здания с адресом.
Построение буферной зоны редактируемого объекта
Данный геотриггер выполняется при выполнении следующих операций плагина редактирования:
- создание объекта;
- обновление объекта;
- удаление объекта.
Геотриггер используется для автоматического построения, корректировки, удаления буферной зоны объекта в определенном полигональном слое. Буферные зоны могут создаваться для объектов с разным типом геометрии.
Основными функциями геотриггера являются:
- построение буферной зоны по кругу, квадрату, с расчетом по дорожной сети (зона транспортной доступности);
- установление связи между буферной зоной и ее основным объектом;
- корректировка буферной зоны при изменении геометрии основного объекта;
- установка, корректировка размера буферной зоны по атрибуту основного объекта или по расчетному значению;
- определение системы координат и метода построения буферной зоны;
- удаление буферной зоны при удалении основного объекта.
Чтобы добавить геотриггер, нажмите кнопку
Добавить геотриггер
и выберите
Построение буферной зоны
, выделенный ниже, см.
Рисунок 741
и задайте необходимые настройки, см.
Рисунок 742
.
Рисунок 741 - Добавление геотриггера Построение буферной зоны
Рисунок 742 - Настройки геотриггера Построение буферной зоны
При необходимости задайте название добавленному геотриггеру в опции
Название
.
В опции
Сервис
укажите название картографического сервиса, к которому установлено подключение в
Конструкторе
для интерактивной карты, и функциональность которого будет расширять геотриггер.
В параметре
Операции
включите или отключите операции плагина редактирования для работы геотриггера, по умолчанию доступны операции
Создание объекта
,
Обновление объекта
и
Удаление объекта
.
В опции
Для пользователей
выберите из выпадающего списка, для каких пользователей или групп пользователей будет выполняться геотриггер:
- Любых ;
- Неавторизованных ;
- Авторизованных ;
- Входящих в любую из групп ;
- Входящих во все группы .
Для какого слоя картографического сервиса будет выполняться геотриггер. Для этого в поле
Слои
нажмите
и укажите номера слоев, соблюдая правила ввода - номера слоев можно указать через дефис или запятую.
Например: 0,1,5-10,14
.
Задайте проверку ограничений, заданных для редактирования объектов:
Определяющий запрос, Ограничение по экстенту, Ограничение по объектам
, подробнее см. п.
14.6.3
.
В результате геотриггер будет запущен только при соблюдении заданных условий, а также если у объекта будут изменены атрибутивные поля, указанные в условии
Срабатывать, если изменены поля.
Пункт 1.
если включена опция
Условие на исходное состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «до обновления» или до сохранения объекта в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 743
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- Рисунок 743 - Настройка ограничения Условие на исходное состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам
Пункт 2.
если включена опция
Условие на изменяемое состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «после обновления» или после выполнения изменений в базе данных, однако до завершения транзакции в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 744
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- В опции Срабатывать, если изменены поля укажите атрибутивное поле/поля, при изменении значений которых будет выполняться геотриггер.
- Рисунок 744 - Настройка ограничения Условие на изменяемое состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам и Срабатывать, если изменены поля
В группе настроек
Параметры
укажите следующие настройки:
- Найти связанный слой - По названию класса связей , По названию класса объектов - выберите, как будет задан полигональный слой, в который будут сохранены объекты-буферные зоны, созданные в результате срабатывания геотриггера;
-
Имя класса объектов/связей
;
Соответственно выбранному в параметре Найти связанный слой , укажите название или номер/идентификатор таблицы связей или название класса связанных объектов.Вы можете задать имя класса объектов, с которым не установлено связи (relationship). В таком случае для установления связи с текущим слоем по кнопке
задайте
Первичный ключ
(поле с уникальными идентификаторами объектов основного слоя) и
Внешний ключ
(поле связанного слоя, содержащее первичные ключи основного слоя).
- Тип буфера - Круг, Квадрат, Зона транспортной доступности - выберите из выпадающего списка форму буферной зоны;
- Размер буфера - выберите способ получения размера буфера:
- Записать размер буфера в поле - укажите атрибутивное поле выбранного связанного слоя, в которое запишется размер буферной зоны;
- Обновляемые поля связанного слоя - выберите способ получения значений для заполнения/обновления атрибутивных полей связанного слоя при срабатывании геотриггера:
- Координатная система - выберите, в какой системе координат создавать объекты-буферные зоны:
- Использовать геодезический буфер - выберите метод расчета буферной зоны - геодезический (тумблер в положении Да , выбрано по умолчанию) или плоскостной (тумблер в положении Нет ).
-
Ссылка на сетевой сервис
- укажите запущенный сервис сетевого анализа.
Опция применима с выбранным типом буфера Зона транспортной доступности .При необходимости нажмите
и задайте дополнительные настройки сервиса:
Автоматическая рассылка сообщений при редактировании объектов
Настройки данного геотриггера позволяют выполнять автоматическую рассылку сообщений определенным пользователям, например, если объект был изменен. Сообщения могут содержать информацию о редактируемом объекте. Геотриггер выполняется при выполнении любой операции плагина
Редактирование
.
Чтобы добавить геотриггер, нажмите кнопку
Добавить геотриггер
, выберите
Рассылка сообщений
(см.
Рисунок 745
) и добавьте необходимые настройки (см.
Рисунок 746
).
Рисунок 745 - Добавление геотриггера Рассылка сообщений
Рисунок 746 - Настройки геотриггера Рассылка сообщений
При необходимости задайте название добавленному геотриггеру в опции
Название
.
В опции
Сервис
укажите название картографического сервиса, к которому установлено подключение в
Конструкторе
для интерактивной карты, и функциональность которого будет расширять геотриггер.
В параметре
Операции
определите, при выполнении каких операций плагина
Редактирование
будет выполняться геотриггер:
-
Создание объекта
;
-
Обновление объекта
;
-
Удаление объекта
;
-
Добавление связи
;
-
Обновление связи
;
-
Удаление связи
;
-
Добавление вложения
;
-
Обновление вложения
;
-
Удаление вложения
.
- В опции Для пользователей выберите из выпадающего списка, для каких пользователей или групп пользователей будет выполняться геотриггер:
- Любых ;
- Неавторизованных ;
- Авторизованных ;
- Входящих в любую из групп ;
- Входящих во все группы .
Укажите, для какого слоя картографического сервиса будет выполняться геотриггер. Для этого в поле
Слои
нажмите
и укажите номера слоев.
Задайте проверку ограничений, заданных для редактирования объектов:
Определяющий запрос, Ограничение по экстенту, Ограничение по объектам
, подробнее см. п.
14.6.3
.
В результате геотриггер будет запущен только при соблюдении заданных условий, а также если у объекта будут изменены атрибутивные поля, указанные в условии
Срабатывать, если изменены поля.
Пункт 1.
если включена опция
Условие на исходное состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «до обновления» или до сохранения объекта в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 747
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- Рисунок 747 - Настройка ограничения Условие на исходное состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам
Пункт 2.
если включена опция
Условие на изменяемое состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «после обновления» или после выполнения изменений в базе данных, однако до завершения транзакции в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 748
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- В опции Срабатывать, если изменены поля укажите атрибутивное поле/поля, при изменении значений которых будет выполняться геотриггер.
- Рисунок 748 - Настройка ограничения Условие на изменяемое состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам и Срабатывать, если изменены поля
Для параметра
Тип получателя
по умолчанию
указано
Электронная почта
. Если нужно, выберите другой параметр - помимо электронной почты также доступны
Логин пользователя, Имя группы пользователей
.
В поле
Кому
нажмите
и укажите соответственно электронные адреса адресатов, логины или имя группы пользователей (см.
Рисунок 749
).
Укажите тему письма и текст сообщения. Можно использовать макросы (см. п.
14.6.4.8.1
), а также отдельно значения атрибутивных полей. Макросы указываются в фигурных скобках, имена атрибутивных полей - в квадратных.
Для значений атрибутивных полей можно указывать формат через двоеточие:
-
[
field
:X5]
- значение числового атрибутивного поля
field
в указанном формате (учитывается разделитель дробной части, выбранный в операционной системе ГИС-сервера);
Возможные форматы:
- [ domain_field ] - для атрибутивного поля domain_field с наложенным доменом вместо кода домена выводится значение;
- [ domain_field :Value] - для атрибутивного поля domain_field с наложенным доменом выводится код домена;
-
[
domain_field
:X5]
- для атрибутивного поля
domain_field
с наложенным доменом выводится числовой код домена в указанном формате;
Возможные форматы см. выше.
- [ date_field ] - значение атрибутивного поля date_field типа Дата или Дата-время в формате dd.MM.yyyy (для типа Дата) или dd.MM.yyyy HH:mm:ss (для типа Дата-время);
- [ date_field :dd.MM.yyyy] - значение атрибутивного поля date_field типа Дата или Дата-время в формате dd.MM.yyyy ;
- [ date_field :LOCAL:dd.MM.yyyy HH:mm] - значение атрибутивного поля date_field типа Дата-время в формате dd.MM.yyyy HH:mm в часовом поясе ГИС-сервера;
- [ date_field :UTC:dd.MM.yyyy HH:mm] - значение атрибутивного поля date_field типа Дата-время в формате dd.MM.yyyy HH:mm в UTC.
Например:
Тема:
<Изменён объект {Object.Name}>
.
Текст сообщения:
Изменён объект: {Object.Name}
Изменил объект: {CurrentUser}
Координаты объекта до изменения: X {Object.ShapeBeforeChanges.CentroidX}, Y {Object.ShapeBeforeChanges.CentroidY}
Текущие координаты объекта: X {Object.Shape.CentroidX}, Y {Object.Shape.CentroidY}
Рисунок 749 - Пример настройки геотриггера Рассылка сообщений с текстом сообщений, содержащий макросы
По умолчанию для параметров
Кому
,
Тема
,
Сообщение
выбрано
Значение
, т. е. параметр указывается явно в текстовой строке рядом. При необходимости выберите
Название поля
, если значение параметра хранится в атрибутивном поле выбранного слоя, или
SQL-выражение
, чтобы составить нужное значение с помощью SQL-выражения. В таком случае в текстовой строке рядом укажите либо название атрибутивного поля либо задайте SQL-выражение.
Если адресатов несколько, укажите, требуется ли
Отправлять письмо каждому адресату отдельно
. По умолчанию опция отключена.
Включите опцию
HTML-формат
, если текст сообщения составлен с помощью HTML-кода.
Задайте
SQL-фильтр для файловых вложений
, которые требуется прикрепить к отправляемому сообщению. При этом:
- если параметр не задан, никакие вложения прикреплены не будут;
- если задано 1=1 , все вложения будут прикреплены;
- если задано выражение "ATT_NAME" LIKE '%.pdf' , к сообщению будут прикреплены из вложений все PDF-файлы.
При необходимости задайте
SQL-выражение для сортировки этих вложений
.
Для SQL-выражений можно использовать и пользовательские атрибутивные поля таблицы вложений.
По умолчанию сообщения будут отправляться в соответствии с настройками SMTP-сервера, которые задаются на странице
Настройки
, к ней можно перейти из меню
Администрирование
(см.
Руководство администратора по установке и настройке
). Если надо переопределить настройки SMTP-сервера, отметьте опцию
Переопределить SMTP-настройки
и задайте следующие настройки:
- Сервер ;
- Порт ;
- SSL включен ;
- Авторизация :
- Асинхронно ;
- Время ожидания (в секундах).
Вы можете настроить вставку информации об объектах, связанных с текущим (в том числе вложения). Для этого настройте связанный слой (группа настроек
Источники
). Именно этот источник затем используется для вставки в сообщение в макросах вида {Relations.
rel_table
.
submacros
} и {Files.
rel_table
.*.png} в качестве
rel_table
(см. п.
14.6.4.8.1
).
-
Название
- имя источника, которое будет использоваться в макросах в качестве
rel_table
;
Используйте латинские буквы, цифры и знак подчеркивания для указания названия.
- Найти связанный слой - По названию класса связей , По названию класса объектов - выберите, как будет задан связанный слой;
-
Имя класса объектов/связей
;
Соответственно выбранному в параметре Найти связанный слой , укажите название таблицы связей или название класса связанных объектов.Вы можете задать имя класса объектов, с которым не установлено связи (relationship). В таком случае для установления связи с текущим слоем по кнопке
задайте
Первичный ключ
и
Внешний ключ
.
-
Определяющий запрос
;
Если первичный и внешний ключи не заданы, вы можете задать определяющий запрос, по которому будет определяться связанный объект.В запросе вы можете использовать макросы вида {CurrentFeature. field_name } , где field_name - атрибутивное поле текущего объекта.
-
Сортировка по полю
;
Для макросов будет использоваться первый найденный связанный объект.При необходимости задайте атрибутивное поле для сортировки объектов связанного слоя.
-
SQL-фильтр для файловых вложений
;
Опция используется для вставки вложений связанных объектов, аналогично соответственной опции для текущего объекта (см. выше).Пример: "ATT_NAME"='123.jpg'
-
SQL-выражение для сортировки этих вложений
.
Опция используется для сортировки вложений связанных объектов.
Неиспользуемый источник можно отключить, нажав на
в строке с названием источника, или удалить по кнопке
.
Рисунок 750 - Настройки источника связанных объектов
Макросы для шаблона сообщений
Для формирования шаблона сообщений можно использовать следующие макросы (указываются в фигурных скобках):
- Общие:
- По объекту:
-
{Object.Id}
- уникальный номер создаваемого, обновляемого или удаляемого объекта (значение атрибутивного поля OBJECTID);
Значение может использоваться при формировании динамической ссылки на карту.
- {Object.Name} , {Object.Caption} - отображаемое имя (DisplayField) редактируемого объекта после его изменения;
- {Object.NameBeforeUpdate} , {Object.CaptionBeforeUpdate} - отображаемое имя (DisplayField) редактируемого объекта до его изменения;
-
{Object.FieldValues;
attr_name
;
attr_value
}
- значения объекта во всех атрибутивных полях после их изменения, где
attr_name
- заголовок столбца с именами атрибутивных полей,
attr_value
- заголовок столбца со значениями атрибутивных полей (как они хранятся в базе);
В HTML-коде значения отображаются в виде таблицы:| attr_name | attr_value || field1 | value1 || field2 | value2 |В простом тексте значения отображаются в виде:attr_name: field1attr_value: value1attr_name: field2attr_value: value2
-
{Object.Attributes;
attr_name
;
attr_value
}
- значения объекта во всех атрибутивных полях после их изменения, где
attr_name
- заголовок столбца с именами атрибутивных полей,
attr_value
- заголовок столбца со значениями атрибутивных полей (выводятся значения доменов вместо кодов);
В HTML-коде значения отображаются в виде таблицы, в простом тексте - в строку (как и для макроса {Object.FieldValues; attr_name ; attr_value } , см. выше).
-
{Object.FieldValuesBeforeUpdate;
attr_name
;
attr_value
}
- значения объекта во всех атрибутивных полях до их изменения, где
attr_name
- заголовок столбца с именами атрибутивных полей,
attr_value
- заголовок столбца со значениями атрибутивных полей (как они хранятся в базе);
В HTML-коде значения отображаются в виде таблицы, в простом тексте - в строку (как и для макроса {Object.FieldValues; attr_name ; attr_value } , см. выше).
-
{Object.AttributesBeforeUpdate;
attr_name
;
attr_value
}
- значения объекта во всех атрибутивных полях до их изменения, где
attr_name
- заголовок столбца с именами атрибутивных полей,
attr_value
- заголовок столбца со значениями атрибутивных полей (выводятся значения доменов вместо кодов);
В HTML-коде значения отображаются в виде таблицы, в простом тексте - в строку (как и для макроса {Object.FieldValues; attr_name ; attr_value } , см. выше).
-
{Object.FieldValuesChanges;
attr_name
;
attr_value
;
attr_old_value
}
- значения объекта во всех атрибутивных полях до и после его редактирования, где
attr_name
- заголовок столбца с именами атрибутивных полей,
attr_value
- заголовок столбца со значениями атрибутивных полей после изменения (как они хранятся в базе),
attr_old_value
- заголовок столбца со значениями атрибутивных полей до их изменения (как они хранятся в базе);
В HTML-коде значения отображаются в виде таблицы:| attr_name | attr_value | attr_old_value || field1 | value1 | old_value1 || field2 | value2 | old_value2 |В простом тексте значения отображаются в виде:attr_name: field1attr_value: value1attr_old_value: old_value1attr_name: field2attr_value: value2attr_old_value: old_value2
-
{Object.AttributeChanges;
attr_name
;
attr_value
;
attr_old_value
}
- значения объекта во всех атрибутивных полях до и после его редактирования, где
attr_name
- заголовок столбца с именами атрибутивных полей,
attr_value
- заголовок столбца со значениями атрибутивных полей после изменения (выводятся значения доменов вместо кодов),
attr_old_value
- заголовок столбца со значениями атрибутивных полей до их изменения (выводятся значения доменов вместо кодов);
В HTML-коде значения отображаются в виде таблицы, в простом тексте - в строку (как и для макроса {Object.FieldValuesChanges; attr_name ; attr_value ; attr_old_value } , см. выше).
- По вложениям:
- По связанным объектам:
Запись в значение объекта количества связанных с ним объектов другого слоя. Подсчет количества связей.
Геотриггер позволяет записать в значение объекта количество объектов другого слоя, связанных с ним, и выполняется при следующих операциях плагина редактирования:
- добавление связи;
- удаление связи.
После каждого добавления или удаления связанного объекта геотриггер выполняет подсчет текущего количества связанных объектов. Затем записывает значение в атрибутивное поле, которое определяется в настройках геотриггера.
Чтобы добавить геотриггер, нажмите кнопку
Добавить геотриггер
, выберите
Подсчет количества связей
,
выделенный на рисунке ниже, см.
Рисунок 751
и добавьте необходимые настройки, см.
Рисунок 752
.
Рисунок 751 - Добавление геотриггера Подсчет количества связей
Рисунок 752 - Настройки геотриггера Подсчет количества связей
При необходимости задайте название добавленному геотриггеру в опции
Название
.
В опции
Сервис
укажите название картографического сервиса, к которому установлено подключение в
Конструкторе
для интерактивной карты, и функциональность которого будет расширять геотриггер.
В параметре
Операции
выберите, при выполнении каких операций плагина
Редактирование
будет выполняться геотриггер: добавление, удаление связи.
В опции
Для пользователей
выберите из выпадающего списка, для каких пользователей или групп пользователей будет выполняться геотриггер:
- Любых ;
- Неавторизованных ;
- Авторизованных ;
- Входящих в любую из групп ;
- Входящих во все группы .
-
Для какого слоя картографического сервиса будет выполняться геотриггер. Для этого в поле
Слои
нажмите
и укажите номера слоев.
Задайте проверку ограничений, заданных для редактирования объектов:
Определяющий запрос, Ограничение по экстенту, Ограничение по объектам
, подробнее см. п.
14.6.3
.
В результате геотриггер будет запущен только при соблюдении заданных условий, а также если у объекта будут изменены атрибутивные поля, указанные в условии
Срабатывать, если изменены поля
.
Пункт 1.
если включена опция
Условие на исходное состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «до обновления» или до сохранения объекта в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 753
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- Рисунок 753 - Настройка ограничения Условие на исходное состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам
Пункт 2.
если включена опция
Условие на изменяемое состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «после обновления» или после выполнения изменений в базе данных, однако до завершения транзакции в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 754
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- В опции Срабатывать, если изменены поля укажите атрибутивное поле/поля, при изменении значений которых будет выполняться геотриггер.
- Рисунок 754 - Настройка ограничения Условие на изменяемое состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам и Срабатывать, если изменены поля
В группе настроек
Параметры
укажите следующие настройки:
- Тип связи объекта. Найти связанный слой по названию класса пространственных объектов или класса отношений.
- Введите название класса пространственных объектов или класса отношений.
- В какой объект нужно записывать значение - задайте Определяющий запрос на SQL.
- Укажите атрибутивное поле, в которое будет записано значение количества связанных объектов.
- Выберите тип подсчета:
Расчет геометрических атрибутов редактируемого объекта
Геотриггер предназначен для записи значений редактируемого объекта в атрибутивные поля:
- Центральная точка;
- Площадь;
- Геодезическая площадь;
- Длина;
- Геодезическая длина;
- Количество частей;
- Количество точек;
- WKT.
Геотриггер выполняется при выполнении следующих операций плагина редактирования:
- создание объекта;
- обновление объекта.
Чтобы добавить геотриггер, нажмите кнопку
Добавить геотриггер
, выберите
Рассчитать геометрические атрибуты
,
выделенный ниже,
см.
Рисунок 755
и добавьте необходимые настройки, см.
Рисунок 756
.
Рисунок 755 - Добавление геотриггера Рассчитать геометрические атрибуты
Рисунок 756 - Настройки геотриггера Рассчитать геометрические атрибуты
При необходимости задайте название добавленному геотриггеру в опции
Название
.
В опции
Сервис
укажите название картографического сервиса, к которому установлено подключение в
Конструкторе
для интерактивной карты, и функциональность которого будет расширять геотриггер.
В параметре
Параметры
определите, при выполнении каких операций плагина
Редактирование
будет выполняться геотриггер: создание, обновление объекта.
В опции
Для пользователей
выберите из выпадающего списка, для каких пользователей или групп пользователей будет выполняться геотриггер:
- Любых ;
- Неавторизованных ;
- Авторизованных ;
- Входящих в любую из групп ;
- Входящих во все группы .
-
Для какого слоя картографического сервиса будет выполняться геотриггер. Для этого в поле
Слои
нажмите
и укажите номера слоев.
- Задайте проверку ограничений, заданных для редактирования объектов: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам , подробнее см. п. 14.6.3 . В результате геотриггер будет запущен только при соблюдении заданных условий, а также если у объекта будут изменены атрибутивные поля, указанные в условии Срабатывать, если изменены поля.
Пункт 1.
если включена опция
Условие на исходное состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «до обновления» или до сохранения объекта в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 757
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- Рисунок 757 - Настройка ограничения Условие на исходное состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам
Пункт 2.
если включена опция
Условие на изменяемое состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «после обновления» или после выполнения изменений в базе данных, однако до завершения транзакции в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 758
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- В опции Срабатывать, если изменены поля укажите атрибутивное поле/поля, при изменении значений которых будет выполняться геотриггер.
- Рисунок 758 - Настройка ограничения Условие на изменяемое состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам и Срабатывать, если изменены поля
В группе настроек
Параметры
укажите следующие настройки:
- Систему координат, в которой будет рассчитана геометрия.
- Единицы измерения, в которых будет рассчитана геометрия.
- Округление, укажите необходимое количество знаков после запятой.
- Определите, что будет рассчитывать геотриггер, и в какое поле будет записываться результат:
Вызов SQL-команды
Геотриггер
Вызов SQL-команды
позволяет выполнить SQL-команду, используя контекст текущего объекта в процессе редактирования при создании/обновлении/удалении объекта, исходя из настроек плагина редактирования. Например, при вызове SQL-процедуры добавить записи изменений в лог-таблицу. С помощью геотриггера
Вызов SQL-команды
нельзя обновить текущий объект.
Чтобы добавить геотриггер, нажмите кнопку
Добавить геотриггер
, выберите
Вызов SQL-команды
,
выделенный ниже,
см.
Рисунок 759
и задайте необходимые настройки, см.
Рисунок 760
.
Рисунок 759 - Добавление геотриггера Вызов SQL-команды
Рисунок 760 - Настройки геотриггера Вызов SQL-команды
При необходимости задайте название добавленному геотриггеру в опции
Название
.
В опции
Сервис
укажите название картографического сервиса, к которому установлено подключение в
Конструкторе
для интерактивной карты, и функциональность которого будет расширять геотриггер.
В параметре
Операции
определите, при выполнении каких операций плагина
Редактирование
будет выполняться геотриггер:
-
Создание объекта
;
-
Обновление объекта
;
-
Удаление объекта
;
-
Добавление связи
;
-
Обновление связи
;
-
Удаление связи
;
-
Добавление вложения
;
-
Обновление вложения
;
-
Удаление вложения
.
- В опции Для пользователей выберите из выпадающего списка, для каких пользователей или групп пользователей будет выполняться геотриггер:
- Любых ;
- Неавторизованных ;
- Авторизованных ;
- Входящих в любую из групп ;
- Входящих во все группы .
-
Для какого слоя картографического сервиса будет выполняться геотриггер. Для этого в поле
Слои
нажмите
и укажите номера слоев.
- Задайте проверку ограничений, заданных для редактирования объектов: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам , подробнее см. п. 14.6.3 . В результате геотриггер будет запущен только при соблюдении заданных условий, а также если у объекта будут изменены атрибутивные поля, указанные в условии Срабатывать, если изменены поля.
Пункт 1.
если включена опция
Условие на исходное состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «до обновления» или до сохранения объекта в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 761
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- Рисунок 761 - Настройка ограничения Условие на исходное состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам
Пункт 2.
если включена опция
Условие на изменяемое состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «после обновления» или после выполнения изменений в базе данных, однако до завершения транзакции в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 762
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- В опции Срабатывать, если изменены поля укажите атрибутивное поле/поля, при изменении значений которых будет выполняться геотриггер.
- Рисунок 762 - Настройка ограничения Условие на изменяемое состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам и Срабатывать, если изменены поля
В группе настроек
Параметры
укажите следующие настройки:
-
Время запуска
- укажите время запуска выполнения SQL-команды для автоматического срабатывания геотриггера при создании/изменении/удалении объектов, по умолчанию задано
После обновления
, пример ниже, см.
Рисунок 763
.
Измените значение по умолчанию, если необходимо. Для параметра Время запуска доступны также следующие варианты:
- Из какого слоя брать БД - укажите номер слоя/таблицы для выполнения SQL-команды. Если поле останется пустым, то геотриггер сработает для текущего слоя/таблицы редактируемого объекта.
- SQL-команда - укажите необходимую SQL-команду.
- Таймаут - по умолчанию указано 0 секунд . Укажите предельное время ожидания выполнения команды, по окончании которого выполнение геотриггера будет остановлено.
Вы можете использовать в SQL-команде информацию об объектах, связанных с текущим. Для этого настройте связанный слой (группа настроек
Источники
). Именно этот источник затем используется для вставки в SQL-команду в макросах вида
{Relations.
rel_table
.
submacros
}
в качестве
rel_table
(см. описание макроса в п.
14.6.4.8.1
).
-
Название
- имя источника, которое будет использоваться в макросах в качестве
rel_table
;
Используйте латинские буквы, цифры и знак подчеркивания для указания названия.
- Найти связанный слой - По названию класса связей , По названию класса объектов - выберите, как будет задан связанный слой;
-
Имя класса объектов/связей
;
Соответственно выбранному в параметре Найти связанный слой , укажите название таблицы связей или название класса связанных объектов.Вы можете задать имя класса объектов, с которым не установлено связи (relationship). В таком случае для установления связи с текущим слоем по кнопке
задайте
Первичный ключ
и
Внешний ключ
.
-
Определяющий запрос
;
Если первичный и внешний ключи не заданы, вы можете задать определяющий запрос, по которому будет определяться связанный объект.В запросе вы можете использовать макросы вида {CurrentFeature. field_name } , где field_name - атрибутивное поле текущего объекта.
-
Сортировка по полю
.
Для макросов будет использоваться первый найденный связанный объект.При необходимости задайте атрибутивное поле для сортировки объектов связанного слоя.
Неиспользуемый источник можно отключить, нажав на
в строке с названием источника, или удалить по кнопке
.
Рисунок 763 - Пример настройки геотриггера Вызов SQL-команды
Рисунок 764 - Настройки источника связанных данных
Вызов задачи геообработки
Геотриггер
Вызов задачи геообработки
позволяет запускать задачи сервиса геообработки в зависимости от декларативных настроек публикации и заданных дополнительных возможностей. Например, можно задать время запуска геотриггера при изменении объекта для определенных пользователей.
Например, если настроить этот геотриггер для обновления существующих атрибутивных полей на основе выходных публичных параметров, то исходя из настроек плагина редактирования геотриггер сработает при обновлении объекта и автоматически выполнит заданные обновления.
Чтобы добавить геотриггер, нажмите кнопку
Добавить геотриггер
, выберите
Вызов задачи геообработки
,
выделенный ниже
(см.
Рисунок 765
), и добавьте необходимые настройки (см.
Рисунок 766
).
Рисунок 765 - Добавление геотриггера Вызов задачи геообработки
Рисунок 766 - Настройки геотриггера Вызов задачи геообработки
При необходимости задайте название добавленному геотриггеру в опции
Название
.
В опции
Сервис
укажите название картографического сервиса, к которому установлено подключение в
Конструкторе
для интерактивной карты, и функциональность которого будет расширять геотриггер.
В параметре
Операции
определите, при выполнении каких операций плагина
Редактирование
будет выполняться геотриггер:
-
Создание объекта
;
-
Обновление объекта
;
-
Удаление объекта
;
-
Добавление связи
;
-
Обновление связи
;
-
Удаление связи
;
-
Добавление вложения
;
-
Обновление вложения
;
-
Удаление вложения
.
- В опции Для пользователей выберите из выпадающего списка, для каких пользователей или групп пользователей будет выполняться геотриггер:
- Любых ;
- Неавторизованных ;
- Авторизованных ;
- Входящих в любую из групп ;
- Входящих во все группы .
-
Для какого слоя картографического сервиса будет выполняться геотриггер. Для этого в поле
Слои
нажмите
и укажите номера слоев.
- Задайте проверку ограничений, заданных для редактирования объектов: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам , подробнее см. п. 14.6.3 . В результате геотриггер будет запущен только при соблюдении заданных условий, а также если у объекта будут изменены атрибутивные поля, указанные в условии Срабатывать, если изменены поля.
Пункт 1.
если включена опция
Условие на исходное состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «до обновления» или до сохранения объекта в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 767
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- Рисунок 767 - Настройка ограничения Условие на исходное состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам
Пункт 2.
если включена опция
Условие на изменяемое состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «после обновления» или после выполнения изменений в базе данных, однако до завершения транзакции в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 768
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- В опции Срабатывать, если изменены поля укажите атрибутивное поле/поля, при изменении значений которых будет выполняться геотриггер.
- Рисунок 768 - Настройка ограничения Условие на изменяемое состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам и Срабатывать, если изменены поля
В группе настроек Параметры укажите следующие настройки:
-
Время запуска
- укажите время запуска задачи сервиса геообработки для автоматического срабатывания геотриггера при создании/изменении/удалении объектов, по умолчанию задано
После обновления
.
Измените значение по умолчанию, если необходимо. Для параметра Время запуска доступны также следующие варианты:
- URL сервиса геообработки - укажите url сервиса геообработки для его подключения.
- Логин к сервису - укажите логин для подключения к сервису геообработки, если указывать логин не нужно, оставьте строку пустой.
- Пароль к сервису - укажите пароль для подключения к сервису геообработки, если указывать пароль не нужно, оставьте строку пустой.
- Задача геообработки в сервисе - укажите задачу сервиса геообработки (task).
-
Входные параметры задачи
- нажмите
, в
Имя параметра
укажите имя входного публичного параметра и укажите
Значение
для запуска задачи сервиса геообработки. Для значений используйте значения атрибутивных полей и макросы, тогда при вызове геотриггер автоматически сформирует указанные значения (см.
Рисунок 771
).
-
Обновляемые поля по выходных параметрам -
нажмите
и добавьте пару «поле-значение». В строке
Имя поля
укажите имя обновляемого атрибутивного поля. В строке
Значение
задайте выходной параметр инструмента геообработки в фигурных скобках (см.
Рисунок 771
). Тогда после выполнения задачи сервиса геообработки геотриггер автоматически сработает после изменения объекта и обновит атрибутивные поля по указанным выходным параметрам.
При этом в строке Значение можно указывать макросы вида (здесь OutputFeatureLayer - имя параметра для выходного слоя, см. Рисунок 769 ; prop - имя свойства из файла JSON, полученного по завершении работы инструмента геообработки, см. Рисунок 770 ):
- Таймаут - по умолчанию указано 0 секунд . Укажите предельное время ожидания выполнения задачи сервиса геообработки, по окончании которого выполнение геотриггера будет остановлено.
Вы можете использовать для указания значений входных параметров информацию об объектах, связанных с текущим. Для этого настройте связанный слой (группа настроек
Источники
). Именно этот источник затем используется для вставки в макросах вида
{Relations.
rel_table
.
submacros
}
в качестве
rel_table
(см. описание макроса в п.
14.6.4.8.1
).
-
Название
- имя источника, которое будет использоваться в макросах в качестве
rel_table
;
Используйте латинские буквы, цифры и знак подчеркивания для указания названия.
- Найти связанный слой - По названию класса связей , По названию класса объектов - выберите, как будет задан связанный слой;
-
Имя класса объектов/связей
;
Соответственно выбранному в параметре Найти связанный слой , укажите название таблицы связей или название класса связанных объектов.Вы можете задать имя класса объектов, с которым не установлено связи (relationship). В таком случае для установления связи с текущим слоем по кнопке
задайте
Первичный ключ
и
Внешний ключ
.
-
Определяющий запрос
;
Если первичный и внешний ключи не заданы, вы можете задать определяющий запрос, по которому будет определяться связанный объект.В запросе вы можете использовать макросы вида {CurrentFeature. field_name } , где field_name - атрибутивное поле текущего объекта.
-
Сортировка по полю
.
Для макросов будет использоваться первый найденный связанный объект.При необходимости задайте атрибутивное поле для сортировки объектов связанного слоя.
Неиспользуемый источник можно отключить, нажав на
в строке с названием источника, или удалить по кнопке
.
Рисунок 771 - Пример настройки геотриггера Вызов задачи геообработки
Рисунок 772 - Настройки источника связанных объектов
Вызов .NET метода
Геотриггер
Вызов .NET метода
позволяет выполнить вызов .NET метода с использованием функциональных возможностей .NET собственной библиотеки в dll-файле, и применить метод в процессе создания/обновления объекта.
Например, этот геотриггер можно использовать для перевода текста с русского на английский язык, в этом случае при создании/обновлении объекта геотриггер автоматически сделает запись в указанном атрибутивном поле на английском языке.
Чтобы добавить геотриггер, нажмите кнопку
Добавить геотриггер
, выберите
Вызов .NET метода
,
выделенный ниже,
см.
Рисунок 773
и добавьте необходимые настройки, см.
Рисунок 774
.
Рисунок 773 - Добавление геотриггера Вызов .NET метода
Рисунок 774 - Настройки геотриггера Вызов .NET метода
При необходимости задайте название добавленному геотриггеру в опции
Название
.
В опции
Сервис
укажите название картографического сервиса, к которому установлено подключение в
Конструкторе
для интерактивной карты, и функциональность которого будет расширять геотриггер.
В параметре
Операции
определите, при выполнении каких операций плагина
Редактирование
будет выполняться геотриггер:
-
Создание объекта
;
-
Обновление объекта
;
-
Удаление объекта
;
-
Добавление связи
;
-
Обновление связи
;
-
Удаление связи
;
-
Добавление вложения
;
-
Обновление вложения
;
-
Удаление вложения
.
- В опции Для пользователей выберите из выпадающего списка, для каких пользователей или групп пользователей будет выполняться геотриггер:
- Любых ;
- Неавторизованных ;
- Авторизованных ;
- Входящих в любую из групп ;
- Входящих во все группы .
-
Для какого слоя картографического сервиса будет выполняться геотриггер. Для этого в поле
Слои
нажмите
и укажите номера слоев.
- Задайте проверку ограничений, заданных для редактирования объектов: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам , подробнее см. п. 14.6.3 . В результате геотриггер будет запущен только при соблюдении заданных условий, а также если у объекта будут изменены атрибутивные поля, указанные в условии Срабатывать, если изменены поля.
Пункт 1.
если включена опция
Условие на исходное состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «до обновления» или до сохранения объекта в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 775
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- Рисунок 775 - Настройка ограничения Условие на исходное состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам
Пункт 2.
если включена опция
Условие на изменяемое состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «после обновления» или после выполнения изменений в базе данных, однако до завершения транзакции в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 776
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- В опции Срабатывать, если изменены поля укажите атрибутивное поле/поля, при изменении значений которых будет выполняться геотриггер.
- Рисунок 776 - Настройка ограничения Условие на изменяемое состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам и Срабатывать, если изменены поля
В группе настроек
Параметры
укажите следующие настройки:
-
Время запуска
- укажите время запуска выполнения вызова .NET метода для автоматического срабатывания геотриггера при создании/обновлении объектов, по умолчанию задано
После обновления
, пример ниже, см.
Рисунок 777
.
Измените значение по умолчанию, если необходимо. Для параметра Время запуска доступны также следующие варианты:
- Путь до dll-файла .NET библиотеки ;
- Полное имя класса, включая namespaсe ;
- Имя статистического метода ;
- Аргументы метода ;
-
Поле для записи
- нажмите
, в
Имя поля
укажите название атрибутивного поля и
Значение
для возможности создать или обновить текущий объект по указанным выходным значениям от .NET метода с использованием функциональных возможностей .NET библиотеки.
- Таймаут - по умолчанию указано 0 секунд . Укажите предельное время ожидания выполнения вызова .NET метода, по окончании которого выполнение геотриггера будет остановлено.
Вы можете использовать для указания значений аргументов метода информацию об объектах, связанных с текущим. Для этого настройте связанный слой (группа настроек
Источники
). Именно этот источник затем используется для вставки в макросах вида
{Relations.
rel_table
.
submacros
}
в качестве
rel_table
(см. описание макроса в п.
14.6.4.8.1
).
-
Название
- имя источника, которое будет использоваться в макросах в качестве
rel_table
;
Используйте латинские буквы, цифры и знак подчеркивания для указания названия.
- Найти связанный слой - По названию класса связей , По названию класса объектов - выберите, как будет задан связанный слой;
-
Имя класса объектов/связей
;
Соответственно выбранному в параметре Найти связанный слой , укажите название таблицы связей или название класса связанных объектов.Вы можете задать имя класса объектов, с которым не установлено связи (relationship). В таком случае для установления связи с текущим слоем по кнопке
задайте
Первичный ключ
и
Внешний ключ
.
-
Определяющий запрос
;
Если первичный и внешний ключи не заданы, вы можете задать определяющий запрос, по которому будет определяться связанный объект.В запросе вы можете использовать макросы вида {CurrentFeature. field_name } , где field_name - атрибутивное поле текущего объекта.
-
Сортировка по полю
.
Для макросов будет использоваться первый найденный связанный объект.При необходимости задайте атрибутивное поле для сортировки объектов связанного слоя.
Неиспользуемый источник можно отключить, нажав на
в строке с названием источника, или удалить по кнопке
.
Рисунок 777 - Пример настройки геотриггера Вызов .NET метода
Рисунок 778 - Настройки источников связанных объектов
Создание объекта в таблице
Геотриггер
Создание объекта в таблице
позволяет автоматически вносить, обновлять или удалять записи в таблице базы данных при наступлении события с объектом целевого слоя.
Геотриггер может использоваться, чтобы фиксировать изменения объектов для последующего анализа, отправки уведомлений или интеграции с внешними системами. Пользователь задаёт таблицу и поля - система сама сформирует корректную операцию с учётом макросов и условий.
Чтобы добавить геотриггер, нажмите кнопку
Добавить геотриггер
, выберите
Создание объекта в таблице
(см.
Рисунок 779
) и задайте необходимые настройки (см.
Рисунок 780
).
Рисунок 779 - Добавление геотриггера Создание объекта в таблице
Рисунок 780 - Настройки геотриггера Создание объекта в таблице
При необходимости задайте название добавленному геотриггеру в опции
Название
.
В опции
Сервис
укажите название картографического сервиса, к которому установлено подключение в
Конструкторе
для интерактивной карты, и функциональность которого будет расширять геотриггер.
В параметре
Операции
определите, при выполнении каких операций плагина
Редактирование
будет выполняться геотриггер:
-
Создание объекта
;
-
Обновление объекта
;
-
Удаление объекта
;
-
Добавление связи
;
-
Обновление связи
;
-
Удаление связи
;
-
Добавление вложения
;
-
Обновление вложения
;
-
Удаление вложения
.
- В опции Для пользователей выберите из выпадающего списка, для каких пользователей или групп пользователей будет выполняться геотриггер:
- Любых ;
- Неавторизованных ;
- Авторизованных ;
- Входящих в любую из групп ;
- Входящих во все группы .
-
Для какого слоя картографического сервиса будет выполняться геотриггер. Для этого в поле
Слои
нажмите
и укажите номера слоев.
- Задайте проверку ограничений, заданных для редактирования объектов: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам , подробнее см. п. 14.6.3 . В результате геотриггер будет запущен только при соблюдении заданных условий, а также если у объекта будут изменены атрибутивные поля, указанные в условии Срабатывать, если изменены поля.
Пункт 1.
если включена опция
Условие на исходное состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «до обновления» или до сохранения объекта в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 781
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- Рисунок 781 - Настройка ограничения Условие на исходное состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам
Пункт 2.
если включена опция
Условие на изменяемое состояние объекта
и заданы соответствующие настройки, это означает, что объект находится в состоянии «после обновления» или после выполнения изменений в базе данных, однако до завершения транзакции в базе данных. Задайте следующие настройки, пример ниже, см.
Рисунок 782
:
-
Определите объекты, при редактировании которых будет выполняться геотриггер. Задайте
Определяющий запрос
на SQL и геотриггер будет выполняться при редактировании объекта слоя, значение которого удовлетворяет запросу. Для этого нажмите
.
Выражение запроса строится в следующем виде: - <Название атрибутивного поля> <Оператор сравнения> <‘Имя значения в атрибутивном поле’>
или
<Название атрибутивного поля> <Оператор сравнения> <Численное представление значения в атрибутивном поле>
Например:
Status = ‘Выполнен’
Length > 20.
- Определите территорию, в границах которой при создании или редактировании объектов будет выполняться геотриггер. Для этого отметьте опцию Ограничение по экстенту , задайте координаты и координатную систему.
- Определите объект слоя картографического сервиса. Для этого отметьте опцию Ограничение по объектам , укажите название класса пространственных объектов и создайте SQL-запрос, определяющий необходимую территорию.
- В опции Срабатывать, если изменены поля укажите атрибутивное поле/поля, при изменении значений которых будет выполняться геотриггер.
- Рисунок 782 - Настройка ограничения Условие на изменяемое состояние объекта к опциям: Определяющий запрос, Ограничение по экстенту, Ограничение по объектам и Срабатывать, если изменены поля
В группе настроек
Параметры
укажите следующие настройки:
- Момент запуска - укажите момент запуска выполнения геотриггера при создании/изменении/удалении объектов:
-
Имя таблицы в БД
-
укажите имя таблицы, в которую будут вноситься изменения;
Таблица должна находиться в той же базе данных, что и целевой слой.
- Режим добавления записи :
- Заполняемые поля для создания записи - список пар «поле-значение», которые заполняются при создании новой записи;
- Заполняемые поля для обновления записи - список пар «поле-значение», которые заполняются при обновлении записи;
- Значение полей считать SQL‑выражениями - по умолчанию Нет , если включено, значения заполняемых полей интерпретируются как SQL‑выражения;
-
SQL‑условие для обновления записей
- фильтр (WHERE‑условие) для поиска строки, которую требуется обновить;
Если условие не задано, обновление не выполняется.
-
SQL‑условие для удаления записей
- фильтр для удаления строк.
Удаляются все записи, удовлетворяющие фильтру.
В качестве значений заполняемых полей вы можете указать фиксированные значения, макросы из п.
16
, а также дополнительно следующие макросы:
- макросы разрешенных операций SOE (для всех макросов операций значение 1 - операция разрешена, 0 - запрещена):
- макросы значений атрибутов текущего или связанного объекта (аналогично макросам для геотриггера Рассылка сообщений , см. п. 14.6.4.8.1 ).
- контекстные макросы для передачи слоя и токена:
Обратите внимание, что при использовании макроса вида
{Relations.
rel_table
.
submacros
}
(см. описание макроса в п.
14.6.4.8.1
), необходимо задать источник связанных объектов, который используется в качестве
rel_table
.
Для этого в разделе
Источники
нажмите
и добавьте источник связанных объектов, задав следующие настройки (см.
Рисунок 783
):
-
Название
- имя источника, которое будет использоваться в макросах в качестве
rel_table
;
Используйте латинские буквы, цифры и знак подчеркивания для указания названия.
- Найти связанный слой - По названию класса связей , По названию класса объектов - выберите, как будет задан связанный слой;
-
Имя класса объектов/связей
;
Соответственно выбранному в параметре Найти связанный слой , укажите название таблицы связей или название класса связанных объектов.Вы можете задать имя класса объектов, с которым не установлено связи (relationship). В таком случае для установления связи с текущим слоем по кнопке
задайте
Первичный ключ
и
Внешний ключ
.
-
Определяющий запрос
;
Если первичный и внешний ключи не заданы, вы можете задать определяющий запрос, по которому будет определяться связанный объект.В запросе вы можете использовать макросы вида {CurrentFeature. field_name } , где field_name - атрибутивное поле текущего объекта.
-
Сортировка по полю
.
Для макросов будет использоваться первый найденный связанный объект.При необходимости задайте атрибутивное поле для сортировки объектов связанного слоя.
Неиспользуемый источник можно отключить, нажав на
в строке с названием источника, или удалить по кнопке
.
Рисунок 783 - Настройки источников связанных объектов
-
Редактирование объектов. Плагин Редактирование.
- Редактирование объектов и табличных записей на карте. Плагин Редактирование. Общие положения.
- Настройка плагина Редактирование
- Принцип работы плагина Редактирование с вложенными геотриггерами
-
Геотриггеры
- Геотриггеры. Общие положения.
- Шаблоны геотриггеров
- Связывание объектов по пересечению. Создание пространственных связей.
- Автоматическая запись значения одного из связанных объектов. Редактирование связанных объектов.
- Автоматическая запись значений в атрибутивные поля объекта. Обновление поля.
- Прямое и обратное геокодирование при создании и обновлении объектов
- Построение буферной зоны редактируемого объекта
- Автоматическая рассылка сообщений при редактировании объектов
- Запись в значение объекта количества связанных с ним объектов другого слоя. Подсчет количества связей.
- Расчет геометрических атрибутов редактируемого объекта
- Вызов SQL-команды
- Вызов задачи геообработки
- Вызов .NET метода
- Создание объекта в таблице