# Переменные DOCX: поля, таблицы и условия

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

**Раздел:** CRM: Документы
**Обновлено:** 2026-10-23
**Официальный URL:** https://blank-kit.ru/docs/crm-documents/template-variables
**Язык:** ru-RU

## Переменные в Word

Переменная — метка, вместо которой CRM вставляет значение. Имя метки не обязано совпадать с названием системного поля: **{Покупатель}** можно связать с **«Клиент → ФИО клиента»**, а **{seller_inn}** — с **«Организация → ИНН»**. После [загрузки шаблона](/docs/crm-documents/custom-docx-templates) выбирайте источник в CRM, а не пишите путь к данным внутри Word.

### Поддерживаемые обозначения

| Вид | Пример |
| --- | --- |
| Фигурные скобки | {client_name} или {Имя клиента} |
| Двойные фигурные | {{client_name}} |
| Знак доллара и скобки | ${client_name} |
| Квадратные скобки | [Имя клиента] |
| Двойные угловые | <<Client name>> |

Имена могут быть русскими и английскими. Используйте один понятный вариант названия для одного значения; не меняйте буквы, регистр или подчёркивания между повторениями. Для переноса метки в Word воспользуйтесь копированием тега в редакторе шаблона. Одинаковые переменные в одном контексте настраиваются вместе и получают одно значение.

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

Текст **«Имя клиента»** или **"Client name"** сначала предлагается как возможная переменная. Подтвердите **«Использовать»** и назначьте источник. Обычные названия в кавычках оставляйте текстом. Кавычки вокруг явной метки, например **«{client_name}»**, остаются частью оформления.

### Источники и форматы

Ищите поле по названию и разделу: **Документ**, **Сделка**, **Организация**, **Клиент**, **Контрагент**, **Товары** и собственные поля CRM. Перед выбором сравните пример значения: одноимённый адрес организации и адрес контрагента относятся к разным сторонам договора.

| Формат | Пример использования |
| --- | --- |
| Текст | ФИО, наименование, реквизиты |
| Дата | Дата договора или срок исполнения |
| Число | Количество, длительность |
| Деньги | Цена и итог с денежным форматированием |
| Сумма прописью | Словесное представление числовой суммы |

Для ручного числового ввода допустимы **1 000,50**, **1000.50** и **0**. В дате используйте календарь либо корректную дату вида **22.10.2026**; принимается также **2026-10-22**. Пустое значение отличается от нуля: вводите **0**, если именно он должен попасть в документ. Неверное число или невозможную дату нужно исправить перед проверкой.

### Повторяющиеся строки товаров

Сделайте таблицу Word с заголовками и одной строкой-образцом. Разместите начало блока в первой ячейке этой строки, окончание — в последней. Пример содержимого четырёх ячеек:

```text
{#items}{item_name} | {quantity} | {price} | {line_total}{/items}
```

В CRM назначьте блоку **items** источник **«Таблица товаров»**, а вложенным меткам — поля:

| Метка Word | Выбрать в CRM |
| --- | --- |
| item_name | Товары → Название позиции |
| quantity | Товары → Количество |
| price | Товары → Цена |
| line_total | Товары → Стоимость |

Системные источники этих полей — **item.name**, **item.quantity**, **item.price**, **item.total**. Метки Word из примера менять на эти пути не требуется. Источник выбирается из списка и хранится по идентификатору поля.

При создании из сделки строки берутся из неё. Без сделки позиции добавляются в форме документа. Для цены и стоимости выберите денежный формат. Поля товара работают внутри повторяющейся таблицы; вне неё используйте поле сделки, постоянное или ручное значение. Сам блок товаров разместите на верхнем уровне, не внутри условия. Настройку повторения строки заголовков и ширины столбцов выполните в Word, затем проверьте многостраничный PDF.

### Обычные и обратные условия

Условие скрывает или показывает фрагмент. Например, отдельный абзац о предоплате:

```text
{#prepayment}Заказчик вносит предоплату {advance_amount}.{/prepayment}
{^prepayment}Оплата производится после приёмки работ.{/prepayment}
```

Для **prepayment** выберите источник **«Условие»**, поле CRM и проверку **«Поле заполнено»**, **«Значение равно»** или **«Значение не равно»**. Первый блок появится при выполнении проверки, обратный с **^** — когда она не выполнена. Имя закрывающего тега должно точно совпадать с открывающим; знак **#** или **^** в окончании не нужен.

Проверка **«Поле заполнено»** считает заполненными и **0**, и **«Нет»**. Чтобы показать блок только при положительном ответе, для поля **«Да / нет»** выберите **«Значение равно → Да»**. Метку **advance_amount** настройте отдельно, например как обязательную сумму.

Обязательность проверяется только в активной ветке: сумма предоплаты не потребуется, когда выбран вариант оплаты после приёмки. В форме видно, какие условные блоки активны; проверьте оба варианта до публикации. Если одна метка повторяется в обычном и обратном блоке, её значение остаётся общим для соответствующего контекста.