Фабрика документов

Word: создайте и проверьте шаблон DOCX

Поля, настоящая таблица товаров, артикулы, загрузка DOCX и пробная генерация. Готовый JSON для копирования и проверка результата на карточке CRM.

Содержание руководства

DOCX-шаблон для «Фабрики документов» готовится в Word: обычный текст и оформление остаются в файле, а переменные заменяются данными CRM. Для списка товаров нужна настоящая таблица с циклом. Ниже показано, как выбрать поля, загрузить файл и проверить результат. Другие сценарии собраны в руководстве приложения.

1. Выберите, из какой карточки брать данные

Откройте приложение в Битрикс24, перейдите в «Шаблоны» и нажмите «Новый шаблон». В форме укажите «Название», уникальный «Код», выберите DOCX в поле «Тип» и отметьте подходящие карточки в блоке «Сущности шаблона». Например, для договора по сделке выберите сделку.

Нажмите «Открыть поля». Каталог помогает найти доступные переменные и скопировать их точное написание. Пользовательские поля и номера типов смарт-процессов различаются на порталах. Код из чужого примера может отсутствовать у вас.

Выбирайте источник по смыслу: сделка содержит сведения о продаже, компания и контакт содержат данные клиента, «Моя компания» содержит данные вашей организации. Реквизиты появятся при заполненных связях, банковских данных и доступе пользователя. Если у сделки не выбран контрагент, маркер сам его не найдёт.

2. Подготовьте текст в Word

Для начала можно скачать учебное КП в DOCX и заменить его текст своим. Файл служит основой для обучения: содержание, реквизиты и суммы нужно проверить перед работой.

Откройте документ, сохраните его в формате .docx и поставьте маркеры вместо изменяемого текста. Например:

Договор по сделке «{{ deal.title }}»
Покупатель: {{ company.name }}
ИНН: {{ company.inn }}
Контакт: {{ contact.formatted_name }}

Путь deal.title относится к сделке. Если шаблон предназначен для нескольких типов карточек, выберите в каталоге подходящий алиас текущей сущности, например {Title}, и проверьте каждый тип отдельно.

Копируйте регистр и знаки из каталога. В параметрах фильтров используйте прямые кавычки. Обычный текст вокруг выражений печатается без изменений.

3. Сделайте таблицу товаров

В каталоге ищут поле и копируют готовое выражение
В каталоге ищут поле и копируют готовое выражение

В Word создайте таблицу. Шапку «Название / Количество / Сумма» разместите отдельно над циклом. Затем добавьте ровно три строки для начала блока, данных и конца блока:

Строка Ячейка 1 Ячейка 2 Ячейка 3
Начало {%tr for item in products %}
Данные {{ item.name }} {{ item.qty }} {{ item.sum | money }}
Конец {%tr endfor %}

Служебные строки удалятся, а строка данных повторится для каждого товара. В строках начала и конца удобно объединить ячейки. Не вставляйте весь блок одним абзацем с табуляциями: в файле должна остаться таблица Word. Оформление строки данных задайте до загрузки шаблона.

Названия, количество и суммы берутся из товарных строк CRM. Список products с двумя позициями даст две строки. Пустой список не создаст товарных строк.

4. Добавьте артикул из свойства товара

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

В обновлённой версии откройте «Товары» → «Свойства товара» в каталоге и скопируйте нужное поле. Для свойства с условным кодом property109 таблица выглядит так; шапка «Название / Количество / Артикул» остаётся вне цикла:

Строка Ячейка 1 Ячейка 2 Ячейка 3
Начало {%tr for item in products %}
Данные {{ item.name }} {{ item.qty }} {{ item.properties.property109 }}
Конец {%tr endfor %}

Замените property109 своим кодом. Артикул 00042 сохраняется текстом с ведущими нулями. Несколько значений разделяются точкой с запятой. Если Битрикс24 возвращает для списка только ID, в документ попадёт ID.

Свойство относится к выбранному товару или вариации. Свойства родителя автоматически не подставляются. Пустое свойство и свободная позиция дают пустую ячейку; ошибка чтения товара останавливает генерацию. Для загрузки описаний свойств в каталоге нужен администратор, для генерации по готовому шаблону нужны доступ к товару и право приложения на каталог.

5. Настройте форматы и необязательный текст

Артикул в каталоге тестового портала: здесь код property119, в вашем портале он может отличаться
Артикул в каталоге тестового портала: здесь код property119, в вашем портале он может отличаться

Фильтр после | меняет отображение значения. money выводит сумму с рублём, money_no_currency оставляет число без символа валюты. Эти фильтры используют рубли и не выбирают символ по валюте CRM.

Для необязательного абзаца поставьте служебные маркеры в отдельных абзацах Word:

{%p if company.has_kpp %}
КПП покупателя: {{ company.kpp }}
{%p endif %}

При ложном флаге абзац с КПП не попадёт в результат. Для короткого условия внутри строки поддерживается {% if company.has_kpp %}КПП: {{ company.kpp }}{% endif %}. Проверка заполненности не создаёт отсутствующие реквизиты.

6. Загрузите и проверьте файл

Форма загрузки: название, код, тип, файл и совместимые сущности
Форма загрузки: название, код, тип, файл и совместимые сущности

Вернитесь в форму, установите DOCX в поле «Тип», в поле «Файл» выберите подготовленный .docx и нажмите «Загрузить шаблон». В карточке проверьте вкладку «Переменные» и сообщения анализа. Если меняете маркеры в Word, используйте «Загрузить новую версию», чтобы приложение повторно проанализировало файл.

Откройте вкладку «Тестовая генерация». Для таблицы со свойством и названием сделки можно использовать такие условные данные:

{
  "deal": {"title": "Поставка оборудования"},
  "company": {"name": "ООО Учебный пример", "inn": "0000000000"},
  "contact": {"formatted_name": "Иванов Иван Иванович"},
  "products": [
    {"name": "Товар А", "qty": 2, "sum": 200, "properties": {"property109": "001-А"}},
    {"name": "Товар Б", "qty": 1, "sum": 50, "properties": {"property109": "00042"}}
  ]
}

Нажмите «Проверить JSON», затем «Сформировать документ». После готовности скачайте результат и откройте в Word. Для приведённой таблицы ожидаются две позиции с количеством 2 и 1 и сохранёнными артикулами. Тестовые данные вводятся вручную: проверка на них не подтверждает заполнение реальной карточки CRM.

Все данные примера вымышлены, включая ИНН. Для первой пробы используйте перечисленные поля. Условный блок КПП будет скрыт; для его проверки добавьте в company поля "has_kpp": true и "kpp": "000000000".

После этого создайте документ из нужной карточки CRM, выберите совместимый шаблон и сравните файл с данными карточки. Проверьте контрагента, суммы, строки и переносы страниц.

Тестовая генерация на учебных данных: на снимке используется код property119 тестового портала
Тестовая генерация на учебных данных: на снимке используется код property119 тестового портала

Редактирование и номера

Для DOCX доступен редактор документа в приложении, бета, когда функция включена. Его кнопка в карточке называется «Редактировать документ (бета)». Черновик требуется проверить и опубликовать, прежде чем он станет версией для новых документов.

Выбор нумератора пока не присваивает следующий номер и не увеличивает счётчик Битрикс24. Если номер хранится в CRM, добавьте его поле через каталог. Изменение шаблона влияет на новые документы; ранее сформированные файлы сохраняются.