Low-code дизайнер > Решение / Обновить решение

Обновить решение

Функция используется для импорта изменений в уже установленное решение. Если вы редактировали компоненты решения, обновить его можно двумя способами:

  • установить полностью обновлённую версию, не сохраняя ваши настройки;
  • выбрать опцию мягкого обновления. Тогда компоненты, которые были изменены, не обновятся. Компоненты, настройки которых вы не меняли — обновятся.

Чтобы выполнить обновление:

  1. Перейдите к началу этого процесса одним из двух способов:
    • на странице Администрирование > Управление решениями в карточке решения нажмите значок три точки и выберите Обновить;
    • на любой странице системы в левом меню нажмите settings_icon и в открывшемся окне перейдите на вкладку Решения. Затем справа от названия решения нажмите Управление и выберите опцию Обновить;

solution_6

  1. Выберите файл формата .e365 с локального компьютера или из файлов системы и нажмите Далее.

Запустится проверка компонентов версии решения из загруженного файла. Если будут обнаружены ошибки, например, найдены одинаковые страницы или в версию добавлены зависимости от другого решения, вы не сможете закончить обновление.

Если в новой версии решения есть приложения, виджеты или бизнес-процессы, поля из которых ссылаются на приложения из лицензируемых системных решений, вы увидите уведомление об этом. Вы можете завершить обновление решения, однако для корректной работы потребуется активировать лицензию используемого системного решения.

  1. При успешной проверке решения нажмите кнопку Далее.

update-solution-3

  1. Затем загруженная версия сравнивается с существующим в системе решением. Если вы вносили изменения в компоненты решения, например, меняли форму приложения или изменяли бизнес-процесс, отобразится список конфликтов. Выберите дальнейшее действие:
    • подтвердите обновление решения. Тогда новая версия решения полностью заменит существующую. Ваши изменения не сохранятся;
    • выполните мягкое обновление;
    • отмените обновление.

update-solution-4

  1. Если на целевой площадке редактировались права доступа к разделу, приложению или странице в составе решения, вы увидите список несоответствий с правами, настроенными в загружаемой версии. Выберите, какие настройки прав вы хотите обновить, т. е. применить права, заданные в загружаемой версии решения. Вы можете все права оставить прежними, как они заданы в существующей версии.

update-solution-9

При обновлении могут возникнуть «ложные» конфликты настроек доступа

Мягкое обновление решения

Вы можете использовать этот вариант обновления, если возникли конфликты между установленной и новой версией решения. Опция позволяет сохранить изменения, которые вы внесли в такие компоненты, как бизнес-процессы, приложения, их формы, страницы и виджеты, модули. В процессе мягкого обновления:

  • компоненты с конфликтами не обновятся, ваши изменения сохранятся;
  • другие составляющие решения обновятся, если их нет в списке конфликтов и они не содержат ссылки на компоненты с конфликтами;
  • новые составляющие решения добавятся, если они не содержат ссылки на компоненты с конфликтами.

Рассмотрим примеры.

Кейс 1. Конфликт в компоненте решения

Вы добавили свойство А в контекст приложения, которое входит в состав решения. В новой версии решения:

  • в контекст этого приложения добавлено свойство В;
  • на форму создания приложения вынесен виджет С.

Результат мягкого обновления:

  1. Возникнет конфликт в приложении, оно не обновится. Свойство В не добавится в его контекст, свойство А сохранится.
  2. Форма создания приложения обновится, в ней не будет конфликта. Виджет С добавится.

update-solution-5

Кейс 2. Ссылка на компонент с конфликтом

Исходное решение содержит:

  • приложение, в контекст которого вы добавили свойство А;
  • бизнес-процесс, в котором есть переменная, которая ссылается на это приложение.

В новой версии решения в контекст приложения добавлено свойство В, а на схему процесса добавлена задача.

Результат мягкого обновления:

  1. Возникнет конфликт в приложении, оно не обновится. Свойство В не добавится в его контекст, свойство А сохранится.
  2. Бизнес-процесс не обновится, т. к. он ссылается на приложение, в котором возник конфликт.

update-solution-6

Кейс 3. Новый компонент решения содержит ссылку на компонент с конфликтом

Вы добавили свойство А в контекст приложения, которое входит в состав решения.

В новой версии решения:

  • в контекст приложения добавлено свойство В;
  • добавлен новый процесс, который ссылается на это приложение.

Результат мягкого обновления:

  1. Возникнет конфликт в приложении, оно не обновится. Свойство В не добавится в его контекст, свойство А сохранится.
  2. Новый бизнес-процесс не добавится, т. к. он ссылается на приложение с конфликтом.

update-solution-7

Мягкое обновление заблокированного раздела

Если решение содержит заблокированный раздел, мягкое обновление игнорирует зависимости между этим разделом и разблокированным разделом, в котором найдены конфликты. В этом случае компоненты заблокированного раздела (приложения, процессы, виджеты) обновятся.

Рассмотрим особенности такого обновления. Компоненты заблокированного раздела:

  • обновятся, если они ссылаются на компоненты разблокированного раздела, в которых найдены конфликты;
  • обновятся, если на них ссылаются компоненты разблокированного раздела, в которых найдены конфликты;
  • НЕ обновятся, если в них самих обнаружены конфликты;
  • НЕ обновятся, если есть зависимости между ними и компонентами другого заблокированного раздела, в которых найдены конфликты.

Разберём кейс на примере решения КЭДО, которое содержит заблокированный раздел КЭДО и доступный для внесения изменений раздел Настройки КЭДО:

  1. В установленной версии решения на уровне раздела Настройки КЭДО добавим задачу в процесс, который ссылается на приложение заблокированного раздела КЭДО.
  2. Предположим, что в новой версии решения:
  • на уровне раздела КЭДО в контекст приложения, которое связано с изменённым процессом, добавлено свойство А;
  • на уровне раздела Настройки КЭДО в контекст процесса, который мы изменили, добавлено свойство В.
  1. Запустим обновление решения.
  2. На этапе его проверки отобразятся конфликты в процессе, который изменён на уровне раздела Настройки КЭДО. В этом конфликте мы увидим зависимости с приложением в заблокированном разделе КЭДО.
  3. Применим мягкое обновление решения и получим следующий результат:
  • приложение на уровне заблокированного раздела КЭДО обновится, свойство А добавится в контекст приложения. Найденные в конфликте зависимости будут проигнорированы;
  • процесс на уровне разблокированного раздела Настройки КЭДО не обновится. Задача в нём сохранится, свойство В не добавится в контекст процесса.

update-solution-8