Читати англійською

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


Використання виразів в умовах для перевірки кількох значень

У цьому уроці ви навчитеся використовувати вирази та умови для порівняння кількох значень у розширеному режимі.

Під час створення хмарного циклу можна використовувати картку стану в базовому режимі, щоб швидко порівняти одне значення з іншим. Однак бувають випадки, коли потрібно порівнювати кілька значень. Наприклад, може знадобитися перевірити значення кількох стовпців в електронній таблиці або таблиці бази даних.

Ви можете використовувати будь-яку комбінацію наведених нижче логічних виразів у своїх умовах.

Expression Опис Приклад
і Приймає два аргументи і повертає true, якщо обидва значення істинні.
Примітка: Обидва аргументи мають бути булевими.
Цей вираз повертає false:
and(greater(1,10),equals(0,0))
або Приймає два аргументи та повертає true, якщо будь-який з аргументів істинний.
Примітка: Обидва аргументи мають бути булевими.
Цей вираз повертає true:
or(greater(1,10),equals(0,0))
дорівнює Повертає значення true, якщо два значення рівні. Наприклад, якщо parameter1 є someValue, цей вираз повертає true:
equals(parameters('parameter1'), 'someValue')
менш Приймає два аргументи і повертає true, якщо перший аргумент менший за другий.
Примітка: Підтримуються такі типи: ціле число, число з плаваючою точкою та рядок.
Цей вираз повертає true:
less(10,100)
lessOrEquals Приймає два аргументи та повертає true, якщо перший аргумент менший або дорівнює другому аргументу.
Примітка: Підтримуються такі типи: ціле число, число з плаваючою точкою та рядок.
Цей вираз повертає true:
lessOrEquals(10,10)
Більше Приймає два аргументи і повертає true, якщо перший аргумент більший за другий.
Примітка: Підтримуються такі типи: ціле число, число з плаваючою точкою та рядок.
Цей вираз повертає false:
greater(10,10)
greaterOrEquals Приймає два аргументи та повертає true, якщо перший аргумент більший або дорівнює другому аргументу.
Примітка: Підтримуються такі типи: ціле число, число з плаваючою точкою та рядок.
Цей вираз повертає false:
greaterOrEquals(10,100)
порожній Повертає true, якщо об’єкт, масив або рядок порожні. Цей вираз повертає true:
empty('')
not Повертає значення, протилежне логічному. Цей вираз повертає true:
not(contains('200 Success','Fail'))
якщо Повертає конкретне значення, якщо вираз призводить до true або false. Цей вираз повертає "так":
if(equals(1, 1), 'yes', 'no')

вимоги

Ось що вам знадобиться, щоб виконати це покрокове керівництво.

  • Доступ до Power Automate.
  • Ваша власна електронна таблиця з таблицями, описаними далі в цьому покроковому керівництві. Обов’язково збережіть свою електронну таблицю в такому місці, як Dropbox або Microsoft OneDrive , щоб мати Power Automate до неї доступ.
  • Microsoft 365 Outlook (Хоча ми використовуємо Outlook тут, ви можете використовувати будь-який підтримуваний поштовий сервіс у своїх потоках.)

Використовуйте вираз ’or’

Іноді робочий процес має виконати дію, якщо значенням елемента є значення A або значенняB . Наприклад, ви можете відстежувати статус завдань у таблиці електронної таблиці. Припустимо, що таблиця має стовпець з іменем Статус і можливі значення в цьому стовпці:

  • Завершено
  • заблоковано
  • Непотрібних
  • не розпочато

Ось приклад того, як може виглядати електронна таблиця:

Знімок екрана зразка електронної таблиці зі стовпцем Статус.

З огляду на попередню електронну таблицю, ви хочете використовувати Power Automate для видалення всі рядки зі стовпцем Статус , який встановлено як завершений або непотрібний.

Давайте створимо ланцюжок.

Почніть із порожнього потоку

  1. авторизуйтесь Power Automate.

  2. На лівій панелі виберіть Мої потоки.

  3. Виберіть Новий потік>Запланований хмарний цикл.

