Описание
Это действие используется для повторяющихся операций и повторяет устройство цикла while в программировании.
По структуре оно отличается от остальных действий. «Цикл пока» сам по себе не является стандартным одним блоком действия. По умолчанию «Цикл пока» представляет из себя пять соединенных между собой блоков: «Задать значение переменной», «Если...то», два блока «TODO» и еще один блок «Задать значение переменной». Своим расположением блоки воспроизводят структуру цикла. Первый блок «Задать значение переменной» позволяет задать переменную счетчика, с помощью которой можно отслеживать итерации цикла. Следующий блок — «Если...то» — позволяет задать условие работы цикла. Блоки «TODO» указывают на тело цикла (после ветки «Да») и на выход из цикла (после ветки «Нет») и сами по себе ничего не выполняют. Они помещены для того, чтобы показать возможность задания последовательности действий вместо них.
Вот как выглядит действие по умолчанию:
Устройство действия «Цикл пока» по умолчанию
Пример
Чтобы сделать действие готовым к работе, необходима небольшая настройка. Рассмотрим, как это можно сделать, на простом примере — будем выводить в консоль номера итераций (допустим, мы хотим совершить 4 итерации цикла).
Начнем с переменной-счетчика. Циклы неразрывно связаны с итерациями, которые необходимо как-то подсчитывать. В стандартных циклах while это делается при помощи переменной-счетчика. В общем случае счетчик и условие цикла могут быть заданы по-разному. В том числе можно найти ситуации, когда счетчик изначально принимает большое значение, а затем уменьшается. В нашем же случае мы зададим счетчик, равным единице, потому что мы просто хотим последовательно совершить 4 действия цикла и вывести номер итерации на экран. Поэтому настроим первый блок «Задать значение переменной» следующим образом (показано на изображении ниже):
Переменная counter, которая увеличивается с каждой итерацией
Далее зададим условие цикла. Так как мы хотим совершить четыре итерации, то условие может выглядеть как counter <= 4 или counter < 5 (переменная counter целочисленная).
Условие для проверки. Как только значение counter достигнет 5, цикл остановится.
Теперь зададим как будет изменяться счетчик. Поскольку мы совершаем четыре последовательные итерации — счетчик будет увеличиваться на единицу. В других случаях изменение счетчика может отличаться.
В последнем блоке переменная counter увеличивается с каждой итерацией
На этом этапе мы уже имеем фактически готовый к работе workflow. Остается лишь заменить блоки «TODO» на блоки с действиями. Возьмем действие «Лог в консоль» и заполним параметры как показано на изображениях ниже:
Сообщение в параметре «Лог в консоль». В начале — строка с сообщением, затем - текущее значение счетчика
Пример вывода сообщения в консоль — результат работы. Цикл завершился, как только условие перестало выполняться.
Workflow с циклом.