Выполнение операций с данными в Azure Logic Apps
Область применения: Azure Logic Apps (Потребление + Стандартный)
В этом руководстве показано, как работать с данными в рабочем процессе приложения логики следующим образом:
- Создайте объект string или JavaScript Object Notation (JSON) из нескольких входных данных с разными типами данных. Затем можно использовать эту строку как единый ввод данных, а не повторно вводить одни и те же данные.
- Создайте понятные для пользователя маркеры из свойств объектов JavaScript (JSON), чтобы можно было легко использовать эти свойства в рабочем процессе.
- Создайте таблицу HTML или CSV из массива.
- Создайте массив из другого массива на основе указанного фильтра или условия.
- Создайте массив на основе указанных свойств для всех элементов в другом массиве.
- Создайте строку из всех элементов массива и отделите эти элементы с помощью указанного символа.
Необходимые компоненты
Учетная запись и подписка Azure. Если у вас нет ее, вы можете зарегистрироваться для получения бесплатной учетной записи Azure.
Рабочий процесс приложения логики, в котором требуется выполнить операцию данных. Рабочие процессы приложения логики "Потребление" и "Стандартный" поддерживают операции с данными, описанные в этом руководстве.
Все операции с данными доступны только в качестве действий. Таким образом, прежде чем использовать эти действия, рабочий процесс должен уже начать с триггера в качестве первого шага и включить любые другие действия, необходимые для создания выходных данных, которые необходимо использовать в операции данных.
Действия операций с данными
В следующих разделах приводится сводка операций с данными, которые можно использовать и упорядочивается на основе типов исходных данных, над которыми работают операции, но каждое описание отображается в алфавитном порядке.
Действия JSON
Следующие действия помогают работать с данными в формате нотации объектов JavaScript (JSON).
Действие | Description |
---|---|
Создание | Создание сообщения или строки из нескольких наборов входных данных, которые могут иметь разные типы данных. Затем можно использовать эту строку как единый ввод данных, а не повторно вводить одни и те же данные. Например, можно создать одно сообщение JSON с разных входных данных. |
Синтаксический анализ JSON | Создайте понятные маркеры данных для свойств в содержимом JSON, чтобы можно было проще использовать свойства в приложениях логики. |
Чтобы создать более сложные преобразования JSON, см. раздел Выполнение сложных преобразований JSON с помощью шаблона Liquid.
Действия массива
Следующие действия помогают работать с данными в массивах.
Действие | Description |
---|---|
Создать таблицу CSV | Создание таблицы значений с разделителями-запятыми (CSV) из массива. |
Создать таблицу HTML | Создание таблицы HTML из массива. |
Фильтр массива | Создание подмножества массива из массива на основе указанного фильтра или условия. |
Присоединение | Создание строки из всех элементов массива и разделение этих элементов указанным разделителем. |
Select | Создание массива из указанных свойств для всех элементов в другом массиве. |
Действие compose
Чтобы создать один выход, например объект JSON из нескольких входных данных, используйте действие с именем Compose. Входные данные могут иметь различные типы, такие как целые числа, логические значения, массивы, объекты JSON и любой другой собственный тип, поддерживаемый Azure Logic Apps, например двоичный и XML. Затем можно использовать выходные данные в следующих действиях после действия Создать. Действие Compose также помогает избежать многократного ввода одних и того же входных данных при создании рабочего процесса приложения логики.
Например, можно создать сообщение JSON из нескольких переменных, таких как строковые переменные, в которых хранятся имена и фамилии людей, и целочисленной переменной, которая хранит возраст людей. В этом примере действие Compose принимает следующие входные данные:
{ "age": <ageVar>, "fullName": "<lastNameVar>, <firstNameVar>" }
И создает следующие выходные данные:
{"age":35,"fullName":"Owens,Sophia"}
Чтобы попробовать действие Compose , выполните следующие действия с помощью конструктора рабочих процессов. Или, если вы предпочитаете работать в редакторе представления кода, можно скопировать примеры определений действий Создания и инициализации действий переменных из этого руководства в базовое определение рабочего процесса приложения логики: примеры кода операций данных — Compose. Дополнительные сведения о действии Compose в определении рабочего процесса JSON см. в действии Compose.
В портал Azure, Visual Studio или Visual Studio Code откройте рабочий процесс приложения логики в конструкторе.
В этом примере используется портал Azure и пример рабочего процесса с триггером повторения, за которым следует несколько действий переменных с именем Initialize переменной. Эти действия настраиваются для создания двух строковых переменных и целочисленной переменной.
Операция Свойства и значения Инициализация переменной - Имя: firstNameVar
- Тип: Строка
- Значение: СофияИнициализация переменной - Имя: lastNameVar
- Тип: Строка
- Значение: ОуэнсИнициализация переменной - Имя: ageVar
- Тип: целое число
- Значение: 35Выполните следующие общие действия, чтобы добавить действие "Операции данных" с именем Compose.
В конструкторе выберите действие Compose , если оно еще не выбрано. В поле "Входные данные" введите входные данные, используемые для создания выходных данных.
Для данного примера выполните следующее.
В поле "Входные данные" введите следующий пример объекта JSON, включая интервал, как показано ниже:
{ "age": , "fullName": " , " }
В объекте JSON поместите курсор в соответствующие расположения, выберите список динамического содержимого (значок молнии), а затем выберите соответствующую переменную из списка:
Свойство JSON «Переменная» age
ageVar fullName
"lastNameVar, firstNameVar" В следующем примере показаны добавленные и еще не добавленные переменные:
В следующем примере показан готовый пример действия Compose :
Сохраните результаты своих действий. На панели инструментов конструктора выберите Сохранить.
Тестирование рабочего процесса
Чтобы подтвердить, что действие Создать создает ожидаемые результаты, отправьте уведомление, которое включает выходные данные действия Создать.
В рабочем процессе добавьте действие, которое может отправить результаты из действия Compose .
В этом примере по-прежнему используется действие Office 365 Outlook с именем "Отправить сообщение электронной почты".
В этом действии для каждого поля, в котором будут отображаться результаты, выберите внутри каждого поля и выберите список динамического содержимого. В этом списке в действии "Создание " выберите выходные данные.
В этом примере результат отображается в тексте электронной почты, поэтому добавьте поле "Выходные данные" в поле "Текст".
Сохраните рабочий процесс и запустите рабочий процесс вручную.
- Рабочий процесс потребления: на панели инструментов конструктора нажмите кнопку "Выполнить".>
- Стандартный рабочий процесс: в меню навигации рабочего процесса выберите "Обзор". На панели инструментов "Обзор" нажмите кнопку "Выполнить".>
Если вы использовали действие Office 365 Outlook, в следующем примере показан результат:
Действие "Создать таблицу CSV"
Чтобы создать таблицу с разделительными запятыми (CSV), которая содержит свойства и значения из объектов Нотации объектов JavaScript (JSON) в массиве, используйте действие с именем Create CSV table. Затем можно использовать итоговую таблицу в действиях, которые следуют за действием Создать таблицу CSV.
Чтобы попробовать действие "Создать таблицу CSV", выполните следующие действия с помощью конструктора рабочих процессов. Или, если вы предпочитаете работать в редакторе представления кода, можно скопировать пример создания таблицы CSV и инициализации определений действий переменных из этого руководства в базовое определение рабочего процесса приложения логики: примеры кода операций данных — создать таблицу CSV. Дополнительные сведения о действии таблицы CREATE CSV в определении рабочего процесса JSON см. в действии таблицы.
В портал Azure, Visual Studio или Visual Studio Code откройте рабочий процесс приложения логики в конструкторе.
В этом примере используется портал Azure и пример рабочего процесса с триггером повторения, а затем действием инициализации переменной. Действие настраивается для создания переменной, в которой исходное значение является массивом с некоторыми свойствами и значениями в формате JSON.
Операция Свойства и значения Инициализация переменной - Имя: myJSONArray
- Тип: массив
- Значение:[ { "Description": "Apples", "Product_ID": 1 }, { "Description": "Oranges", "Product_ID": 2 }]
В конструкторе выберите действие "Создать таблицу CSV", если оно еще не выбрано. В поле From введите массив или выражение, используемое для создания таблицы.
В этом примере выберите в поле "Из " и выберите список динамического содержимого (значок молнии). В этом списке выберите переменную myJSONArray :
Совет
Чтобы создать понятные для пользователей маркеры для свойств в объектах JSON, чтобы вы могли выбрать эти свойства в качестве входных данных, используйте действие с именем Parse JSON перед использованием действия "Создать таблицу CSV".
На следующем снимка экрана показан завершенный пример действия создания таблицы CSV:
Сохраните результаты своих действий. На панели инструментов конструктора выберите Сохранить.
Настройка формата таблицы
По умолчанию для свойства Столбцы задано автоматическое создание столбцов таблицы на основе элементов массива. Чтобы задать пользовательские заголовки и значения, выполните следующие действия.
Если свойство "Столбцы" не отображается в поле сведений о действии, в списке дополнительных параметров выберите "Столбцы".
Откройте список Столбцы и выберите Пользовательский.
В свойстве Заголовок укажите пользовательский текст заголовка, который необходимо использовать.
В свойстве Значение укажите пользовательское значение, которое необходимо использовать.
Для возврата значений из массива можно использовать функцию item()
с действием Создать таблицу CSV. В цикле For_each
можно использовать функцию items()
.
Например, предположим, что столбцы таблицы должны иметь только значения свойств, а не имена свойств из массива. Чтобы возвращать только эти значения, выполните следующие действия для работы в представлении конструктора или в представлении кода.
В этом примере возвращается следующий результат:
Apples,1
Oranges,2
Работа в представлении конструктора
В действии "Создать таблицу CSV" сохраните столбец заголовка пустым. Для каждой строки в столбце Значение разыменуйте каждое необходимое свойство массива. Каждая строка в столбце Значение возвращает все значения для указанного свойства массива и преобразуется в столбец в таблице.
Для каждого нужного свойства массива в столбце "Значение " выберите внутри поля редактирования и щелкните значок функции, который открывает редактор выражений. Убедитесь, что выбран список функций .
В редакторе выражений введите следующее выражение, но замените
<array-property-name>
на имя свойства массива для нужного значения. Когда вы закончите работу с каждым выражением, нажмите кнопку "Добавить".Синтаксис:
item()?['<array-property-name>']
Примеры:
item()?['Description']
item()?['Product_ID']
Дополнительные сведения см. в разделе "Функция item(".
Повторите предыдущие шаги для каждого свойства массива. После завершения действия действие выглядит примерно так:
Работа в представлении кода
В определении JSON действия в массиве columns
задайте в качестве значения свойства header
пустую строку. Для каждого свойства value
разыменуйте каждое необходимое свойство массива.
В конструкторе перейдите в представление кода.
- Потребление: на панели инструментов конструктора выберите представление кода.
- Стандартный: в меню навигации рабочего процесса в разделе "Разработчик" выберите "Код".
В редакторе кода найдите массив действия
columns
. Для каждого нужного столбца значений массива добавьте пустоеheader
свойство и следующее выражение дляvalue
свойства:Синтаксис:
{ "header": "", "value": "@item()?['<array-property-name>']" }
Пример:
"Create_CSV_table": { "inputs": { "columns": [ { "header": "", "value": "@item()?['Description']" }, { "header": "", "value": "@item()?['Product_ID']" } ], "format": "CSV", "from": "@variables('myJSONArray')" } }
Вернитесь к представлению конструктора, чтобы просмотреть результаты.
Тестирование рабочего процесса
Чтобы подтвердить, что действие Создать таблицу CSV создает ожидаемые результаты, отправьте уведомление, которое включает в себя выходные данные действия Создать таблицу CSV.
В рабочем процессе добавьте действие, которое может отправить результаты из действия "Создать таблицу CSV".
В этом примере по-прежнему используется действие Office 365 Outlook с именем "Отправить сообщение электронной почты".
В этом действии для каждого поля, в котором будут отображаться результаты, выберите внутри каждого поля, который открывает список динамического содержимого. В этом списке в действии "Создать таблицу CSV" выберите "Выходные данные".
Сохраните рабочий процесс и запустите рабочий процесс вручную.
- Рабочий процесс потребления: на панели инструментов конструктора нажмите кнопку "Выполнить".>
- Стандартный рабочий процесс: в меню навигации рабочего процесса выберите "Обзор". На панели инструментов "Обзор" нажмите кнопку "Выполнить".>
Если вы использовали действие Office 365 Outlook, в следующем примере показан результат:
Примечание.
Если таблица возвращается с неправильным форматированием, см. раздел о проверке форматирования данных в таблице.
Действие "Создать таблицу HTML"
Чтобы создать таблицу HTML, которая имеет свойства и значения из объектов нотации объектов JavaScript (JSON) в массиве, используйте действие Создать таблицу HTML. Затем можно использовать итоговую таблицу в действиях, которые следуют за действием Создать таблицу HTML.
Чтобы попробовать действие "Создать таблицу HTML", выполните следующие действия с помощью конструктора рабочих процессов. Кроме того, если вы предпочитаете работать в редакторе представления кода, можно скопировать пример создания html-таблицы и инициализировать определения действий переменных из этого руководства в базовое определение рабочего процесса приложения логики: примеры кода операций данных — создание HTML-таблицы. Дополнительные сведения о действии таблицы HTML в определении рабочего процесса JSON см. в действии таблицы.
В портал Azure, Visual Studio или Visual Studio Code откройте рабочий процесс приложения логики в конструкторе.
В этом примере используется портал Azure и пример рабочего процесса с триггером повторения, а затем действием инициализации переменной. Действие настраивается для создания переменной, в которой исходное значение является массивом с некоторыми свойствами и значениями в формате JSON.
Операция Свойства и значения Инициализация переменной - Имя: myJSONArray
- Тип: массив
- Значение:[ { "Description": "Apples", "Product_ID": 1 }, { "Description": "Oranges", "Product_ID": 2 }]
В конструкторе выберите действие "Создать таблицу HTML", если она еще не выбрана. В поле From введите массив или выражение, используемое для создания таблицы.
В этом примере выберите в поле "Из " и выберите список динамического содержимого (значок молнии). В этом списке выберите переменную myJSONArray :
Совет
Чтобы создать понятные для пользователей маркеры для свойств в объектах JSON, чтобы вы могли выбрать эти свойства в качестве входных данных, используйте действие с именем Parse JSON перед использованием действия "Создание таблицы HTML".
На следующем снимка экрана показан готовый пример действия создания таблицы HTML:
Сохраните результаты своих действий. На панели инструментов конструктора выберите Сохранить.
Настройка формата таблицы
По умолчанию для свойства Столбцы задано автоматическое создание столбцов таблицы на основе элементов массива. Чтобы задать пользовательские заголовки и значения, выполните следующие действия.
Если свойство "Столбцы" не отображается в поле сведений о действии, в списке дополнительных параметров выберите "Столбцы".
Откройте список Столбцы и выберите Пользовательский.
В свойстве Заголовок укажите пользовательский текст заголовка, который необходимо использовать.
В свойстве Значение укажите пользовательское значение, которое необходимо использовать.
Для возврата значений из массива можно использовать функцию item()
с действием Создать таблицу HTML. В цикле For_each
можно использовать функцию items()
.
Например, предположим, что столбцы таблицы должны иметь только значения свойств, а не имена свойств из массива. Чтобы возвращать только эти значения, выполните следующие действия для работы в представлении конструктора или в представлении кода.
В этом примере возвращается следующий результат:
Apples,1
Oranges,2
Работа в представлении конструктора
В действии "Создать таблицу HTML" сохраните столбец заголовка пустым. Для каждой строки в столбце Значение разыменуйте каждое необходимое свойство массива. Каждая строка в столбце Значение возвращает все значения для указанного свойства массива и преобразуется в столбец в таблице.
Для каждого нужного свойства массива в столбце "Значение " выберите внутри поля редактирования и щелкните значок функции, который открывает редактор выражений. Убедитесь, что выбран список функций .
В редакторе выражений введите следующее выражение, но замените
<array-property-name>
на имя свойства массива для нужного значения. Когда вы закончите работу с каждым выражением, нажмите кнопку "Добавить".Синтаксис:
item()?['<array-property-name>']
Примеры:
item()?['Description']
item()?['Product_ID']
Дополнительные сведения см. в разделе "Функция item(".
Повторите предыдущие шаги для каждого свойства массива. После завершения действия действие выглядит примерно так:
Работа в представлении кода
В определении JSON действия в массиве columns
задайте в качестве значения свойства header
пустую строку. Для каждого свойства value
разыменуйте каждое необходимое свойство массива.
В конструкторе перейдите в представление кода.
- Потребление: на панели инструментов конструктора выберите представление кода.
- Стандартный: в меню навигации рабочего процесса в разделе "Разработчик" выберите "Код".
В редакторе кода найдите массив действия
columns
. Для каждого нужного столбца значений массива добавьте пустоеheader
свойство и следующее выражение дляvalue
свойства:Синтаксис:
{ "header": "", "value": "@item()?['<array-property-name>']" }
Пример:
"Create_HTML_table": { "inputs": { "columns": [ { "header": "", "value": "@item()?['Description']" }, { "header": "", "value": "@item()?['Product_ID']" } ], "format": "HTML", "from": "@variables('myJSONArray')" } }
Вернитесь к представлению конструктора, чтобы просмотреть результаты.
Тестирование рабочего процесса
Чтобы подтвердить, что действие Создать таблицу HTML создает ожидаемые результаты, отправьте уведомление, которое включает выходные данные из действия Создать таблицу HTML.
В рабочем процессе добавьте действие, которое может отправлять результаты из действия "Создание таблицы HTML".
В этом примере по-прежнему используется действие Office 365 Outlook с именем "Отправить сообщение электронной почты".
В этом действии для каждого поля, в котором будут отображаться результаты, выберите внутри каждого поля и выберите значок молнии, который открывает список динамического содержимого. В этом списке в действии "Создать таблицу HTML" выберите "Выходные данные".
Сохраните рабочий процесс и запустите рабочий процесс вручную.
- Рабочий процесс потребления: на панели инструментов конструктора нажмите кнопку "Выполнить".>
- Стандартный рабочий процесс: в меню навигации рабочего процесса выберите "Обзор". На панели инструментов "Обзор" нажмите кнопку "Выполнить".>
Если вы использовали действие Office 365 Outlook, в следующем примере показан результат:
Действие "Фильтр массива"
Чтобы создать массив подмножества из существующего массива, где элементы подмножества соответствуют определенным критериям, используйте действие "Фильтр массива ". Затем можно использовать результирующий отфильтрованный массив в действиях, которые следуют действию "Фильтр".
Чтобы попробовать действие массива фильтров, выполните следующие действия с помощью конструктора рабочих процессов. Или, если вы предпочитаете работать в редакторе представления кода, можно скопировать примеры определений действий фильтра и инициализировать определения действий переменных из этого руководства в базовое определение рабочего процесса приложения логики: примеры кода операций данных — массив фильтров. Дополнительные сведения о действии массива фильтров в определении рабочего процесса JSON см. в действии запроса.
Примечание.
Любой текст фильтра, используемый в условии, чувствителен к регистру. Кроме того, действие не может изменить формат или компоненты элементов в массиве.
Действия использования выходного массива, полученного из действия Фильтр массива, должны принимать эти массивы как входные данные, либо придется преобразовать выходной массив в другой совместимый формат.
При вызове конечной точки HTTP и получении ответа JSON используйте действие Анализа JSON для обработки ответа JSON. В противном случае действие Фильтр массива может считывать только текст ответа, а не структуру полезных данных JSON.
В портал Azure, Visual Studio или Visual Studio Code откройте рабочий процесс приложения логики в конструкторе.
В этом примере используется портал Azure и пример рабочего процесса с триггером повторения, а затем действием инициализации переменной. Действие настраивается, чтобы создать, где исходное значение является массивом с некоторыми примерами целочисленных значений.
Операция Свойства и значения Инициализация переменной - Имя: myIntegerArray
- Тип: массив
- Значение:[1,2,3,4]
Примечание.
Хотя в этом примере используется простой целочисленный массив, это действие особенно полезно для массивов объектов JSON, где можно фильтровать на основе свойств и значений объектов.
Выполните следующие общие действия, чтобы найти действие "Операции с данными" с именем массив фильтра.
В конструкторе выберите действие "Фильтр массива ", если оно еще не выбрано. В поле From введите массив или выражение для использования в качестве фильтра.
В этом примере выберите в поле "Из ", а затем щелкните значок молнии, который открывает список динамического содержимого. В этом списке выберите ранее созданную переменную:
Для создания условия укажите элементы массива для сравнения, выберите оператор сравнения и укажите значение для сравнения.
В этом примере функция item() используется для доступа к каждому элементу в массиве, а действие "Фильтровать массив" выполняет поиск элементов массива, где значение больше одного. На следующем снимка экрана показан готовый пример действия фильтра массива :
Сохраните результаты своих действий. На панели инструментов конструктора выберите Сохранить.
Тестирование рабочего процесса
Чтобы подтвердить, что действие Фильтр массива создает ожидаемые результаты, отправьте уведомление, которое включает в себя выходные данные из действия Фильтр массива.
В рабочем процессе добавьте действие, которое может отправлять результаты из действия массива фильтров.
В этом примере по-прежнему используется действие Office 365 Outlook с именем "Отправить сообщение электронной почты".
В этом действии выполните следующие действия.
Для каждого поля, в котором будут отображаться результаты, выберите внутри каждого поля и щелкните значок функции, который открывает редактор выражений. Убедитесь, что выбран список функций .
Чтобы получить выходные данные массива из действия фильтра, введите следующее выражение, которое использует функцию body() с именем действия фильтра и нажмите кнопку "Добавить".
body('Filter_array')
Разрешенное выражение указывает, чтобы отобразить выходные данные из действия Filter_array в тексте электронной почты при отправке:
Сохраните рабочий процесс и запустите рабочий процесс вручную.
- Рабочий процесс потребления: на панели инструментов конструктора нажмите кнопку "Выполнить".>
- Стандартный рабочий процесс: в меню навигации рабочего процесса выберите "Обзор". На панели инструментов "Обзор" нажмите кнопку "Выполнить".>
Если вы использовали действие Office 365 Outlook, в следующем примере показан результат:
Действие присоединения
Чтобы создать строку, содержащую все элементы из массива, и разделить эти элементы определенным символом разделителя, используйте действие Соединить. Затем можно использовать строку в действиях, которые следуют действию Join .
Чтобы попробовать действие "Присоединиться ", выполните следующие действия с помощью конструктора рабочих процессов. Или, если вы предпочитаете работать в редакторе представления кода, можно скопировать примеры определений действий "Присоединение и инициализация действий переменных " из этого руководства в базовое определение рабочего процесса приложения логики: примеры кода операций данных — Присоединение. Дополнительные сведения о действии "Присоединение" в определении базового рабочего процесса см. в действии "Присоединение".
В портал Azure, Visual Studio или Visual Studio Code откройте рабочий процесс приложения логики в конструкторе.
В этом примере используется портал Azure и пример рабочего процесса с триггером повторения, а затем действием инициализации переменной. Это действие настраивается для создания переменной, в которой исходное значение является массивом, который содержит некоторые примеры целых значений.
Операция Свойства и значения Инициализация переменной - Имя: myIntegerArray
- Тип: массив
- Значение:[1,2,3,4]
Выполните следующие общие действия, чтобы найти действие "Операции данных" с именем Join.
В конструкторе выберите действие "Присоединиться ", если оно еще не выбрано. В поле From введите массив с элементами, которые необходимо объединить в виде строки.
В поле From введите массив с элементами, которые нужно объединить в виде строки.
В этом примере выберите в поле "Из ", а затем щелкните значок молнии, который открывает список динамического содержимого. В этом списке выберите ранее созданную переменную:
В поле "Присоединение с помощью" введите символ, используемый для разделения каждого элемента массива.
В этом примере двоеточие (:) используется в качестве разделителя для свойства Join With .
Сохраните результаты своих действий. На панели инструментов конструктора выберите Сохранить.
Тестирование рабочего процесса
Чтобы подтвердить, что действие Соединить создает ожидаемые результаты, отправьте уведомление, которое включает выходные данные из действия Соединить.
В рабочем процессе добавьте действие, которое может отправить результаты из действия "Присоединиться ".
В этом примере по-прежнему используется действие Office 365 Outlook с именем "Отправить сообщение электронной почты".
В этом действии для каждого поля, в котором будут отображаться результаты, выберите внутри каждого поля и выберите значок молнии, который открывает список динамического содержимого. В этом списке в действии "Присоединиться" выберите "Выходные данные".
Сохраните рабочий процесс и запустите рабочий процесс вручную.
- Рабочий процесс потребления: на панели инструментов конструктора нажмите кнопку "Выполнить".>
- Стандартный рабочий процесс: в меню навигации рабочего процесса выберите "Обзор". На панели инструментов "Обзор" нажмите кнопку "Выполнить".>
Если вы использовали действие Office 365 Outlook, в следующем примере показан результат:
Действие "Анализ JSON"
Чтобы ссылаться или получать доступ к свойствам в объекте нотации объектов JavaScript (JSON), можно создавать удобные для пользователя поля или токены для этих свойств, используя действие Анализ JSON. Таким образом, эти свойства можно выбрать в списке динамического содержимого при указании входных данных для последующих действий в рабочем процессе. Для этого действия можно либо предоставить схему JSON, либо создать схему JSON из образца содержимого JSON или полезных данных.
Чтобы попробовать действие Анализа JSON , выполните следующие действия с помощью конструктора рабочих процессов. Или, если вы предпочитаете работать в редакторе представления кода, можно скопировать примеры определений действий JSON и инициализировать определения действий переменных из этого руководства в базовое определение рабочего процесса приложения логики: примеры кода операций данных — анализ JSON. Дополнительную информацию об этом действии в определении базового процесса см. в разделе Действие "Анализ JSON".
В портал Azure, Visual Studio или Visual Studio Code откройте рабочий процесс приложения логики в конструкторе.
В этом примере используется портал Azure и пример рабочего процесса с триггером повторения, за которым следует действие инициализации переменной. Это действие настраивается для создания переменной, начальное значение которой является следующим объектом JSON со свойствами и значениями:
{ "Member": { "Email": "Sophia.Owen@fabrikam.com", "FirstName": "Sophia", "LastName": "Owen" } }
Выполните следующие общие действия, чтобы найти действие "Операции данных" с именем Parse JSON.
В конструкторе выберите действие Анализа JSON , если оно еще не выбрано. В поле "Содержимое " введите объект JSON, который требуется проанализировать.
В этом примере выберите в поле "Содержимое" , а затем щелкните значок молнии, который открывает список динамического содержимого. В этом списке выберите ранее созданную переменную:
В поле "Схема" введите схему JSON, описывающую объект JSON или полезные данные, которые необходимо проанализировать.
В этом примере используйте следующую схему для примера объекта JSON:
{ "type": "object", "properties": { "Member": { "type": "object", "properties": { "Email": { "type": "string" }, "FirstName": { "type": "string" }, "LastName": { "type": "string" } } } } }
Если у вас нет схемы, можно создать схему из объекта JSON:
В действии Parse JSON в поле "Схема" выберите "Использовать пример полезных данных для создания схемы".
В поле "Ввод" или вставьте пример полезных данных JSON, введите содержимое или объект JSON, а затем нажмите кнопку "Готово", например:
{ "Member": { "Email": "Sophia.Owens@fabrikam.com", "FirstName": "Sophia", "LastName": "Owens" } }
Сохраните результаты своих действий. На панели инструментов конструктора выберите Сохранить.
Тестирование рабочего процесса
Чтобы подтвердить, что действие Анализ JSON создает ожидаемые результаты, отправьте уведомление, которое включает выходные данные из действия Анализ JSON.
В рабочем процессе добавьте действие, которое может отправлять результаты из действия Анализа JSON .
В этом примере по-прежнему используется действие Office 365 Outlook с именем "Отправить сообщение электронной почты".
В этом действии для каждого поля, в котором будут отображаться результаты, выберите внутри каждого поля редактирования, а затем щелкните значок молнии, который открывает список динамического содержимого. В этом списке в действии Анализа JSON выберите свойства из проанализированного объекта JSON.
В этом примере выбираются следующие свойства: Body FirstName, Body LastName и Body Email
После завершения действия отправки сообщения электронной почты выглядит примерно так:
Сохраните рабочий процесс и запустите рабочий процесс вручную.
- Рабочий процесс потребления: на панели инструментов конструктора нажмите кнопку "Выполнить".>
- Стандартный рабочий процесс: в меню навигации рабочего процесса выберите "Обзор". На панели инструментов "Обзор" нажмите кнопку "Выполнить".>
Если вы использовали действие Office 365 Outlook, в следующем примере показан результат:
Выбор действия
По умолчанию действие Select создает массив, содержащий объекты JSON, созданные из значений в существующем массиве. Например, можно создать объект JSON для каждого значения в целочисленном массиве, указав свойства, которые каждый объект JSON должен иметь, и сопоставив значения из исходного массива с этими свойствами. Хотя объекты JSON компонента можно изменить, выходной массив всегда имеет одинаковое количество элементов, что и исходный массив. Чтобы использовать выходной массив из действия Select, последующие действия должны принимать массивы в качестве входных данных или преобразовать выходной массив в другой совместимый формат.
Чтобы попробовать действие Select , выполните следующие действия с помощью конструктора рабочих процессов. Или, если вы предпочитаете работать в редакторе представления кода, вы можете скопировать примеры определений действий переменных select and Initialize из этого руководства в базовое определение рабочего процесса приложения логики: примеры кода операций данных — выбрать. Дополнительную информацию об этом действии в определении базового процесса см. в разделе Выбор действия.
Совет
Пример создания массива со строками или целыми числами, созданными из значений в массиве объектов JSON, см. в определениях действий переменных Select и Initliaze в примерах кода операций данных — Select.
В портал Azure, Visual Studio или Visual Studio Code откройте рабочий процесс приложения логики в конструкторе.
В этом примере используется портал Azure и пример рабочего процесса с триггером повторения, а затем действием инициализации переменной. Действие настраивается для создания переменной, в которой исходное значение является массивом, который содержит некоторые примеры целых чисел.
Операция Свойства и значения Инициализация переменной - Имя: myIntegerArray
- Тип: массив
- Значение:[1,2,3,4]
Выполните следующие общие действия, чтобы найти действие "Операции с данными" с именем Select.
В конструкторе выберите действие Select , если оно еще не выбрано. В поле From введите исходный массив, который вы хотите использовать.
В этом примере выберите в поле "Из ", а затем щелкните значок молнии, который открывает список динамического содержимого. В этом списке выберите ранее созданную переменную:
Для свойства Map в левом столбце введите имя свойства, чтобы описать все значения в исходном массиве.
В этом примере используется Product_ID в качестве имени свойства для целых значений в исходном массиве. Таким образом, каждое значение, например, 1, 2, 3 и 4, является идентификатором продукта.
В правом столбце введите выражение, указывающее значение в исходном массиве для имени свойства в левом столбце.
В этом примере функция item() используется для итерации и доступа к каждому элементу в массиве.
Выберите внутри правого столбца и щелкните значок функции, который открывает редактор выражений. Убедитесь, что выбран список функций .
В редакторе выражений введите функцию с именем item(), а затем нажмите кнопку "Добавить".
Действие Select теперь похоже на следующий пример:
Сохраните результаты своих действий. На панели инструментов конструктора выберите Сохранить.
Тестирование рабочего процесса
Чтобы подтвердить, что действие Выбрать создает ожидаемые результаты, отправьте уведомление, которое включает выходные данные из действия Выбрать.
В рабочем процессе добавьте действие, которое может отправить результаты из действия Select .
В этом действии выполните следующие действия.
Для каждого поля, в котором будут отображаться результаты, выберите внутри каждого поля и щелкните значок функции, который открывает редактор выражений. Убедитесь, что выбран список функций .
Чтобы получить выходные данные массива из действия Select, введите следующее выражение, которое использует функцию body() с именем действия Select и нажмите кнопку "Добавить".
body('Select')
Разрешенное выражение указывает, чтобы отобразить выходные данные действия Select в тексте электронной почты при отправке:
Сохраните рабочий процесс и запустите рабочий процесс вручную.
- Рабочий процесс потребления: на панели инструментов конструктора нажмите кнопку "Выполнить".>
- Стандартный рабочий процесс: в меню навигации рабочего процесса выберите "Обзор". На панели инструментов "Обзор" нажмите кнопку "Выполнить".>
Если вы использовали действие Office 365 Outlook, в следующем примере показан результат:
Устранение неполадок
Форматирование данных таблицы
Если таблица CSV или таблица HTML возвращаются с неверным форматированием, убедитесь, что во входных данных есть разрывы строк между строками.
Неправильное форматирование:
Fruit,Number Apples,1 Oranges,2
Правильное форматирование:
Fruit,Number
Apples,1
Oranges,2
Чтобы добавить разрывы строк между строками, добавьте в таблицу одно из следующих выражений:
replace(body('Create_CSV_table'),'','<br/>')
replace(body('Create_HTML_table'),'','<br/>')
Например:
{
"Send_an_email_": {
"inputs": {
"body": {
"Body": "<p>Results from Create CSV table action:<br/>\n<br/>\n<br/>\n@{replace(body('Create_CSV_table'),'\r\n','<br/>')}</p>",
"Subject": "Create CSV table results",
"To": "sophia.owen@fabrikam.com"
}
}
}
}