Экспорт приложения выполняется при выборе пункта меню «Приложения» - «Экспорт приложения».
РЕзультатом экспорта является архив 7z:
В корне архива располагается папка
application
, содержащая файл
<код_приложения>.application.json
со сведениями о приложении:
мультиязычное поле «Наименование»
поле «Код»
поле «Ревизия»
список прав на приложение:
группа пользователей
состояние флажка «Чтение»
состояние флажка «Изменение»
Для каждого объекта приложения в папке
application
создается отдельный файл /
папка с файлами:
для папки приложения создается папка с таким же наименованием, содержащая файлы/папки входящих в нее объектов приложения;
для каждого объекта сущности «Форма»
создается отдельная папка с названием
<код_формы>.form
, содержащая
файлы:
formDefinition.json
с описанием
структуры формы, связей с другими объектами
приложения и значений компонентов по умолчанию;
form.main.script.js
, содержащий
код скрипта формы;
файл шаблона печатного представления формы, если он был загружен;
[<код_динтаблицы>.]<код компонента>.js
для каждого компонента формы, к которому был
добавлен отдельный скрипт;
<код_динтаблицы>
указывается только в том случае, если компонент
располагается в динамической таблице;
для каждого объекта сущности «Пользовательский
компонент» создается отдельная папка с названием
<код_компонента>.userModule
,
содержащая файлы:
description.json
со сведениями об
объекте: название, код пользовательского компонента
и признак использования в формах;
script.js
, содержащий код
JavaScript;
template.html
, содержащий код
HTML;
для каждого объекта сущности «Скрипт
интерпретатора» создается отдельная папка с
названием
<название_скрипта>.interpreterScript
,
содержащая файлы:
description.json
со сведениями об
объекте;
script.js
, содержащий код
скрипта;
для каждого объекта сущности «Пользовательский
отчет» создается отдельная папка с названием
<код_отчета>.userReport
,
содержащая файлы:
description.json
со сведениями об
отчете;
report.template.jrxml
, содержащий
шаблон отчета;
для каждой корневой группы пользователей создается
отдельный файл
<код_группы>.userGroup.json
,
содержащий описание самой корневой группы и ее дочерних
групп;
для каждой корневой группы реестров, как и для групп
пользователей, создается отдельный файл
<код_группы>.registryGroup.json
,
содержащий описание самой корневой группы и ее дочерних
групп;
для каждого объекта остальных сущностей создаются
отдельные файлы json
, имена которым
присваиваются по правилу
<код_объекта>.<имя_сущности>.json
.
Формат файлов соответствует форматам, используемым для
экспорта/импорта конфигурации.
Экспорт считается успешным, если были успешно экспортированы все объектв приложения.
Результатом экспорта является архив в формате
7z
. Имя архива по умолчанию -
app-<код_приложения>-YYYY-MM-DD_hh-mm-ss.7z
,
где YYYY-MM-DD_hh-mm-ss
- текущие дата и
время на сервере.
Экспорт приложения не должен изменять номер его ревизии.
Альтернативный поток 1. Код
экспортируемого объекта содержит символ
/
Ошибка возникает в случае, если код объекта приложения, не
являющегося скриптом или компонентом формы, содержит символы,
использование которых в имени файла недопустимо в файловой
системе - то есть, символ /
.
При этом объект с таким кодом не экспортируется, в области логов событий отображается ошибка с текстом:
Невозможно выполнить экспорт объекта
path/to/file
: код объекта не должен содержать
символы /
,
`,
?и
` *
Путь к файлу указывается относительно корневой ноды приложения.
Для каждого некорректного файла отображается отдельная строка с ошибкой, продолжается проверка кодов остальных объектов.