Як додати тригер у ланцюжок

  1. Дайте своєму ланцюжку назву.

  2. Встановіть розклад, щоб запускати потік один раз на день.

  3. Натисніть кнопку Створити , щоб перейти до наступного кроку.

Примітка

Power Automate використовує класичний дизайнер хмарних потоків або дизайнер хмарних потоків з Copilot. Щоб визначити, який дизайнер ви використовуєте, перейдіть до розділу «Примітка » в розділі «Розуміння дизайнера хмарних потоків із можливостями другого пілота».

Виберіть електронну таблицю та отримайте всі рядки

  1. Виберіть елемент Новий крок.

  2. Знайдіть рядки, а потім виберіть Excel Online (бізнес).

    Виберіть дію отримати рядок , яка відповідає електронній таблиці, яку ви використовуєте. Наприклад, якщо ви використовуєте Google Таблиці, виберіть Google Таблиці - отримати рядки.

  3. Виберіть дію Список рядків, наявних у таблиці .

    Знімок екрана зі списком рядків у таблиці.

  4. Виберіть Розташування, Бібліотека документів, Файл і Таблиця , яка містить ваші дані.

    Знімок екрана полів «Розташування», «Бібліотека документів», «Файл» і «Таблиця» в рядках списку в таблиці картка.

Перевірте стовпець статусу кожного рядка

  1. Виберіть елемент Новий крок.

  2. Знайдіть застосувати до кожного, а потім виберіть Застосувати до кожного - Контроль.

  3. Додайте маркер value до поля Виберіть результат із попередніх кроків .

    Цей значення токен представляє таблицю електронної таблиці та всі її дані.

  4. Виберіть Додати дію на Застосувати до кожного картка.

  5. Знайдіть умову, а потім виберіть елемент керування Умова .

  6. Додайте наступний вираз Or . Цей вираз Or перевіряє значення кожного рядка в таблиці. Якщо значення стовпця Статус заповненоАбоне потрібне, вираз Or оцінюється як "true".

    Ось приклад умови картка.

    Скріншот виразу «або».

Як видалити відповідні рядки з електронної таблиці

  1. Виберіть Додати дію в гілці Якщо так умови.

    Гілка If yes виконується, якщо умова OR обчислюється як true.

  2. Виконайте пошук за запитом Видалити рядок, виберіть Excel Online (Business), а потім натисніть Видалити рядок.

  3. У полі Видалити рядоккартка встановіть поля Розташування, Бібліотека документів, Файл і Таблиця точно так, як ви встановили ці поля в рядках Списку, присутніх у таблицікартці раніше в цьому уроці.

  4. У розкривному списку Стовпець ключів виберіть PowerAppsId_.

  5. У поле «Значення ключа» вставте динамічне значення_ PowerAppsId_ .

  6. Збережіть цикл.

Запустіть ланцюжок за допомогою виразу «або»

Ланцюжок запускається після того, як ви його збережете. Якщо ви створили електронну таблицю, показану раніше в цьому уроці, ось як вона виглядає після завершення запуску.

Знімок екрана електронної таблиці після завершення виразу ’АБО’.

Зверніть увагу, що всі дані з заповнених або непотрібних рядків у стовпці «Статус » були видалені.

Використовуйте вираз ’and’

Припустимо, у вас є таблиця електронної таблиці з двома стовпцями. Назви стовпців: «Статус » і «Призначено». Також припустимо, що ви хочете видалити всі рядки, якщо значення стовпця «Стан» заблоковано , а в стовпці «Призначено » — Джон Вандер. Щоб виконати це завдання, дотримуйтесь всіх кроків, описаних вище в цьому посібнику, але коли ви редагуєте Умовукартку в розширеному режимі, використовуйте вираз and, показаний тут.

@and(equals(item()?['Status'], 'blocked'), equals(item()?['Assigned'], 'John Wonder'))

Ось приклад умови картка.

Скріншот виразу ’and’.

Запустіть ланцюжок з виразом ’and’

Якщо ви виконали кроки в цьому уроці, ваша електронна таблиця повинна виглядати так само, як на наступному скріншоті.

