Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Из этого руководства вы узнаете, как использовать выражения и условия для сравнения нескольких значений в расширенном режиме.
Создавая облачный поток, вы можете быстро сравнивать одно значение с другим, используя карточку Условие в простом режиме. Но в некоторых случаях требуется сравнить несколько значений. Например, вам необходимо проверить значение в нескольких столбцах электронной таблицы или таблицы базы данных.
Вы можете использовать в условиях любое сочетание следующих логических выражений.
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') |
Предварительные требования
Вот что вам понадобится для завершения этого пошагового руководства.
- Войдите в Power Automate.
- Ваша электронная таблица с таблицами, приведенными далее в этом пошаговом руководстве. Сохраните электронную таблицу в таком расположении, как Dropbox или Microsoft OneDrive, чтобы она была доступна для Power Automate.
- Microsoft 365 Outlook (Хотя в этом руководстве используется Outlook, в своих потоках вы можете использовать любую поддерживаемую службу электронной почты.)
Использование выражения «or»
Иногда в рабочем процессе необходимо выполнить действие в зависимости от того, какое значение у элемента: valueA или valueB. Например, вам требуется отследить состояние задач в электронное таблице. Предположим, что в таблице есть столбец с именем Состояние и в этом столбце возможны следующие значения:
- Завершено
- заблокировано
- не требуется
- не начато
Вот пример, как может выглядеть электронная таблица:
На примере электронной таблицы выше вам может потребоваться с помощью Power Automate удалить все строки, для которых в столбце Состояние задано значение завершено или не требуется.
Давайте создадим поток.
Начните с пустого потока
Выполните вход в Power Automate.
В левой области выберите Мои потоки.
Выберите Создать поток>Облачный поток по расписанию.
Добавление триггера в поток
Присвойте потоку имя.
Настройте запуск потока по расписанию один раз в день.
Выберите кнопку Создать, чтобы перейти к следующему шагу.
Заметка
- Power Automate использует либо классический конструктор облачных потоков, либо новый современный конструктор с возможностями Copilot. Чтобы определить, какой конструктор вы используете, перейдите в раздел Примечание в разделе Знакомство с конструктором облачных потоков.
- При переключении между классическим и новым конструктором вам будет предложено сохранить поток. Вы не сможете сохранить и переключиться, пока все ошибки не будут устранены.
Выбор электронной таблицы и получение всех строк
Вы можете использовать Copilot для создания потока самостоятельно или создать его вручную.
Создание потока с помощью Copilot
Попросите Copilot создать для вас поток. Введите следующий запрос в поле Copilot:
Каждую неделю составляйте список строк в таблице Excel и, если столбец «Состояние» равен «Успешно» или адрес электронной почты менеджера по претензиям [email protected], удаляйте строку Excel.
Выберите Отправить
.
После отправки запроса Copilot создаст поток. Чтобы поток работал, необходимо заполнить сведения, например параметры для различных действий, добавленных Copilot.
Создание потока вручную
Кроме того, можно выполнить следующую процедуру, чтобы создать такой же поток вручную:
Добавьте новый шаг, выбрав знак плюса (+) >Добавить действие.
Выполните поиск строки>Excel Online (для бизнеса)> действие Получить строку, соответствующее используемой электронной таблице.
Например, если используются Google Таблицы, выберите Google Таблицы — получить строки.
Выберите действие Список строк, присутствующих в таблице.
Выберите Расположение, Библиотеку документов, Файл и Таблицу, где содержатся ваши данные.
Просмотр значений в столбце состояния для каждой строки
Добавьте новый шаг, выбрав знак плюса (+) >Добавить действие.
На экране Добавить действие, выполните поиск применить к каждому, затем выберите Применить к каждому в разделе Элемент управления.
Добавьте токен Значение в поле Выберите выходные данные из предыдущих шагов, выбрав значок молнии.
Этот маркер значения представляет электронную таблицу и все ее данные.
На карточке Применить к каждому добавьте новый шаг, выбрав знак плюса (+) >Добавить действие.
Найдите условие, а затем выберите элемент управления Условие.
Добавьте следующее выражение OR. Это выражение OR проверяет значение каждой строки в таблице.
Если в столбце Состояние задано значение ЗавершеноORНе требуется, выражение OR возвращает значение true.
Вот пример карточки Условие.
Удаление совпадающих строк из электронной таблицы
Выберите значок "плюс" (+), чтобы добавить действие в ветвь True условия.
Ветвь True запускается, если условие ИЛИ имеет значение True.
Выполните поиск Excel Online (для бизнеса), затем выберите Удалить строку.
На панели Удалить строку задайте поля Расположение, Библиотека документов, Файл и Таблица точно так же, как вы задали эти поля в карточке Список строк, присутствующих в таблице ранее в этом руководстве.
В раскрывающемся списке Ключевой столбец, выберите _PowerAppsId_.
В поле Значение ключа вставьте динамическое значение _PowerAppsId_.
Сохраните свой поток.
Запуск потока с выражением «or»
Поток будет выполнен после его сохранения. Если вы создали электронную таблицу, приведенную ранее в этом руководстве, после выполнения последовательности таблица будет выглядеть так:
Обратите внимание, что удалены все данные из строк со значением завершено или не требуется в столбце Состояние.
Использование выражения «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.