Эта Задача - довольно мощный инструмент для запуска операций внутри Цикла.
Цикл работает здесь точно так же, как Цикл 'For' во всех основных языках программирования.
У этой Задачи может быть два выхода:

  • Выход “Loop Path” используется только в том случае, если в настройках вы включили опцию “Loop path output”.
  • Так же не забывайте, что у выхода “Output” тоже должно быть действие (Задача).

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

Настройка


В этой Задаче используются только PHP-выражения.
Оператор 'return' у вас ДОЛЖЕН быть каждом поле.

Общая структура такова:

  1. Инициализировать переменную
  2. Совершить проверку, если выполнение Задачи дает результат true. Если false, то прекратить Цикл и вывести результат
  3. Выполнить Цикл
  4. Инициализировать переменную Цикла
  5. Вернуться к шагу 2

Пример:

Нижеприведенный Цикл будет выполнен 20 раз.

Bild1508332984312

Инициализация переменнойУсловие для остановки цикла. Убедитесь, что используется оператор 'return' и задано допустимое условиеВыражение, выполняемое после каждой итерации для увеличения значения переменной $loop. Убедитесь, что вы используете оператор 'return' и правильно увеличиваете значение переменнойИспользуйте настройку 'Loop Path' для создания итерации 'process'Настройка выражения для выполнения во время каждой итерации. Не смешивайте 'Increment Script' с этим выражение, иначе потеряете текущую структуруВыполнять Бизнес-Процесс каждый раз

Примечание Настройки в блоке «Loop options» относятся к завершающей части работы Цикла, вы можете выбрать 1 из предложенных 3 вариантов завершения:

  1. Loop path output
  2. Выполнять выражение каждый раз (Execute Expression each time)
  3. Выполнять Бизнес-Процесс каждый раз (Execute Workflow each time)

Поле (1) отвечает за инициализацию переменной. Здесь она инициализирована единицей - 1.
Поле (2) задает условие для окончания цикла - как только значение переменной $loop станет меньше или равно 20, Цикл считается оконченным.
Поле (3) мы пока опустим. Теперь, Цикл выполнен. Вы можете настроить выполнение Задачи включив опцию “Loop Path” Output (4).
Другая опция - выполнять выражение при каждой итерации (5), само же выражение вписывается в поле (6). Вы можете использовать все функции, которые создали, и все поля для выбранной Записи.
Последняя опция (7) включает выполнение Бизнес-Процесса во время каждой итерации. В данном примере эта опция выключена.
Если вы ее включите, то из выпадающего списка вам нужно будет выбрать Бизнес-Процесс, который необходимо выполнять, затем, когда итерация будет выполнена, условие (3), которое мы пропустили ранее, будет выполнено и вернет новое значение переменной $loop, поэтому, если вы настраивали Задачу так, как написано в данном примере, то не включайте последнюю опцию (7).

Использовать Задачу можно, например, так:

  1. Выход loop path будет выполняться 1 раз в каждой итерации. В конце выполнения связи с Циклом не будет
  2. Этот выход будет выполняться в конце Цикла
Ваш комментарий. Вики-синтаксис разрешён:
   __ __ __  __   __   ____    ___ 
  / // / \ \/ /  / /  / __ \  / _ |
 / _  /   \  /  / /__/ /_/ / / __ |
/_//_/    /_/  /____/\____/ /_/ |_|