Хранение значений в переменных и управление ими

В этой статье показано, как создавать переменные и работать с ними для хранения значений в ваших облачных потоках. Например, переменные могут помочь вам отслеживать, сколько раз выполняется цикл. Чтобы выполнить итерацию по массиву или проверить массив для определенного элемента, вы можете использовать переменную для ссылки на номер индекса "применить к каждому" элементу массива.

Вы можете создавать переменные для таких типов данных, как integer, float, boolean, string, array и object. После создания переменной вы можете выполнять другие задачи, например:

  • Получить значение переменной или сослаться на него.
  • Увеличивать или уменьшать переменную на постоянное значение, также известное как приращение и уменьшение.
  • Назначать другое значение переменной.
  • Вставлять или добавлять значение переменной как последний элемент в строке или массиве.

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

Когда вы ссылаетесь на переменную, используйте имя переменной в качестве токена, а не имя действия, что является обычным способом ссылки на выходные данные действия.

Предупреждение

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

Предварительные условия

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

Заметка

Power Automate использует либо классический конструктор облачных потоков, либо конструктор облачных потоков с Copilot. Чтобы определить, какой конструктор вы используете, перейдите в раздел Заметка в пункте Знакомство с конструктором облачных потоков с возможностями Copilot.

Инициализация переменной

Вы можете создать переменную и объявить ее тип данных и начальное значение — и все это в рамках одного действия в вашем потоке. Вы можете объявлять переменные только на глобальном уровне, но не в пределах областей действия, условий и циклов.

  1. Войдите в Power Automate.

  2. Создайте или откройте облачный поток.

  3. На шаге, на котором вы хотите добавить переменную, выполните одно из следующих действий.

    • Чтобы добавить действие под последним шагом, выберите Создать шаг.
    • Чтобы добавить действие между шагами, наведите указатель устройства ввода на соединительную стрелку, пока не появится знак плюса (+). Выберите знак плюса (+) >Добавить действие.
  4. В поле поиска в разделе Выберите операцию, введите переменная как ваш фильтр.

  5. В списке Действия выберите Инициализировать переменную - Переменная.

    Снимок экрана действия инициализации переменной.

  6. Укажите следующую информацию о переменной.

    Свойство Обязательно Значение Описание
    Name Да <имя-переменной> Имя переменной, которую требуется инициализировать
    Тип Да <тип-переменной> Тип данных для переменной
    Значение Нет <начальное-значение> Начальное значение для вашей переменной

    Совет. Хотя это необязательно, рекомендуется установить это значение, чтобы вы всегда знали начальное значение для своей переменной.

    Пример:

    Снимок экрана примера инициализации переменной.

  7. Добавьте другие действия, которые вы хотите. По завершении выберите Сохранить.

Заметка

Хотя действие Инициализировать переменную имеет раздел variable, структурированный как массив, действие может создать только одну переменную за раз. Каждая новая переменная требует индивидуального действия Инициализировать переменную.

Примеры других типов переменных

Строковая переменная


   "name": "myStringVariable",
   "type": "String",
   "value": "lorem ipsum"

Логическая переменная

   "name": "myBooleanVariable",
   "type": "Boolean",
   "value": false

Массив с целыми числами

   "name": "myArrayVariable",
   "type": "Array",
   "value": [1, 2, 3]

Массив со строками

   "name": "myArrayVariable",
   "type": "Array",
   "value": ["red", "orange", "yellow"]

Получение значения переменной

Чтобы получить содержимое переменной или сослаться на нее, вы можете использовать функцию variables() в конструкторе Power Automate.

Например, это выражение получает элементы из переменной массива с помощью функции variables(). Функция string() возвращает содержимое переменной в строковом формате: "1, 2, 3, red"

@{string(variables('myArrayVariable'))}

Увеличение переменной

Чтобы увеличить или задать приращение переменной на постоянное значение, добавьте действие Увеличить переменной в ваш поток.

Это действие работает только с целочисленными переменными и переменными с плавающей запятой.

  1. В конструкторе Power Automate под шагом, на котором вы хотите увеличить существующую переменную, выберите Создать шаг.

    Чтобы добавить действие между шагами, наведите указатель устройства ввода на соединительную стрелку, пока не появится знак плюса (+). Выберите знак плюса (+) >Добавить действие.

  2. В поле поиска введите увеличить переменную в качестве фильтра.

  3. В списке Действия выберите Увеличить переменную - Переменная.

  4. Предоставьте следующую информацию для увеличения вашей переменной:

    Свойство Обязательное поле значение Описание
    Полное имя Да <имя-переменной> Имя переменной, которую требуется увеличить
    Значение Нет <величина-увеличения> Значение, используемое для увеличения переменной. Значение по умолчанию равно единице.

    Совет. Хотя это необязательно, рекомендуется установить это значение, чтобы вы всегда знали конкретное значение для увеличения своей переменной.

    Пример:

    Снимок экрана примера действия «Увеличить переменную».

  5. По завершении на панели инструментов конструктора выберите Сохранить.

