Циклы и операции с данными

Введение в Power Automate

Anushika Agarwal

Cloud Data Engineer

Apply to each

Схема последовательного выполнения Apply to each: наверху блок Array of items с тремя цветными «таблетками» — item a (жёлтая), item b (синяя), item c (розовая); стрелка ведёт в пунктирный лавандовый контейнер Apply to each с подписью sequential by default, внутри которого три карточки итераций, расположенные друг под другом и соединённые стрелками вниз; каждая карточка показывает Iteration N с Current item, равным соответствующей цветной «таблетке» (сначала a, затем b, затем c), и строку Process this item под ней

 

  • Обрабатывает массив поэлементно
  • Выполняется один раз для каждого элемента, обращаясь к Current item
  • По умолчанию последовательно; для параллельного выполнения используйте Concurrency control
Введение в Power Automate

Current item

 

  • Current item — значение для этой итерации
  • Меняется с каждым проходом цикла
  • Доступен в панели Dynamic content

$$

Обратите внимание: частая ошибка — использование всего массива вместо Current item

Реальная панель Dynamic content в Power Automate, открытая из поля Inputs действия Compose: перечислены группы токенов Compose, Manually trigger a flow с опцией See more 19, Date, Full address, Country/Region, City, State, Street, а внизу — раздел Apply to each с выделенным красной рамкой элементом Current item

Введение в Power Automate

Сначала фильтр, потом цикл

  • Сначала примените Filter Array

Упрощённая горизонтальная схема на белом фоне: слева столбец Full list из 8 плиток-тикетов (3 оранжевые Urgent, 5 серых), стрелка ведёт в лавандовую карточку Filter Array с выражением item Status is equal to Urgent моноширинным шрифтом, затем стрелка — к короткому столбцу из 3 оранжевых тикетов Urgent справа

Введение в Power Automate

Меньше работы на прогон

 

Без Filter Array С Filter Array
Запусков цикла 500 раз 12 раз
Проверок условия за прогон 500 (по одной на элемент) 0 (сделал фильтр)
Вызовов API за прогон 500 12

 

  • Filter Array выполняется один раз. Condition внутри Apply to each выполняется на каждой итерации
Введение в Power Automate

Действие Filter array

 

Реальная карточка действия Filter array в Power Automate, обрезанная до панели параметров: поле From с плейсхолдером Array to filter и Filter Query с тремя подполями Choose a value, is equal to, Choose a value, а также ссылка Edit in advanced mode

 

  • From: массив для фильтрации
  • Filter Query: одна строка условия — Left, Operator, Right
  • Используйте item()?['Field'] в Left, чтобы прочитать поле из каждого элемента
  • Filter array возвращает Body — отфильтрованный массив. При переборе выбирайте Body
Введение в Power Automate

Body, а не Body Item

 

Реальный селектор динамического содержимого в Power Automate, открытый под карточкой Apply to each: раздел Filter array с двумя результатами — Body выделен зелёной рамкой, а Body Item под ним выделен красной рамкой

 

  • Когда Apply to each использует результат Filter array, выбирайте Body
  • Body — это весь отфильтрованный массив. Body Item — одна запись, и цикл выполнится только один раз
Введение в Power Automate

Do Until

 

  • Повторяет действия, пока условие не станет истинным
  • Не для массивов — для этого есть Apply to Each
  • Используйте для опроса (polling) или повторных попыток

$$

Всегда задавайте лимит счётчика, чтобы избежать бесконечных циклов

Схема цикла Do Until: пунктирный лавандовый контейнер с подписью Do Until и жёлтым значком безопасности Count limit 60 в правом верхнем углу; внутри контейнера вверху блок Run action(s) с подписью «например, проверка статуса задания», стрелка вниз ведёт к нейтральному ромбу Condition met?, ветка False изгибается влево и вверх, возвращаясь в Run action(s) с меткой repeat, а ветка True идёт вниз через зелёную подпись True (выход из цикла) и покидает контейнер, попадая в зелёный блок Continue flow внизу

Введение в Power Automate

Операции с данными

 

Операция Что делает Когда полезна
Select Преобразует каждый элемент, выбирает поля Оставить в массиве только нужные столбцы
Join Элементы → одна строка с разделителем Список через запятую в теме письма
Create HTML table Массив → HTML для писем Отформатированная сводка в теле письма
Create CSV table Массив → CSV для экспорта Прикрепить данные для Excel или других систем

 

Select + Create HTML table — основная связка для тела письма.

Введение в Power Automate

Давайте потренируемся!

Введение в Power Automate

Preparing Video For Download...