Поделиться через


Добавление условий для управления выполнением действий рабочего процесса в Azure Logic Apps

Применяется к: Azure Logic Apps (Расход + Стандарт)

Если вы хотите настроить условие, которое будет возвращать значение true или false и результат которого определяет, по какому из предоставленных путей действий будет идти ваш рабочий процесс, добавьте в рабочий процесс действие Control с именем Condition. Вы также можете вложить условия друг в друга.

Например, предположим, что у вас есть рабочий процесс, который отправляет слишком много сообщений электронной почты, когда новые элементы отображаются на RSS-канале веб-сайта. Действие условия можно добавить для отправки электронной почты только в том случае, если новый элемент содержит определенное слово.

Замечание

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

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

Предпосылки

Добавить условие

  1. В портал Azure откройте ресурс приложения логики потребления.

  2. В меню боковой панели в разделе "Средства разработки" выберите конструктор, чтобы открыть пустой рабочий процесс.

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

  3. Добавьте триггер, который вы хотите, выполнив общие действия по добавлению триггера.

  4. Добавьте действие условия в рабочий процесс, выполнив общие действия, чтобы добавить действие.

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

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

      После выбора в поле "Выбор значения " отображаются параметры для открытия списка динамического содержимого (значок молнии) или редактора выражений (значок формулы).

      Снимок экрана показывает портал Azure, конструктор рабочих процессов расхода, триггер RSS и действие «Условие» с открытой панелью сведений и выбранной кнопкой динамического содержимого.

    2. Щелкните значок молнии, чтобы открыть список динамического содержимого.

      В этом списке можно выбрать выходные данные из предыдущих шагов в рабочем процессе. В этом примере выбраны выходные данные триггера RSS с именем Сводка веб-канала. Если этот параметр не отображается, может потребоваться выбрать дополнительные сведения.

      Снимок экрана — портал Azure, дизайнер рабочих процессов потребления, триггер RSS и условное действие с настройкой критериев.

    3. В среднем поле выберите операцию для выполнения.

      В этом примере выбирается содержит.

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

      В этом примере указывается следующая строка: Майкрософт

    В следующем примере показано полное условие:

    Снимок экрана показывает рабочий процесс потребления и полные критерии условий.

    • Чтобы добавить другую строку в условие, в меню "Создать элемент " выберите "Добавить строку".

    • Чтобы добавить группу с подкондициями, в меню "Создать элемент " выберите "Добавить группу".

    • Чтобы сгруппировать существующие строки, установите флажки для этих строк, нажмите кнопку многоточия (...) для любой строки, а затем нажмите кнопку "Создать группу".

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

    Снимок экрана показывает рабочий процесс потребления и условие с путями истинности и лжи.

    Подсказка

    Можно перетащить существующие действия в ветви True и False.

  7. Сохраните ваш рабочий процесс. На панели инструментов конструктора выберите Сохранить.

Этот рабочий процесс теперь отправляет почту только в том случае, если новые элементы в RSS-канале соответствуют условию.

Определение JSON

В следующем коде показано определение JSON высокого уровня для действия условия . Для полного определения см. в справочном руководстве по схеме для типов триггеров и действий в Azure Logic Apps.

"actions": {
   "Condition": {
      "type": "If",
      "actions": {
         "Send_an_email_(V2)": {
            "inputs": {},
            "runAfter": {},
            "type": "ApiConnection"
         },
      },
      "expression": {
         "and": [ 
            {
               "contains": [ 
                  "@triggerBody()?['summary']",
                  "Microsoft"
               ]
            }
         ]
      },
      "runAfter": {
         "Condition": [
            "Succeeded"
         ]
      }
   }
},