Функциональность экспорта и импорта позволяет экспортировать проект в файл и импортировать проект из файла.
Выполнение экспорта и импорта доступно только учетным записям с ролью «Суперпользователь».
В файл экспорта сохраняется сам проект – с его свойствами, настройками, содержимым и настройками содержимого – и связанные с этим проектом сущности приложения с их настройками:
группы пользователей без пользователей*** – если используются в настройках прав доступа перечисленных выше сущностей.
* Данные датасетов не сохраняются экспортом. После импорта проекта, для затронутых импортом (созданных или измененных) датасетов необходимо выполнять восстановление данных. ** Для объединенного датасета из датасетов локального хранилища сохраняются и переносятся все используемые в нем датасеты. *** После импорта проекта, в создаваемых импортом группах пользователей необходимо настраивать состав пользователей вручную. |
—
При импорте должно соблюдаться соответствие версий модулей приложения.
Импортом можно создавать новые сущности или заменять существующие, если названия импортируемых и существующих сущностей совпадают. При этом заменяются параметры сущностей, а связи с другими сущностями приложения актуализируются.
Функциональность экспорта и импорта НЕ предусматривает копирования:
1. Авторизуйтесь в системе под учетной записью с ролью «Суперпользователь».
2. Перейдите в модуль Dashboards, раздел «Проекты».
3. Нажмите для соответствующего проекта кнопку действий «» и выберите в меню вариант «Экспортировать». Об успешном запуске экспорта сообщает нотификация «Выполняется экспорт проекта».
4. Когда файл экспорта сформирован, поступает соответствующее уведомление. Откройте окно уведомлений, найдите уведомление «Экспорт проекта завершен» и нажмите в нем кнопку «Скачать файл».
–
Есть проект с тремя слоями, которые называются: «Таблица», «Виджеты» и «SVG».
На слое «Таблица» размещены таблица и глобальный фильтр GF1, связанный с этой таблицей. В таблице и фильтре используется один и тот же датасет, полученный через SQL-запрос из источника postgresql.
На слое «Виджеты» размещены два виджета. В первом виджете используется тот же датасет, что в таблице и фильтре на слое «Таблица». Во втором виджете используется датасет, полученный из файла. По виджетам настроена детализация: от первого – детализация на слой «Таблица», с передачей значения в глобальный фильтр GF1, от второго – на слой «SVG», с передачей значения в глобальный фильтр GF2. Кроме того, во втором виджете используется пользовательский компонент.
На слое «SVG» размещены компоненты проекта SVG-объект и глобальный фильтр GF2, связанный с SVG-объектом. В объекте и фильтре используется один и тот же датасет, полученный из файла. Тот же датасет используется во втором виджете на слое «Виджеты». По SVG-объекту настроена детализация на другой проект стенда.
В проекте используется пользовательская тема.
Для всех названных сущностей, поддерживающих настройку прав доступа, настроены права доступа через одну и ту же группу пользователей.
Для проекта из предусловия в файл экспорта сохранятся данные о:
Для файла экспорта рассчитывается хеш-сумма, которую система проверяет при импорте. Любое изменение в файле приведет к отказу в импорте. |
1. Убедитесь, что соблюдается соответствие версий модулей приложения. Откройте архивный файл экспорта, откройте корневой файл versions. Сравните указанные в файле версии модулей с версиями модулей на целевом стенде (Manager → Настройки → Модули). Отличие в версиях модулей приведет к непредсказуемому поведению приложения в отношении затронутых импортом сущностей.
2. Если импортируемый проект содержит виджеты, которые используют базовые компоненты, убедитесь, что эти компоненты присутствуют как базовые на целевом стенде (Dashboards → Библиотека компонентов → Компоненты).
Отсутствие базовых компонентов приведет к необходимости настраивать созданные импортом виджеты вручную.
3. Если импортируемый проект использует датасеты, которые созданы SQL-запросом или прямым подключением, убедитесь, что на целевом стенде существуют одноименные источники, из которых вы сможете восстановить данные датасета (Manager → Источники).
4. Если импортируемый проект содержит датасеты, которые созданы из файлов, убедитесь, что в вашем распоряжении есть эти файлы.
5. Если вам необходимо заменить существующие на целевом стенде сущности импортируемыми сущностями, обратите внимание, что заменяемые сущности могут иметь связи с другими сущностями приложения, кроме импортируемых. Замена параметров таких сущностей может отразиться на работоспособности связанных сущностей и потребовать их ручной настройки.
6. Если по компонентам импортируемого проекта настроена детализация на другие проекты или слои других проектов, убедитесь, что на целевом стенде существуют проекты с соответствующими названиями, содержащие слои с соответствующими названиями. При совпадении названий ссылки детализации при импорте корректируются автоматически.
Если при импорте совпадение по названию проекта или слоя не находится, ссылка детализации остается в неизмененном виде и ее необходимо настраивать вручную.
1. Авторизуйтесь в системе под учетной записью с ролью «Суперпользователь». Все сущности, затрагиваемые импортом, создаются с авторством учетной записи, от имени которой выполняется импорт.
2. Перейдите в модуль Dashboards, раздел «Проекты».
3. Нажмите кнопку «Добавить». В открывшемся модальном окне «Добавление проекта» выберите вариант «Импорт», чтобы перейти к шагу выбора файла импорта.
–
–
4. В открывшемся модальном окне «Импорт проекта» нажмите кнопку «Загрузить». Выберите файл экспорта, дождитесь появления в окне надписи «Файл успешно загружен». Включите параметр «Импортировать группы пользователей» при необходимости. Когда параметр включен, импортируются группы пользователей, используемые в правах доступа прочих импортируемых сущностей.
5. Нажмите кнопку «Импортировать», чтобы запустить импорт.
–
–
6. Перед запуском импорта система проверяет на совпадения названия существующих сущностей с названиями сущностей из файла экспорта. При обнаружении одного и более совпадений открывается модальное окно «Импорт проекта» с соответствующим предупреждением и вариантами действий.
–
–
Существующие объекты | Импортируемый объект | Созданный объект |
---|---|---|
Название | Название | Название 1 |
Название Название 1 | Название | Название 2 |
Название 1 | Название 1 | Название 1 1 |
Название 1 Название 1 1 | Название 1 | Название 1 2 |
–
7. Восстановите данные в затронутых импортом датасетах. Перейдите в модуль Manager, раздел «Датасеты». Для каждого датасета выберите подходящий вариант из следующих.
Способ получения датасета | Предусловие на целевом стенде | Необходимые действия | Результат |
---|---|---|---|
SQL-запрос к источнику | Существует источник с таким же названием, как на стенде экспорта* | Нажмите для датасета кнопку действий и выберите вариант «Обновить» | Датасет заполнится данными** |
Не существует источника с таким же названием, как на стенде экспорта* |
| Датасет заполнится данными** | |
Загрузка файла в локальное хранилище | – |
| Датасет заполнится данными** |
Объединение из локального хранилища | – | Для каждого датасета, используемого в объединенном датасете:
| Датасет заполнится данными** |
Объединение прямым подключением к источнику | Существует источник с таким же названием, как на стенде экспорта* | – | Датасет заполнится данными автоматически |
Не существует источника с таким же названием, как на стенде экспорта* |
| Датасет заполнится данными автоматически |
* Когда источник с таким же названием существует, затрагиваемый импортом датасет автоматически связывается с ним, и название источника отображается для датасета в реестре, в колонке «Источник».
** Если набор или тип данных полученных колонок отличается, разрешите конфликты связей вручную.
Есть файл экспорта проекта – для примера используется файл экспорта, полученный в примере экспорта проекта.
На целевом стенде нет совпадений в названиях с импортируемыми сущностями.
На целевом стенде есть источник postgresql, название которого совпадает с названием источника, который используется датасетом.
На целевом стенде есть проект со слоем, названия которых совпадают с названиями проекта и слоя, на который настроена детализация по SVG-объекту.
На целевом стенде созданы:
* Ссылка детализации по SVG-объекту автоматически скорректирована в соответствии с найденным проектом, название которого совпадает с названием проекта, на который настроена детализация (см. предусловие).
Перейти в модуль Manager, раздел «Датасеты», где:
Перейти в модуль Manager, раздел «Группы», где в группу пользователей добавить пользователей.
Есть файл экспорта проекта – для примера используется файл экспорта, полученный в примере экспорта проекта.
На целевом стенде есть совпадения в названиях с импортируемыми сущностями: проектом, датасетом из источника postgresql, глобальными фильтрами, группой доступа.
На целевом стенде есть источник postgresql, название которого совпадает с названием источника, который используется датасетом.
На целевом стенде есть проект, название которого совпадает с названием проекта, на который настроена детализация по SVG-объекту.
На целевом стенде:
* Ссылка детализации по SVG-объекту автоматически скорректирована в соответствии с найденным проектом, название которого совпадает с названием проекта, на который настроена детализация (см. предусловие).
Перейти в модуль Manager, раздел «Датасеты», где:
Перейти в модуль Manager, раздел «Группы», где в группу пользователей добавить пользователей, если необходимо.