Быстрое решение шаблонного вопроса.
Генератор документов формирует файлы с расширением .docx на основе созданного пользователем шаблона, подставляя в поля текстовые, табличные данные и изображения.
Описание работы (пример).
Предварительно следует создать документ с расширением .docx, который будет шаблоном для генерации файлов. В нём нужно задать имена полей для подстановки.
Имена полей задаются в фигурных скобках латинскими буквами, например: {COMP_NAME}. Расположите поля с именами переменных в нужных местах файла-шаблона, сохраните.
Совет! При работе с MacOS желательно для создания шаблонов использовать MS Word для Windows.Заполненный шаблон загрузить в систему. Сделать это можно двумя способами — загрузить на Диск в портале или в папку в административной части. Рассмотрим оба способа загрузки:
1. Зайдите в меню Диск, выберите нужную папку для шаблона и загрузите туда ваш файл-шаблон.
2. В административной части Битрикс зайдите в раздел Контент — Файлы и папки. Нажмите Загрузить файл — укажите путь к вашему шаблону.
В любом месте цепочке бизнес процесса добавьте активити «Генератор документов» (в системе он может обозначаться как Документ word из шаблона [mcart]):
Откройте настройки активити. В настройках действия Генератора прописываются поля, из которых будут браться данные для подстановки в переменные поля шаблона.
Рассмотрим подробнее поля настроек Генератора:
- Заголовок — имя данного активити. Это особенно удобно, если их несколько в цепочке бизнес-процесса. В этом случае созданные файлы с результатом будут иметь разные имена, заданные вами в настройках каждого активити;
- галочку «Обрабатывать поля в формате Merge Field» проставлять НЕ нужно;
- Путь к шаблону документа — путь к загруженному файлу с шаблоном. Например: /generator/template.docx или 523, где 523 – ID файла на диске. Если в поле прописаны буквы — модуль распознаёт путь, если цифры — находит файл с таким ID;
- Путь к сохраняемому файлу и имя — путь и название для сохраняемого файла с выходными данными и расширением .docx. Вы можете прописать здесь полный путь к файлу и формат его названия, а можете указать только название, указав путь к файлу в полях ниже. Пример заполнения: /generator/kp_{=System:Date}.docx (в данном случае имя файла будет содержать буквы kp, знак подчеркивания и текущую дату. Если вы указываете только формат названия выходного файла, например: kp_{=System:Date}.docx, то заполните нижеследующие поля:
- ID диска — ID диска, на который нужно сохранить файл результата. Как посмотреть ID диска, указано ниже.
- ID папки на диске — ID папки, в которую нужно поместить файл результата. Как посмотреть ID папки, указано ниже.
- Далее нужно добавить правила для замены переменных в шаблонном файле на данные. Для подстановки в переменные шаблонного файла в настройках действия нужно прописать правила с указанием имени переменной и имени поля, из которого будут браться данные. В левой части прописывается имя переменной в шаблоне, а в правой части — имя поля, откуда нужно взять данные. Имя поля указывается в фигурных скобках. Поле данных можно выбрать из списка, нажав на кнопку с многоточием около поля.
Внимание! Если поле документа является списком, то к правилу стоит добавить _printable. Если не выводятся другие типы полей, также попробуйте использовать приставку _printable.
Например: вместо {=Document:PROPERTY_TIP_OPLATY} укажите {=Document:PROPERTY_TIP_OPLATY_printable}.После заполнения всех полей Генератора, нажмите кнопку «Сохранить». Затем сохраните изменения, внесенные в бизнес-процесс (кнопка внизу).
Как посмотреть ID диска.
ID диска вы можете посмотреть следующим образом: в административной части Битрикс зайдите в Настройки — Таблицы — выберите в списке таблицу b_disk_storage, найдите нужный вам диск по его названию и посмотрите в соответствующей графе его ID.
Как посмотреть ID папки.
Зайдите в меню Диск, выберите нужную вам папку. Рядом с названием вы увидите поле с её ID. Если такого поля нет, зайдите в настройки и добавьте отображение этого поля.
Более подробную информацию по данному решению, в том числе ответы на следующие вопросы:
Как сгенерировать в выходном файле таблицу произвольного размера.
Как вывести набор изображений в файл-результат (допустим, картинки товаров).
Запуск бизнес-процессачитайте на сайте разработчика: https://www.mcart.ru/blogs/generator-dokumentov/ Внимание! Теперь есть возможность вносить данные в переменные, находящиеся в колонтитулах документа-шаблона. Теперь есть возможность вносить данные в колонтитулы шаблонного документа.
- Для этого в шаблоне создайте колонтитулы, внесите туда необходимые данные, в том числе переменные в фигурных скобках для подстановки данных.
- Загрузите шаблон на Диск.
- В параметрах Генератора укажите имена переменных и какие данные необходимо подставить на их места.
- Скачайте готовый файл с результатом.
- В колонтитулах будут данные, указанные вами в параметрах Генератора.