Я новичок в Logic Apps и думаю, что это базовая проблема манипулирования данными, но я застрял в ней уже несколько дней и надеюсь, что кто-нибудь сможет мне помочь.
У меня есть рабочий процесс Azure Logic Apps, который запрашивает кучу адресов из Dataverse, и тогда:
Вот как выглядит рабочий процесс на этом скриншоте.

К сожалению, запрос API, который я отправляю, отформатирован неправильно, потому что он выглядит так.
но ожидается, как на этом скриншоте.
По сути, я не знаю, как добавить только содержимое массива без тела, которое получается в результате действия «Выбрать».
Действие «Выбрать» настроено как на этом скриншоте.
Я думал, что мне нужно использовать это действие, а не создание, потому что некоторые из этих полей AddressLine являются необязательными, и при использовании действия «Создать» в цикле For Each это приводит к сбою рабочего процесса из-за отсутствия полей.
В любом случае, есть ли какие-нибудь советы о том, как правильно манипулировать данными и создавать запрос JSON API, как ожидалось? Буду признателен за любую оказанную помощь!
Спасибо!
Я также попробовал заменить массив строковым подходом, но это не выглядело как чистая практика, потому что тогда мне пришлось манипулировать строкой, чтобы заменить некоторые символы при добавлении ее к полезной нагрузке JSON и при отправке ее третьей стороне. , почему-то подхватывал только первый пункт списка адресов, а не все.
@IkhtesamAfrin Извините, я впервые создаю сообщение в stackoverlow, и я только что заметил изображения, добавленные к тексту в качестве комментариев, я только что их исправил. Я думаю, вы имели в виду действие «Выбрать», которое создает объект с телом: и массивом в нем. Если вы имеете в виду, как я получаю данные из Dataverse, то это список строк из Dataverse с использованием запроса fetchXML.
Какую таблицу вы используете из действия списка строк?
@IkhtesamAfrin Я только что добавил скриншот части запроса в основной пост. Таблица, которую я использую, является пользовательской.
Попробуйте использовать действие Append to string variable, оно работает.
@IkhtesamAfrin Если я использую добавление к строковой переменной, мне придется манипулировать строкой, чтобы удалить часть «{body:» в начале, что я и сделал, и все было в порядке. Затем я добавил строку в полезный объект json (обернув строку в функцию json()), и она обрабатывает только первый элемент адреса, а не все адреса, представленные в строке.
Используя действие «Добавить к строковой переменной», я получаю ожидаемый результат . Я получаю этот вывод без каких-либо манипуляций со строками напрямую, используя вывод Select.
@IkhtesamAfrin Я до сих пор получаю часть тела, понятия не имею почему imgur.com/a/n27czI3





Чтобы избавиться от параметра body из вывода действия Select, я использовал действие «Добавить к строковой переменной» и добавил в него body('Select') в качестве значения.


Таким образом, я могу получить ожидаемый результат без каких-либо манипуляций со строками.

Какое действие вы используете из соединителя Dataverse?