Подготовка ZIP-архива шаблона#
Варианты подготовки ZIP-архива шаблона:
Вручную.
С помощью Template Registry UI. Подробнее о функциональности формирования архива читайте в разделе «Формирование архива» документа «Руководство оператора».
Порядок создания ZIP-архива шаблона:
Подготовить файл разметки шаблона. Это файлы, сформированные по правилам одной из поддерживаемых технологий (далее — движков):
для JasperReports файл формата
JRXML. Подробнее об особенностях разработки шаблона смотрите раздел Разработка шаблона JasperReports;для FreeMarker файл формата
FTL. Подробнее об особенностях разработки шаблона смотрите раздел Разработка шаблона FreeMarker;для XDocReport файл формата
ODT. Подробнее об особенностях разработки шаблона смотрите раздел Разработка шаблона XDocReport.
Подготовить конфигурационный файл
configuration.json.Формат файла конфигурации:
Название
Тип
Формат
Описание
Обязательность (да/нет)
Пример
templateCode
string 128
Список допустимых символов задается настройкой
dcgn.template-registry.dcgn.validation.templateCodeRegexpпри установке DCGN и может быть изменен. Значение маски, установленное по умолчанию, см. в разделе Конфигурация DCGN документа «Руководстве по установке»Код шаблона
да
"templateCode": "client-profile"description
string 256
–
Описание шаблона
да
"description": "Описание"selectionStrategy
string
-
BASED_ON_DATE— выбор документа для генерации происходит по активной версии шаблона на заданную дату (activationDate);
*BASED_ON_CODE— выбор документа для генерации происходит по коду активной версии шаблонаСтратегия выбора версии шаблона для генерации документа. Не может быть изменено со временем
да
"selectionStrategy": "BASED_ON_DATE"activeVersions
array
–
Секция для описания активной версии шаблона
нет
"activeVersions": [ { "versionCode": "version_2019", "description": "первая версия", "activationDate": "01.01.2019", "engine": "XDOCREPORT_ODT_TEMPLATE", "defaultFormat": "PDF", "templateFileName": "template_2019.odt" }]activeVersions.versionCode
string 128
Список допустимых символов задается настройкой
dcgn.template-registry.dcgn.validation.versionCodeRegexpпри установке DCGN и может быть изменен. Значение маски, установленное по умолчанию, см. в разделе Конфигурация DCGN документа «Руководстве по установке»Код версии. Уникальное значение, которое не может быть изменено со временем
да
"versionCode": "version_01"activeVersions.description
string 256
–
Описание версии
да
"description": "первая версия"activeVersions.activationDate
string
dd.MM.yyyyДата, с которой шаблон считается активным. Заполнение обязательно для типа
BASED_ON_DATEнет
"activationDate": "01.01.2019"activeVersions.engine
string
Возможно указание одного из значений:
JASPERREPORTS,FREEMARKER,XDOCREPORT_ODT_TEMPLATEДвижок шаблона
да
"engine": "XDOCREPORT_ODT_TEMPLATE"activeVersions.defaultFormat
string
Возможно указание одного из значений:
PDF,HTML,XLS,XLSX,RTF,CSV,XML,DOCX,ODT,ODS,TXT,PNG_WITH_TRANSPARENT,PNGИсходящий формат документа по умолчанию
да
"defaultFormat": "PDF"activeVersions.templateFileName
string 256
^[a-zA-Z0-9_]+$Имя файла шаблона
нет
"templateFileName": "template.jrxml"activeVersions.resources
object
–
Движки шаблонов при создании документов поддерживают использование ресурсов. В этой секции описываются ресурсы, подставляемые по умолчанию. Движок шаблона FREEMARKER не поддерживает установку ресурсов по умолчанию, а только как передачу в параметрах на генерацию
нет
"resources": [ { "name": "logo", "fileName": "resources/logo.png" }]activeVersions.resources.name
string 128
^[a-zA-Z0-9_]+$Наименование ресурса
да
"name": "logo"activeVersions.resources.fileName
string 256
^[a-zA-Z0-9_]+$Путь до ресурса
да
"fileName": "resources/logo.png"archiveVersions
array
–
Секция для описания архивной версии шаблона
нет
"archiveVersions": [ "version_2018"]archiveVersions.versionCode
string 128
Список допустимых символов задается настройкой
dcgn.template-registry.dcgn.validation.versionCodeRegexpпри установке DCGN и может быть изменен. Значение маски, установленное по умолчанию, см. в разделе Конфигурация DCGN документа «Руководстве по установке»Код версии. Уникальное в рамках кода шаблона значение, которое не может быть изменено со временем
да
"versionCode": "version_02"Важно
Для стратегий
BASED_ON_DATEиBASED_ON_CODEдопустимо иметь несколько активных версий шаблона.Рекомендации выбора типа стратегии:
Стратегия
BASED_ON_CODEподходит для сценария, где в один момент времени необходимо иметь несколько активных версий шаблона. При генерации документа происходит вызов шаблона по коду шаблона и коду его активной версии.Стратегия
BASED_ON_DATEподходит для сценария, где необходимо генерировать документы на определенную дату. При генерации документа происходит вызов шаблона по коду шаблона и дате активации активной версии шаблона.
Пример файла конфигурации (configuration.json)
{ "templateCode": "client-profile", "description": "Анкета клиента", "selectionStrategy": "BASED_ON_DATE", "activeVersions": [ { "versionCode": "version_2019", "description": "первая версия", "activationDate": "01.01.2019", "engine": "XDOCREPORT_ODT_TEMPLATE", "defaultFormat": "PDF", "templateFileName": "template_2019.odt", "resources": [ { "name": "foto", "fileName": "foto.png" } ] }, { "versionCode": "version_2020", "description": "вторая версия", "activationDate": "01.01.2020", "engine": "XDOCREPORT_ODT_TEMPLATE", "defaultFormat": "PDF", "templateFileName": "template_2020.odt", "resources": [ { "name": "foto", "fileName": "foto.png" } ] } ], "archiveVersions": [ "version_2018", "version_2017" ] }Подготовить файлы, содержащие ресурс по умолчанию в одном из ниже указанных форматов (в зависимости от выбранного движка шаблона).
Поддержка форматов ресурсов в разрезе движков шаблонов:
Движок шаблона
XDocReport (ODT)
FreeMarker
JasperReports
исходящий формат
исходящий формат
исходящий формат
формат ресурсов
HTML
PDF
ODT
TXT
HTML
HTML
PDF
XLS
XLSX
RTF
CSV
XML
DOCX
ODS
ODT
TXT
PNG
PNG_WITH_TRANSPARENT
PNG
PNG
PNG
PNG
~
PNG
PNG
PNG
PNG
PNG
PNG
~
PNG
PNG
PNG
PNG
~
PNG
JPG
JPG
JPG
JPG
~
JPG
JPG
JPG
JPG
JPG
JPG
~
JPG
JPG
JPG
JPG
~
JPG
JPG
GIF
GIF
GIF
GIF
~
GIF
GIF
GIF
GIF
GIF
GIF
~
GIF
GIF
GIF
GIF
~
GIF
GIF
SVG
~
SVG
SVG
~
SVG
SVG
SVG
SVG
SVG
SVG
~
SVG
SVG
SVG
SVG
~
SVG
SVG
TIFF
~
~
~
~
TIFF
TIFF
~
TIFF
TIFF
TIFF
~
TIFF
TIFF
TIFF
TIFF
~
TIFF
TIFF
BMP
BMP
BMP
BMP
~
~
~
BMP
BMP
BMP
BMP
~
BMP
BMP
BMP
BMP
~
BMP
BMP
XML
~
~
~
~
~
XML
XML
XML
XML
XML
XML
XML
XML
XML
XML
XML
XML
XML
JSON
~
~
~
~
~
JSON
JSON
JSON
JSON
JSON
JSON
JSON
JSON
JSON
JSON
JSON
JSON
JSON
CSV
~
~
~
~
~
CSV
CSV
CSV
CSV
CSV
CSV
CSV
CSV
CSV
CSV
CSV
CSV
CSV
XLS
~
~
~
~
~
XLS
XLS
XLS
XLS
XLS
XLS
XLS
XLS
XLS
XLS
XLS
XLS
XLS
XLSX
~
~
~
~
~
XLSX
XLSX
XLSX
XLSX
XLSX
XLSX
XLSX
XLSX
XLSX
XLSX
XLSX
XLSX
XLSX
Сформировать ZIP-архив.