Запускать потоки при добавлении, изменении или удалении строки

Триггер При добавлении, изменении или удалении строки запускает поток всякий раз, когда строка выбранной таблицы и область изменяется или создается.

Предварительные условия

  • Чтобы создать поток, который запускается при создании, изменении или удалении строки, у вас должны быть разрешения на уровне пользователя для создания, чтения, записи и удаления в таблице Регистрация ответного звонка.

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

Следующая информация необходима для использования триггера При добавлении, изменении или удалении строки.

  • Условие триггера
  • Имя таблицы
  • Область действия

Заметка

Power Automate использует либо классический конструктор облачных потоков, либо конструктор облачных потоков с Copilot. Чтобы определить, какой конструктор вы используете, перейдите в раздел Заметка в пункте Знакомство с конструктором облачных потоков с возможностями Copilot.

Установите параметры непосредственно на карточке для триггера Когда строка добавляется, изменяется или удаляется.

Снимок экрана

Условие триггера

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

Когда поток запускается созданием, обновлением или удалением строки, значение triggerOutputs()['body/SdkMessage'] будет Create, Update или Delete соответственно.

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

Имя таблицы

В списке Имя таблицы отфильтрованы строки, чтобы точно указать, какие строки должны измениться до запуска потока. См. раздел Таблицы в Dataverse.

Триггер При добавлении, добавлении или удалении строки не поддерживает запуск потоков на отношениях типа 1:N или N:N.

Область действия

В списке Область указано, чьи строки следует отслеживать, чтобы определить, следует ли запускать поток.

Вот что означает каждая область:

Scope Уровень владения строкой
Подразделение Действия выполняются со строками, принадлежащими кому-либо в вашем подразделении.
Предприятие Действия предпринимаются кем-либо в пределах среды.
Родительское и дочернее подразделение Действия выполняются со строками, принадлежащими кому-либо в вашем подразделении или дочерним подразделении.
Пользователь Действия выполняются с принадлежащими вам строками.

Дополнительные параметры

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

Чтобы получить доступ к дополнительным параметрам, выберите Показать дополнительные параметры.

Снимок экрана с дополнительными параметрами.

Условия фильтра

Используйте условия фильтра, чтобы задать условия, когда запускать потоки.

Столбцы фильтра

Используйте поле Выбрать столбцы для определения конкретных столбцов строки, которые должны вызывать запуск потока при изменении, в виде списка уникальных имен столбцов, разделенных запятыми.

Это свойство применяется только к состоянию Обновить. Создать и Удалить применяются ко всем столбцам строки.

Это свойство не поддерживается в виртуальных таблицах.

Выражение фильтра

Выражение фильтра позволяет вам определить выражение фильтра стиля OData, чтобы помочь вам еще точнее определить условия триггера. Поток выполняется только тогда, когда выражение оценивается как истина после сохранения изменения в Dataverse. В следующих примерах поток запускается, когда firstname обновляется на «Джон».

Примеры для Фильтр строк:

firstname eq 'John'

contains(firstname,'John')

Чтобы узнать, как построить эти выражения фильтра, переходите к примерам в разделах стандартные операции фильтра и функции запросов.

В отличие от примеров в ссылках, ваше выражение не должно содержать строку $filter=. Эта строка применяется только тогда, когда вы используете API напрямую.

Условие ожидания с использованием задержки "до"

Используйте метку времени в стиле OData в свойстве Задержка до, чтобы отложить запуск потока до определенного времени в формате UTC.

Ключевое преимущество использования свойства Dataverse Задержка до вместо стандартного действияЗадержка до — свойство Dataverse Задержка до никогда не истекает, что позволяет потоку ждать в течение длительного периода времени.

Олицетворение пользователя с помощью "Запустить от имени"

Владелец потока должен иметь Microsoft Dataverse привилегию Действовать от лица другого пользователя (prvActOnBehalfOfAnotherUser). Роль безопасности Делегирование по умолчанию включает эту привилегию. Вы можете включить ее в любой роли безопасности. Для получения более подробной информации см. раздел Олицетворение другого пользователя.

Когда вы создаете потоки с триггером При добавлении, изменении или удалении строки, вы можете задать каждое действие Microsoft Dataverse в потоке, которое должно выполняться с использованием контекста пользователя, отличного от владельца потока.

Выполните следующие действия, чтобы выдать себя за пользователя.

  1. В конструкторе выберите значение для Запустить от имени, чтобы сообщить для Microsoft Dataverse, контекст какого пользователя вы собираетесь использовать для последующих действий Dataverse.
  2. Для каждого действия Dataverse, которое вы хотите запустить от имени другого пользователя, выберите многоточие (...) в правом верхнем углу, затем выберите параметр Использовать соединение инициатора.

Для шагов, на которых он не выбран, предполагается пользователь по умолчанию. Это вызывает базовые API-интерфейсы в соответствии с выбранным пользователем, а не владельцем потока. Если ничего не указано, по умолчанию используется владелец потока, создавший поток, а именно, автор.

Вот другие варианты:

  • Владелец потока. Пользователь, создавший поток.

  • Владелец строки. Пользователь, владеющий строкой Microsoft Dataverse, которая претерпела изменение, что привело к запуску потока. Если строка принадлежит рабочей группе, этот параметр возвращается к запуску от имени владельца потока.

  • Изменяющий пользователь. Пользователь, выполнивший действие со строкой Microsoft Dataverse, что вызвало запуск или изменение потока.

Кроме того, мгновенные потоки позволяют запускать шаги любого другого соединителя — такие как Microsoft Teams, Microsoft 365 Outlook или SharePoint в том же потоке, используя соединение вызывающей стороны. Для этого выполните следующие шаги:

  1. Перейдите на страницу обзора потока.

  2. Выберите Редактировать в параметрах Пользователи с правами только на выполнение.

  3. В области Управление разрешениями только на запуск перейдите на вкладку Пользователь и группы, а затем выберите Предоставлено пользователем с правами только для запуска в списке Используемые подключения.