Знімок екрана електронної таблиці перед запуском ланцюжка.

Після запуску ланцюжка має виглядати так само, як на наступному знімку екрана.

Скріншот електронної таблиці після запуску ланцюжка.

Використовуйте вираз ’empty’

Зверніть увагу, що тепер в електронній таблиці є кілька порожніх рядків. Щоб видалити їх, скористайтеся порожнім виразом, щоб визначити всі рядки, у яких немає тексту в стовпцях «Призначено » та «Статус ».

Щоб виконати це завдання, дотримуйтесь всіх кроків, перелічених у розділі Використання виразу ’and’ раніше в цьому уроці. Коли ви редагуєте Умовукартку в розширеному режимі, використовуйте наступний порожній вираз.

@and(empty(item()?['Status']), empty(item()?['Assigned']))

Ваша Умовкартка має виглядати так само, як на наступному скріншоті.

Скріншот виразу

Після запуску ланцюжка таблиця має виглядати подібно до наведеного нижче скріншоту.

SScreenshot електронної таблиці після

Зверніть увагу, що зайві рядки видаляються зі столу.

Використовуйте вираз «більший»

Уявіть, що ви купили квитки на бейсбол для своїх колег і використовуєте електронну таблицю, щоб гарантувати, що ви отримуєте відшкодування від кожної людини. Ви можете швидко створити хмарний цикл, який щодня надсилатиме електронний лист кожній людині, яка не сплатила повну суму.

Використовуйте вираз «більше », щоб визначити працівників, які не сплатили повну суму. Після цього ви зможете автоматично надіслати електронний лист із нагадуванням тим, хто не сплатив у повному обсязі.

Ось вигляд електронної таблиці.

Скріншот таблиці тих, хто не заплатив у повному обсязі.

Ось реалізація більшого виразу , який ідентифікує всіх осіб, які сплатили менше, ніж належна з них сума.

@greater(item()?['Due'], item()?['Paid'])

Використовуйте вираз ’less’

Уявіть, що ви купили квитки на бейсбол для своїх колег і використовуєте електронну таблицю, щоб гарантувати, що ви отримаєте відшкодування від кожної особи до дати, на яку всі погодилися. Ви можете створити хмарний цикл, який надсилатиме електронний лист із нагадуванням кожній людині, яка не сплатила повну суму, якщо поточна дата менше ніж за один день до дати пологів.

Використовуйте вираз and з виразом less, оскільки є дві умови, які перевіряються.

Умова для перевірки Вираз для використання Приклад
Чи сплачено повну суму до сплати? більше @greater(item()?['Due'], item()?['Paid'])
До дати пологів залишилося менше одного дня? менш @less(item()?['DueDate'], addDays(utcNow(),1))

Об’єднайте вирази «більше» та «менше» у виразі «і»

Використовуйте вираз «більше », щоб визначити працівників, які заплатили менше повної суми, що підлягає сплаті, і використовуйте вираз «менше », щоб визначити, чи термін сплати платежу становить менше одного дня від поточної дати. Потім ви можете використовувати дію Надіслати електронний лист , щоб надсилати електронні листи з нагадуваннями тим співробітникам, які не сплатили в повному обсязі, а до дати сплати залишилося менше одного дня.

Ось вигляд таблиці електронної таблиці.

Скріншот таблиці електронної таблиці.

Ось реалізація виразу and , який ідентифікує всіх працівників, які заплатили менше належної їм суми, а термін сплати становить менше одного дня від поточної дати.

@and(greater(item()?['Due'], item()?['Paid']), less(item()?['dueDate'], addDays(utcNow(),1)))

Використання функцій у виразах

Деякі вирази отримують свої значення з дій під час виконання, які можуть ще не існувати, коли починає працювати хмарний цикл. Для посилання на ці значення або роботи з ними у виразах можна використовувати функції, які надає мова визначення робочого циклу. Довідково. Щоб дізнатися більше, перейдіть до Довідкового посібника з функцій виразу робочого процесу в Azure Logic Apps та Power Automate.

Тренінг: Ознайомлення з виразами in Power Automate (module)