Пример: создание счетчика цикла

Переменные часто используются для подсчета количества запусков цикла. В этом примере показано, как создавать и использовать переменные для этой задачи, создавая цикл, который подсчитывает вложения в сообщении электронной почты.

  1. В Power Automate создайте облачный поток и добавьте триггер, который проверяет наличие нового сообщения электронной почты и любых вложений.

    В этом примере используется триггер Office 365 Outlook для события Когда приходит новое сообщение электронной почты. Вы можете настроить этот триггер так, чтобы он срабатывал, только если в сообщении электронной почты есть вложения. Однако вы можете использовать любой соединитель, который проверяет наличие новых сообщений электронной почты с вложениями, например соединитель Outlook.com.

  2. В триггере, чтобы проверить наличие вложений и передать эти вложения в поток, выберите Да для следующих свойств:

    • Включить вложения
    • Только с вложениями
  3. Добавьте действие Инициализировать переменную со следующими значениями:

    • Имя: Счетчик
    • Тип: Целое число
    • Значение: 0 (начальное значение)
  4. Добавьте цикл применить к каждому для циклического просмотра вложений.

    1. В действии Инициализировать переменную выберите Создать шаг.
    2. В разделе Выберите действие выберите Встроить.
    3. В поле поиска введите применить к каждому в качестве фильтра поиска и выберите Применить к каждому.

    Снимок экрана добавления цикла «Применить к каждому — Элемент управления».

  5. В цикле выберите внутреннюю часть поля Выберите выходные данные из предыдущих шагов. Когда появится список динамического содержимого, выберите Вложения.

    Свойство Вложения передает массив, который содержит все вложения электронной почты из сообщения электронной почты в ваш цикл.

  6. В цикле Применить к каждому выберите Добавить действие.

  7. В поле поиска введите увеличить переменную в качестве фильтра.

  8. В списке действий выберите Увеличить переменную.

    Заметка

    Действие Увеличить переменную должно появиться внутри цикла.

  9. В действии Увеличить переменную в списке Имя выберите переменную Счетчик.

  10. Под циклом добавьте любое действие, которое отправляет вам количество вложений. В своем действии включите значение из переменной Счетчик, например:

    Снимок экрана добавления действия, которое отправляет результаты в Copilot.

  11. На панели инструментов конструктора выберите Сохранить.

Уменьшение переменной

Чтобы уменьшить переменную на постоянное значение, следуйте шагам по увеличению переменной, за исключением того, что вы найдете и выберите действие Уменьшить переменную вместо этого. Это действие работает только с целочисленными переменными и переменными с плавающей запятой.

Вот свойства для действия Уменьшить переменную:

Свойство Обязательное поле значение Описание
Полное имя Да <имя-переменной> Имя переменной, которую требуется уменьшить
Значение Нет <величина-увеличения> Значение для уменьшения переменной. Значение по умолчанию равно единице.

Совет. Хотя это необязательно, рекомендуется установить это значение, чтобы вы всегда знали конкретное значение для уменьшения своей переменной.

Задать переменную

Чтобы присвоить другое значение существующей переменной, следуйте шагам по увеличению переменной, за исключением того, что надо сделать следующее:

  1. Найдите и выберите действие Задать переменную.

  2. Укажите имя переменной и значение, которое вы хотите присвоить. И новое значение, и переменная должны иметь один и тот же тип данных. Значение является обязательным, поскольку у этого действия нет значения по умолчанию.

Вот свойства для действия Задать переменную:

Свойство Обязательное поле значение Описание
Полное имя Да <имя-переменной> Имя переменной, которую требуется изменить
Значение Да <новое-значение> Значение, которое требуется присвоить переменной. Оба должны иметь один и тот же тип данных.

Заметка

Если вы не увеличиваете или не уменьшаете переменные, изменение переменных внутри циклов может создать неожиданные результаты, если вы запустите циклы параллельно. В этих случаях попробуйте настроить цикл для последовательного выполнения, что является настройкой по умолчанию.

Добавление к переменной

Для переменных, хранящих строки или массивы, вы можете вставить или добавить значение переменной как последний элемент в этих строках или массивах. Вы можете выполнить шаги для увеличения переменной, но вместо этих шагов выполнить следующие шаги:

  1. Найдите и выберите одно из этих действий в зависимости от того, является ли ваша переменная строкой или массивом.

    • Добавление к строковой переменной
    • Добавление к переменной-массиву
  2. Укажите значение для добавления в качестве последнего элемента в строке или массиве. Это значение обязательно.

Вот свойства для действий Добавить к...:

Свойство Обязательное поле значение Описание
Полное имя Да <имя-переменной> Имя переменной, которую требуется изменить
Значение Да <добавляемое-значение> Значение, которое вы хотите добавить, может иметь любой тип

См. также

Соединители Power Automate