Добавление триггеров действий в виджеты

Вы можете сделать следующее, чтобы создать динамические и интерактивные приложения с помощью Experience Builder:

  • Соединить виджеты с данными и настройте их с помощью динамических ресурсов.
  • Настроить взаимодействие между виджетами.

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

Структура взаимодействия

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

  • Триггеры из исходного виджета
  • Цели, реагирующие на триггер, включая виджеты и среду приложения
  • Действия со стороны цели, связанные с ее целевым использованием

Триггер исходного виджета может быть добавлен только один раз; однако вы можете добавить несколько действий для этого конкретного триггера из одной или другой цели.

Триггеры

Триггеры – это события, генерируемые исходным виджетом. Когда возникает триггер, любые добавленные к нему действия выполняются в качестве ответа. В следующей таблице описаны два типа триггеров, которые поддерживаются в настоящее время:

ТриггерОписание

Изменения экстента

Триггер возникает, когда экстент карты изменяется посредством панорамирования, масштабирования, изменения размера и так далее.

Изменения выборки записей

Триггер возникает, когда выбрана запись или выбор записи очищен.

Чтобы просмотреть доступные триггеры виджета, откройте его настройки и нажмите Добавить триггер на вкладке Действие. В следующей таблицы приведены исходные виджеты и поддерживаемые триггеры:

Исходный виджетИзменения экстентаИзменения выборки записей

Карта

Да

Да

Список

Да

Информация об объекте

Да

Цели

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

Действия

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

Различные цели обеспечивают различные действия, соответствующие различным триггерам. Доступные действия появляются, как только вы добавляете триггер и выбираете цель. В следующей таблице перечислены цели и соответствующие им действия:

ЦельДействие*Триггер: Изменения выборки записейТриггер: Изменения экстента

Рабочая среда

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

Да

Выбрать записи данных** – Помечайте записи как выбранные.

Да

Виджет Карта

Закрепить – Сохранить текущий масштаб и центрировать в указанном местоположении.

Да

Да

Приблизить – Приблизить к указанному местоположению.

Да

Да

Подсветить – Подсветить объект на карте.

Да

Фильтровать – Храните только те данные, которые соответствуют условиям для просмотра виджета.

Да

Виджет Список

Фильтровать – Храните только те данные, которые соответствуют условиям для просмотра виджета.

Да

Да

Виджет Информация об объектах

Отобразить объект – Отобразить всплывающее окно с информацией для выбранного объекта.

Да

*Действия со средой влияют на каждый виджет, использующий одни и те же данные, настроенные в действии; действия виджета влияют только на целевой виджет.

**Выбранное состояние записи синхронизируется по всему приложению. Виджеты могут иметь различную конфигурацию для отображения выбранной записи.

Настройка и управление взаимодействиями

Настройте взаимодействие на вкладке Действие исходных виджетов (виджеты, предоставляющие триггеры). Добавьте и выберите триггер, выберите цель, а также добавьте и выберите действия. Каждый триггер можно добавить только один раз, но вы можете добавить несколько действий для одного и того же триггера, нажав Добавить действие. Действия для одного и того же триггера происходят в последовательном порядке. Перетащите действия, сгруппированные под триггером, чтобы изменить порядок.

Некоторые действия, такие как Фильтровать, Подсветить и Выбрать записи данных, требуют дополнительной настройки. При выборе действия отображаются параметры Настройки действия. После настройки вы можете изменить настройки позже, нажав кнопку Настройки действия Settings. Чтобы изменить действие или цель после добавления действия, необходимо удалить его и добавить новое. Удаление триггера также удаляет все добавленные к нему действия.

Пример использования

Добавьте триггеры действий для поддержки следующих требований к дизайну приложений:

  • Вы хотите создать приложение, которое сравнивает две карты, две сцены или карту и сцену, поэтому экстенты двух виджетов карты всегда должны быть синхронизированы. Вы можете добавить триггер Изменения экстента к обоим виджетам, выбрать другой виджет в качестве цели для каждого из них и выбрать действие Закрепить или Приблизить.
  • Вы добавляете виджет Список рядом с виджетом Карта и хотите, чтобы список отображал только записи в текущем экстенте карты. Вы можете добавить триггер Изменения экстента в виджет Карты, выбрать действие Фильтра виджета списка и настроить действие с пространственным отношением к экстенту.
  • Вы отображаете объекты в виджете Карта и хотите показать детали выбранного объекта в виджете Информация об объекте. Вы можете добавить триггер Изменения выборки записей в виджет Карта, выбрать виджет Информация об объекте в качестве цели и выбрать действие Отобразить объект.