4.2.3. Шаблоны DOCX, DOC и ODT
Шаблоны DOC и DOCX создаются с помощью Microsoft Office или OpenOffice / LibreOffice.
Шаблон данного типа включает в себя текст документа и опционально одну или несколько таблиц. В тексте документа выводятся данные из первых строк произвольных полос. В таблицу можно выводить произвольное количество строк некоторой полосы.
Для вывода поля в тексте документа необходимо использовать строку вида ${band_name.field_name}
, где band_name
– имя полосы, field_name
– имя поля.
Для вывода данных в таблицу она должна быть привязана к некоторой полосе. Это делается путем указания в первой ячейке таблицы строки вида ##band=band_name
, где band_name
– имя полосы. Поля в таблице размечаются строками вида ${field_name}
, где field_name
– имя поля связанной с таблицей полосы. Для обращения к полям других полос в таблице используйте префикс с именем полосы, как это делается в полях текста документа. В одной ячейке таблицы можно выводить несколько полей.
Вложенные горизонтальные полосы в формате DOCX и DOC не поддерживаются. Если вложенные полосы необходимы, используйте XLS(X)-шаблоны.
Таблица должна содержать либо одну, либо две строки. Если строк в таблице две, то поля связанной полосы должны находиться во второй строке. В первую заносится маркер с именем связанной полосы и, при необходимости, статический текст и поля других полос. |
Например, для вывода отчёта, состоящего из двух полос: Book
и Authors
, первая из которых выводит название и жанр книги, а вторая – список авторов этой книги, шаблон выглядит следующим образом:
Формат ячеек для шаблонов DOCX и DOC не поддерживается. Рекомендуется приводить данные к строке в запросе. Например, для значения
можно выполнить следующее приведение:
|