Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Создавая облачный поток, вы можете быстро сравнивать одно значение с другим, используя действие Условие. Но в некоторых случаях требуется сравнить несколько значений. Например, вам необходимо проверить значение в нескольких столбцах электронной таблицы или таблицы базы данных.
В этом руководстве вы создадите облачный поток и примените условие or. В разделе Сценарии для других распространенных выражений вы узнаете, как использовать другие выражения, такие как and, empty, greater и less в условиях.
Предварительные требования
Вот что вам понадобится для завершения этого руководства.
- Войдите в Power Automate.
- Ваша электронная таблица с таблицами, приведенными далее в этом руководстве. Сохраните электронную таблицу в таком расположении, как Dropbox или Microsoft OneDrive, чтобы она была доступна для Power Automate.
- Microsoft 365 Outlook (Хотя в этом руководстве используется Outlook, в своих потоках вы можете использовать любую поддерживаемую службу электронной почты.)
Создание облачного потока
Вы можете создать облачный поток, используя естественный язык в Copilot, или создать его с нуля. Если у вас есть доступ к Copilot, перейдите на вкладку С помощником для создания потока. Если у вас нет доступа к Copilot, выберите вкладку Без помощника.
Войдите в Power Automate.
Попросите Copilot создать для вас поток. Скопируйте следующий запрос и вставьте его в поле Copilot:
Every week, list rows in an Excel table, and if the Status column equals Succeeded or claim manager's email is [email protected], delete Excel row.Выберите Создать.
Выберите Оставить и продолжить.
Проверьте подключения. Если источники данных подключены правильно, рядом с приложением или службой появится зеленая галочка. Если зеленая галочка не появилась, выберите приложение или службу и следуйте инструкциям.
После настройки подключений выберите Создать поток. Открывается экран конструктора. Здесь при необходимости можно настроить облачный поток.
Перейдите в раздел Выбор электронной таблицы и получение всех строк.
Выбор электронной таблицы и получение всех строк
После создания облачного потока получите таблицу со столбцом Состояние. Возможные значения в столбце Состояние следующие:
Иногда в рабочем процессе необходимо выполнить действие, если элемент имеет значение valueA или valueB. Например, вам требуется отследить состояние задач в электронное таблице. Предположим, что в таблице есть столбец с именем Состояние и в этом столбце возможны следующие значения:
completedblockedunnecessarynot started
Вот пример, как может выглядеть электронная таблица:
Для работы с электронной таблицей, начните с конструктора. Это можно сделать в новом конструкторе или в классическом конструкторе. Шаги схожи в обоих конструкторах. Подробнее (с примерами) см. в статье Определение различий между новым конструктором и классическим конструктором.
Создайте облачный поток или выберите его из списка существующих облачных потоков, выбрав Мои потоки в левой области навигации >Изменить.
В конструкторе выберите карточку действия Список строк, присутствующих в таблице.
На вкладке Параметры выберите Расположение, Библиотека документов, Файл и Таблица.
Сверните область конфигурации, выбрав (<<) в правом верхнем углу области конфигурации.
Перейдите в раздел Добавить условие.
Добавить условие
Прежде чем добавлять условие для проверки значения столбца Состояние в каждой строке электронной таблицы, убедитесь, что вы выполнили следующие процедуры, описанные в этом руководстве:
-
Создание облачного потока
- Также можно выбрать его из списка существующих облачных потоков, выбрав Мои потоки в левой области навигации >Изменить.
- Выбор электронной таблицы и получение всех строк
В конструкторе добавьте новый шаг, выбрав знак плюса (+) >Добавить действие.
На экране Добавить действие, выполните поиск применить к каждому, затем выберите Применить к каждому в разделе Элемент управления.
Добавьте токен значение в поле Выберите выходные данные из предыдущих шагов, выбрав внутри поля, затем выбрав значок молнии.
Этот маркер значения представляет электронную таблицу и все ее данные.
На карточке Применить к каждому добавьте новый шаг, выбрав знак плюса (+) >Добавить действие.
Найдите условие, а затем выберите элемент управления Условие.
Добавьте следующее выражение OR. Это выражение OR проверяет значение каждой строки в таблице.
Если в столбце Состояние задано значение ЗавершеноORНе требуется, выражение OR возвращает значение true.
Вот пример карточки Условие.
Перейдите в раздел Удаление совпадающих строк из электронной таблицы.
Удаление совпадающих строк из электронной таблицы
В этом руководстве условие Or используется для удаления строк со значением completed или unnecessary из электронной таблицы. Прежде чем добавить действие Удалить строку, убедитесь, что выполнены следующие процедуры:
-
Создание облачного потока
- Также можно выбрать его из списка существующих облачных потоков, выбрав Мои потоки в левой области навигации >Изменить.
- Выбор электронной таблицы и получение всех строк
- Добавить условие
В конструкторе выберите значок "плюс" (+), чтобы добавить действие в ветвь True условия.
Ветвь True запускается, если условие ИЛИ имеет значение True.
Выполните поиск Excel Online (для бизнеса), затем выберите Удалить строку.
На панели Удалить строку задайте поля Расположение, Библиотека документов, Файл и Таблица точно так же, как вы задали эти поля в карточке Список строк, присутствующих в таблице ранее в этом руководстве.
В раскрывающемся списке Ключевой столбец, выберите _PowerAppsId_.
В поле Значение ключа вставьте динамическое значение _PowerAppsId_.
Перейдите в раздел Сохранение и тестирование облачного потока.
Сохранение и тестирование облачного потока
- В конструкторе выберите Сохранить. Появится зеленое сообщение Поток готов к работе. Рекомендуем протестировать его.
- Выберите Тест, чтобы запустить поток.
- В области Проверить поток выберите Вручную>Тест.
- На панели Выполнить поток выберите Выполнить поток. Если поток настроен правильно, появится сообщение Выполнение потока успешно начато. Чтобы отслеживать его, перейдите на страницу выполнений потока.
- Чтобы закрыть панель Выполнить поток выберите Готово.
Поздравляем! Вы создали облачный поток, который удаляет строки из электронной таблицы, если значение в столбце Состояние равно либо completed, либо unnecessary. Вот как должна выглядеть ваша электронная таблица после завершения выполнения.
Обратите внимание, что удалены все данные из строк со значением завершено или не требуется в столбце Состояние.
Сценарии для других распространенных выражений
В этом разделе вы узнаете, как использовать другие выражения в условиях. В каждом сценарии убедитесь, что вы выполнили следующие процедуры, описанные в учебнике:
-
Создание облачного потока
- Также можно выбрать его из списка существующих облачных потоков, выбрав Мои потоки в левой области навигации >Изменить.
- Выбор электронной таблицы и получение всех строк
-
Добавить условие
- В процедуре Добавить условие примените выражение из этого раздела, которое требуется использовать в карточке Условие.
Вы можете использовать в условиях любое сочетание следующих логических выражений.
| Expression | Описание: | Пример |
|---|---|---|
| and | Принимает два аргумента и возвращает значение true, если оба аргумента имеют значение true. Примечание. Оба аргумента должны быть представлены логическими значениями. |
Это выражение возвращает значение false: and(greater(1,10),equals(0,0)) |
| or | Принимает два аргумента и возвращает значение true, если один аргумент имеет значение true. Примечание. Оба аргумента должны быть представлены логическими значениями. |
Это выражение возвращает значение true:or(greater(1,10),equals(0,0)) |
| равно | Возвращает значение true, если значения равны. | Например, если для parameter1 задано значение someValue, это выражение возвращает значение true:equals(parameters('parameter1'), 'someValue') |
| less | Принимает два аргумента и возвращает значение true, если значение первого аргумента меньше значения второго. Примечание. Поддерживаются следующие типы данных: целые числа, числа с плавающей запятой и строки. |
Это выражение возвращает значение true:less(10,100) |
| lessOrEquals | Принимает два аргумента и возвращает значение true, если значение первого аргумента меньше или равно значению второго. Примечание. Поддерживаются следующие типы данных: целые числа, числа с плавающей запятой и строки. |
Это выражение возвращает значение true:lessOrEquals(10,10) |
| greater | Принимает два аргумента и возвращает значение true, если значение первого аргумента больше значения второго. Примечание. Поддерживаются следующие типы данных: целые числа, числа с плавающей запятой и строки. |
Это выражение возвращает значение false:greater(10,10) |
| greaterOrEquals | Принимает два аргумента и возвращает значение true, если значение первого аргумента больше или равно значению второго. Примечание. Поддерживаются следующие типы данных: целые числа, числа с плавающей запятой и строки. |
Это выражение возвращает значение false:greaterOrEquals(10,100) |
| empty | Возвращает значение true, если объект, массив или строка являются пустыми. | Это выражение возвращает значение true:empty('') |
| not | Возвращает противоположное логическое значение. | Это выражение возвращает значение true:not(contains('200 Success','Fail')) |
| if | Возвращает определенное значение в зависимости от того, какое значение возвращает выражение: true или false. | Это выражение возвращает значение yes:if(equals(1, 1), 'yes', 'no') |
Использование выражения «and»
Предположим, у вас есть электронная таблица с двумя столбцами. Имена столбцов — Состояние и Кому назначено. Предположим также, что необходимо удалить все строки со значением заблокировано в столбце Состояние и значением John Wonder в столбце Кому назначено. Чтобы выполнить эту задачу, при редактировании карточки Условие в поле Добавить условие используйте выражение and, показанное здесь.
@and(equals(item()?['Status'], 'blocked'), equals(item()?['Assigned'], 'John Wonder'))
Вот пример карточки Условие.
Запуск потока с выражением «and»
Если вы выполнили шаги, описанные в этом разделе, ваша электронная таблица должна выглядеть примерно так, как показано на следующем снимке экрана.
После запуска потока ваша электронная таблица должна выглядеть примерно так, как показано на следующем снимке экрана.
Использование выражения «empty»
Обратите внимание, что сейчас в электронной таблице есть несколько пустых строк. Чтобы определить и удалить все строки без текста в столбцах Состояние и Кому назначено, воспользуйтесь выражением empty.
Для выполнения этой задачи выполните все шаги, перечисленные в разделе Использование выражения «and» в этом руководстве. Когда вы редактируете карточку Условие в расширенном режиме, используйте следующее выражение empty.
@and(empty(item()?['Status']), empty(item()?['Assigned']))
Ваша карточка Условие должна выглядеть аналогично следующему снимку экрана.
После запуска потока электронная таблица должна выглядеть примерно так, как показано на следующем снимке экрана.
Обратите внимание, что лишние строки удалены из таблицы.
Использование выражения «greater»
Предположим, вы приобрели билеты на бейсбольный матч для коллег и используете электронную таблицу, чтобы проверить, все ли вернули деньги за билеты. Вы можете быстро создать облачный поток, чтобы ежедневно отправлять по электронной почте сообщения всем пользователям, которые не оплатили полную сумму.
Используйте выражение больше, чтобы определить, кто из сотрудников еще не вернул всю сумму. После этого вы можете автоматически отправить им напоминание по электронной почте.
Электронная таблица выглядит так:
Ниже показана реализация выражения больше, которое позволяет определить всех сотрудников, вернувших меньшую сумму.
@greater(item()?['Due'], item()?['Paid'])
Использование выражения «less»
Предположим, вы приобрели билеты на бейсбольный матч для коллег и используете электронную таблицу, чтобы проверить, все ли вернули деньги за билеты до оговоренной даты. Вы можете создать облачный поток, чтобы отправлять сообщения электронной почты с напоминанием всем, кто еще не вернул полную стоимость, если до срока оплаты осталось меньше одного дня.
Используйте выражение and вместе с выражением less, так как проверяются два условия.
| Условие для проверки | Используемое выражение | Пример |
|---|---|---|
| Возвращена ли вся сумма? | greater | @greater(item()?['Due'], item()?['Paid']) |
| Осталось ли до срока оплаты меньше одного дня? | less | @less(item()?['DueDate'], addDays(utcNow(),1)) |
Объединение выражений «greater» и «less» с помощью выражения «and»
Используйте выражение больше, чтобы определить, кто из сотрудников вернул меньшую сумму, а выражение меньше, чтобы определить, осталось ли до срока оплаты меньше одного дня. Затем вы сможете выбрать действие Отправка электронного письма, чтобы отправить сообщение с напоминанием тем сотрудникам, кто не вернул всю сумму, а также если до срока оплаты осталось меньше одного дня.
Электронная таблица выглядит так:
Ниже показана реализация выражения И, которое позволяет определить, кто из сотрудников вернул меньшую сумму, а также осталось ли до срока оплаты меньше одного дня.
@and(greater(item()?['Due'], item()?['Paid']), less(item()?['dueDate'], addDays(utcNow(),1)))
Использование функций в выражениях
Некоторые выражения получают значения из действий времени выполнения, которые могут еще не существовать, когда облачный поток начинает работу. Чтобы ссылаться на эти значения или работать с ними в выражениях, вы можете использовать функции, предоставляемые языком определений рабочих процессов.
Подробнее см. в разделе Справочное руководство по функциям выражения рабочего процесса в Azure Logic Apps и Power Automate.