Создание шаблона документа в MS Word

Runa

Администратор
#1
Для формирования печатных документов в конструкторе Руна используются офисные пакеты Microsoft Office, OpenOffice и LibreOffice.
Документы формируются на базе подготовленных шаблонов, которые предварительно создаются для каждого объекта/формы и кладутся в одноимённые с ними папки, размещённые в каталоге проекта (структура каталогов формируется программой автоматически и внимания пользователя не требует).
Если есть вопрос "что такое шаблон документа", то он уже обсуждался в этом посте. Также можно поискать в Интернете по ключевой фразе "создание и использование шаблона".
Шаблон может быть создан для всех пользовательских объектов и форм проекта. Шаблоны для объектов позволяют формировать документы только для одной записи из списка. Шаблоны для форм, кроме того, при определённой конструкции структуры, могут содержать данные из множества записей (основного объекта или дочерних формы связи). Данные из множества записей могут быть выведены построчно, блоками или целыми частями (страницами) текста.

Шаблон может быть создан программой автоматически (с указанным именем и стандартным расширением, соответствующим выбранному офисному пакету), либо пользователем, с выбором типа документа и указанием места размещения.
Если документ формируется "с нуля", то лучше использовать автоматический способ: в структуре проекта, для выбранного объекта/формы открывается окно "Редактор шаблонов", в котором создаётся новый шаблон. Указывается его имя и выбирается тип офисного приложения. Предлагаемые типы определяются установленными в системе офисными пакетами.
Автоматическое создание шаблона документа.png
После сохранения выбранных параметров, программой будет открыт экземпляр MS Word (или другой заданный вариант), в нём сформирован список полей объекта/формы, на базе которого создавался шаблон, а сам шаблон сохранён в папку, по имени соответствующую объекту/форме. После чего шаблон будет открыт пользователю для продолжения внесения в него изменений.
Шаблон документа со списком полей.png
Теперь можно создавать структуру документа, который будет необходимо формировать для каждой записи объекта/формы. Закрытие шаблона для его тестирования не требуется. Можно вносить изменения, сохранять шаблон, а в программе формировать документ на его основе, проверяя получаемый результат.

Если есть уже существующий документ, на основе которого требуется подготовить шаблон, то необходимо открыть образец и сохранить его как шаблон (*.dotx) в необходимую папку проекта. Замечание: после выбора типа файла, система автоматически предложит сохранить файл в системную папку шаблонов. Поэтому необходимо сначала указать тип, а после этого указывать место размещения файла.
Образец документа для шаблона.png Сохранение документа как шаблон.png
Перед сохранением документа как шаблон, желательно создать папку для того объекта/формы, для которого и создаётся шаблон (если её ещё не было). Для этого может служить кнопка "Проводник" в окне редактора шаблонов. Если папки не существует, она будет создана, после чего открыта в системном проводнике.
Кнопка Проводник для создания и открытия папки.png
После создания папки для объекта/формы и размещения в ней образца документа как шаблона, можно приступить к его настройке.

Все данные из объекта/формы, помещаются (экспортируются) в шаблон документа, где они обозначены квадратными скобками.
Важно: совпадение имени поля в проекте и в шаблоне должно быть абсолютным, с учётом регистра.

Т.е. все места в шаблоне документа, куда должна быть помещены данные из проекта, заменяются на поля в квадратных скобках.
Пример результата настроенного шаблона:
Шаблон с настроенными полями.png
Чтобы не задавать имена полей вручную, удобно предварительно создать автоматический формируемый шаблон, в который будут помещены все поля, которые экспортируются для данного объекта/формы, и копировать из него образцы полей без сохранения форматирования (вставить как текст). После чего данный шаблон можно удалить.

Замечание: поля в шаблоне могут встречаться любое число раз. В каждое поле будет помещено одно и тоже значение из базы данных.

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

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

См. также:
- Строковые константы в проекте