Метка «Цикл»
Метка используется для повторения части шаблона столько раз, сколько элементов в списке. Она перебирает элементы из поля типа «Список» и подставляет данные по одному — формируя, например, перечень товаров, услуг или сотрудников.

Синтаксис

Где:
-
– начало цикла. -
списокТоваров– идентификатор поля типа «Список». -
данныеТовара– это имя, через которое происходит обращение к каждому элементу. Вместо него можно использовать любое допустимое имя переменной, например:1,товары1,_23,_товарыи т. п.Соответственно, к полям, находящимся внутри составного поля, нужно обращаться с указанием этого имени. Например, если заменить
данныеТоварана1, то обращение к полю наименование будет выглядеть так:1.наименование -
обращение к конкретным данным внутри списка и составного поля. -
– закрывает конструкцию.
📌 Если список содержит составные поля, обращаться к ним можно через точку: товар.наименование, товар.цена и т.д.
Пример:
Задача: вывести список товаров с названием, количеством и ценой.
Шаги:
-
Создайте поле типа «Список» с элементом «Составное поле».
-
Внутри составного поля добавьте:
-
Текстовое поле —
наименование -
Целое число —
колво -
Десятичное число —
цена

-
-
В шаблоне установите курсор и выберите: «Метки» → «Цикл» → «Цикл».

-
Заполните параметры цикла:
-
Переменная ряда:
данныеТовара(так вы будете обращаться к каждому товару внутри цикла); -
Список:
списокТоваров— идентификатор вашего списка; -
Разделитель: при необходимости (например, запятая или точка с запятой)

-
-
Добавьте внутрь цикла
{цикл(товар из списокТоваров)}...{/цикл}текст с метками. -
Чтобы обратиться к вложенным полям каждого товара, используйте метку
Значениеи укажите путь, либо вставьте его через три точки напротив вложенного поля (Наименование,Кол-во,Цена):
-
Закройте цикл:
{/цикл}
Принцип работы:
-
Указывается переменная и список
В начале цикла вы задаёте, как назвать переменную (например,
данныеТовара), и из какого поля брать данные (например,списокТоваров).
-
Цикл начинает перебор
Система берёт первый элемент списка и подставляет его данные внутрь конструкции:
{цикл(данныеТовара из списокТоваров)} ... {/цикл} -
Автоматический переход к следующему элементу
После обработки первого элемента, цикл переходит ко второму, третьему и т.д., пока список не закончится.
-
Завершение цикла
После обработки всех элементов выполнение цикла завершается.
📌 Если список пуст — цикл ничего не выведет.