Перейти к содержанию

Поле «Список»

Поле «Список» используется для хранения нескольких элементов одинаковой структуры.

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

Создание и добавление поля

Создание и добавление полей: ИНСТРУКЦИЯ.

При создании поля «Список» необходимо определить, из чего будет состоять один элемент списка:

  • Простое поле — если каждый элемент содержит одно значение, например текст, число или дату;
  • Составное поле — если каждый элемент содержит несколько связанных полей.

Например, для списка «Сотрудники» элементом может быть составное поле «Сотрудник», которое содержит ФИО, должность и стаж работы.

Создание и добавление полей: ИНСТРУКЦИЯ

Структура списка

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

Если элемент списка является простым полем, каждый элемент содержит одно значение.

Например:

города
├── Москва
├── Казань
└── Екатеринбург

Если элементом является составное поле, каждый элемент содержит одинаковый набор вложенных полей.

Например:

сотрудники
├── сотрудник
│   ├── фио
│   ├── должность
│   └── стаж
│
└── сотрудник
    ├── фио
    ├── должность
    └── стаж

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

Например, поле «Товары» сделки может иметь следующую структуру:

сделки
└── товары
    └── товар
        ├── название
        ├── количество
        └── цена

Здесь:

  • сделки — составное поле, представляющее сущность сделки;
  • товары — поле «Список»;
  • товар — составное поле, описывающее один элемент списка;
  • название, количество, цена — поля одного товара.

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

Использование через вкладку «Метки»

Для работы с элементами списка используются метки «Цикл» и «Таблица».

Через метку «Цикл»

Метка «Цикл» последовательно перебирает элементы списка и повторяет указанный фрагмент документа для каждого из них.

В выражении метки «Цикл» текущему элементу задаётся имя, через которое можно обращаться к его значению или вложенным полям.

Например, для списка сотрудники:

{цикл(сотрудник из сотрудники)}
{сотрудник.фио} — {сотрудник.должность}
{/цикл}

Здесь:

  • сотрудники — поле «Список»;
  • сотрудник — имя текущего элемента списка;
  • сотрудник.фио и сотрудник.должность — поля текущего сотрудника.

Например, для списка товаров сделки:

{цикл(товар из сделки.товары)}
{товар.название} — {товар.количество} — {товар.цена}
{/цикл}

Здесь:

  • сделки.товары — поле «Список»;
  • товар — имя текущего элемента;
  • товар.название, товар.количество, товар.цена — поля текущего товара.

Подробнее о настройке: метка «Цикл».

Через метку «Таблица»

Метка «Таблица» используется, если элементы списка необходимо вывести в виде динамической таблицы.

Для каждого элемента списка Комбинатор повторяет строки, расположенные внутри метки «Таблица». Это может быть одна или несколько строк.

Например, если для каждого товара в шаблоне предусмотрены две строки:

Наименование: {товар.название}
Количество: {товар.количество}    Цена: {товар.цена}

а список содержит два товара, в документе будут сформированы:

Наименование: Монитор
Количество: 2    Цена: 15000

Наименование: Клавиатура
Количество: 5    Цена: 3000

Подробнее о настройке: метка «Таблица».

Функции для работы со списком

Для поля «Список» доступны функции для поиска, отбора, сортировки, группировки и обработки его элементов.

Поиск и обработка списка

Результат функций фильтровать, сортировать, сортироватьПоУбыванию и группировать используется вместо исходного списка в выражении метки «Цикл» или «Таблица».

Фильтрация возвращает новый список с отобранными элементами, сортировка — новый список с изменённым порядком элементов, а группировка — список сформированных групп.

Расчёты по элементам списка

Для списка и значений его элементов можно использовать следующие функции:

  • счет — подсчитывает количество элементов;
  • сумм — вычисляет сумму числовых значений;
  • срзнач — вычисляет среднее арифметическое;
  • мин — возвращает минимальное значение;
  • макс — возвращает максимальное значение.