Power Automate: используйте выражения, чтобы уменьшить массив объектов - PullRequest
0 голосов
/ 18 февраля 2020

Я нахожусь в процессе создания потока, который при активации триггера отправляет пользователю приглашение.

enter image description here

Пользователь выбирает ответ, а затем поток отправляет сообщение в соответствующем канале. Элементы подсказки поступают из списка действий. Я могу использовать body('ListChannels')?['value] для анализа ответа. Ответ представляет собой массив, в котором каждый объект выглядит следующим образом:

{
  "id":"",
  "displayName":"General",
  "description":"Used to test in-development features",
  "email":"",
  "webUrl":""
}

Я хочу reduce для каждого объекта просто нажать клавишу displayName и использовать полученный результат в качестве входных данных для следующего действия, это Принятые входные данные для этого действия: ["General", "Channel2", "Channel3"]

Есть ли способ преобразовать это, используя предоставленные выражения / действия для автоматизации? Мне также нужно использовать ответ для поиска соответствующей записи массива «id» для отправки сообщения на этот канал.

1 Ответ

0 голосов
/ 18 февраля 2020

Одной из возможностей является использование операторов цикла и управления для выполнения действий «уменьшение» и «поиск»:

Для уменьшения : инициализация переменной ( s) (массив) сначала и pu sh значение поиска для массива (ов):

enter image description here Поскольку для ввода следующего действия требуются параметры, которые Для чтения пользователю мы должны использовать имя канала.

Для поиска : L oop через исходный массив объектов и сравнение каждого объекта канала введите значение для вашего запроса:

enter image description here

Ответ пользователя сохраняется в selectedResponse. Мы можем l oop просмотреть каждый элемент из исходного списка каналов и сравнить его с именем канала каждого объекта. Если есть совпадение. Мы можем использовать текущие элементы id в качестве аргумента для действия «Разместите собственную адаптивную карту» .

Результат :

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...