Установить существующий пакет из SVN в режиме разработки в файловой системе

Средний

Последовательность установки пакета из хранилища SVN в режиме разработки в файловой системе 

  1. Установить пакет в файловую систему.
  2. Установить пакет в приложение.
  3. Выполнить генерацию исходных кодов.
  4. Скомпилировать изменения.
  5. Обновить структуру базы данных.
  6. При необходимости установить SQL-сценарии и привязанные данные.

Важно. Чтобы необходимые изменения применились после установки пакета автоматически, нужно включить механизмы автоматического применения изменений. Для этого необходимо в файле ..\Terrasoft.WebApp\Web.config установить значение true для следующих ключей элемента appSettings.

..\Terrasoft.WebApp\Web.config
<add key="AutoUpdateOnCommit" value="true" />
<add key="AutoUpdateDBStructure" value="true" />
<add key="AutoInstallSqlScript" value="true" />
<add key="AutoInstallPackageData" value="true" />

Ключ AutoUpdateOnCommit отвечает за автоматическое обновление пакетов из SVN перед их заливкой. Если для этого ключа установлено значение false, то перед заливкой в SVN приложение предупредит пользователя о необходимости обновления в случае, если схемы пакета были изменены. Ключи AutoUpdateDBStructure, AutoInstallSqlScript, AutoInstallPackageData отвечают соответственно за автоматическое обновление структуры базы данных, автоматическую установку SQL-сценариев и установку привязанных данных.

После включения режима автоматического применения изменений выполнять шаги 3—6 нет необходимости. Включить этот режим необходимо до установки пакета.

Важно. Если нужно взаимодействовать с хранилищем SVN как из раздела Конфигурация, так и из файловой системы, то необходимо:

  1. Установить пакет из хранилища в разделе Конфигурация.
  2. Выгрузить пакет в файловую систему по действию Выгрузить пакеты в файловую систему (Download packages to file system).

Далее следует повторить шаги 3—6 приведенной выше последовательности установки пакета.

Пример. В приложение Creatio в режиме разработки в файловой системе установить пакет из хранилища SVN.

URL пакета в хранилище SVN
http://svn-server:8050/SDKPackages/sdkCreateDetailWithEditableGrid/branches/7.8.0

На заметку. В пакете, рассматриваемом в данном примере, содержится функциональность детали с редактируемым реестром.

Алгоритм реализации примера 

1. Установить пакет в файловую систему 

В каталоге приложения ...\Terrasoft.WebApp\Terrasoft.Configuration\Pkg, открытом в Проводнике, необходимо выполнить действие SVN Checkout.

scr_checkout.png

На заметку. Для работы с Subversion (SVN) в файловой системе рекомендуется использовать клиентское приложение TortoiseSVN версии не ниже 1.8. Оно реализовано как расширение оболочки Windows и встраивается в контекстное меню Проводника. Подробная документация по использованию TortoiseSVN доступна здесь.

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

scr_checkout_options.png

Важно. Название каталога для выгрузки содержимого пакета должно совпадать с названием пакета.

После успешной выгрузки в каталоге ..\Terrasoft.WebApp\Terrasoft.Configuration\Pkg будет создана рабочая копия пакета.

scr_checkout_result.png

2. Установить пакет в приложение 

Для установки пакета из файловой системы в приложение в разделе Конфигурация (Configuration) необходимо выполнить действие Обновить пакеты из файловой системы (Update packages from file system).

scr_update_packages.png

В результате пакет будет добавлен в приложение.

Информационное окно статуса загрузки пакета в приложение
scr_update_packages_result.png
Пакет на вкладке Пакеты (Packages)
scr_packages.png

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

3. Выполнить генерацию исходных кодов 

Для этого в разделе Конфигурация (Configuration) необходимо выполнить действие Сгенерировать для требующих генерации (Generate where it is needed).

4. Скомпилировать изменения 

Чтобы скомпилировать изменения, необходимо выполнить действие Компилировать измененное (Compile modified items).

На заметку. Необходимость действий обновления структуры базы данных, установки SQL-скриптов и привязанных данных отображается в колонках Требуется обновление БД и Требует установки в БД дизайнеров. В случае возникновения ошибок после этих действий, текст последней ошибки можно увидеть в колонке Текст последней ошибки.

Не все эти колонки отображаются по умолчанию в реестре вкладок Схемы, SQL сценарии и Данные раздела Конфигурация. При необходимости их можно добавить при помощи команды контекстного меню Настроить колонки.

5. Обновить структуру базы данных 

После компиляции изменений нужно обновить структуру базы данных действием Обновить для требующих обновления (Update where it is needed).

6. Установить SQL-сценарии и привязанные данные (при необходимости) 

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

После успешной установки в приложении станет доступной реализованная в пакете функциональность. В приведенном примере это функциональность детали с редактируемым реестром.

scr_result.png

На заметку. Для отображения примененных изменений может понадобиться обновление страницы с очисткой кэша.