# Обновление программного комплекса СТЕК с web-интерфейсом.

# Обновление фронтенда

Для обновления фронтенда необходимо удалить все папки в каталоге stack-front и заменить на папки и файлы из такого же католога новой сборки, полученной у разработчика (самостоятельная сборка фронта в данном руководстве не рассмартривается).

image

Важно!

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

# Обновление бэкенда

Перед установкой любого обновления рекомендуется сделать бэкап базы данных средствами SQL сервера, а также резервное копирование файлов сборки в текущей конфигурации. Резрвное копирование сборки можно осуществить любым удобным для Вас способом, например, скопировать все содержимое папки Stack в созданный каталог Stack.back, или просто добавить катлог, в котором будут производиться изменения, в архив.

image

Ниже рассмотрим два варианта обновления: частичное обновление (когда в сборку добавляются доработки (заплатки) выполненые по заказу клиента или необходимый патч) и обновление с изменением версии программного комплекса.

# Обновление патчем

1. Остановить программы автозапуска (web-приложений) в диспетчере, для этого перейти по пути ...\Stack\Stack.Client и запустить файл DispatcherSetup.cmd, в окне ввода пароля ввести stack, в левой части открывшегося окна выбрать необходимые приложения и через контекстное меню, открываемое по нажатию правой кнопки мыши, остановить web-приложения и программы автозапуска:

image

2. Скопировать полученный у разработчика архив на диск сервера приложений. Разархивировать и скопировать с заменой файлы из распакованного архива в каталог сборки СТЕК с соблюдением иерархии (структуры) папок.

image

3. После обновления файлов и каталогов рекомендуется запустить десктопную версию программы (создаем, если не была создана, копию каталога ...Stack\Stack.Srv\Bin\0 в каталог ...Stack\Stack.Srv\Bin\0_0) и из каталога с копией запускаем файл stack.exe

При первом запуске после обновления программа предложит конверацию базы данных (в случае если этого не произошло, а при обновлении изменялись файлы словарей с расширением .xdic, необходимо самостоятельно сконвертировать БД из меню АРМ Администратора комплекса в десктопной версии программы (База данных - Конвертация)) и пройти по всем шагам конвертации.

image

Важно!

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

Возможен вариант конвертации базы через меню web-интерфейса, тогда сначала перезапускаем приложения в диспетчере (см. п. 4), а затем переходим в браузере на вкладку Администрирование, для чего необходимо кликнуть по имени пользователя в верхнем правом углу, а затем выбрать необходимый пункт:

image

Перейдя на вкладку "Администрирование" выбрать меню Операции:

image

На вкладке "Операции" выбрать Обновление версии:

image

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

4. После конвертации перезапустить web-приложения (программы автозапуска), для чего повторить действия из пункта 1, выбрав в контекстном меню Перезапустить

5. Перейти в браузере в интерфейс программы и проверить корректность работы после обновления.

# Обновление версии

1. Остановить программы автозапуска (web-приложений) в диспетчере, для этого перейти по пути ...\Stack\Stack.Client и запустить файл DispatcherSetup.cmd, в окне ввода пароля ввести stack, в левой части открывшегося окна выбрать необходимые приложения и через контекстное меню, открываемое по нажатию правой кнопки мыши, остановить web-приложения и программы автозапуска:

image

2. Создать резервную копию базы данных средствами SQL сервера;

3. Скопировать содержимое папки ...\Stack в папку ...\Stack_OLD_ yyyymmdd – на случай восстановления текущего состояния (yyyymmdd – дата создания резервной копии);

4. Остановить службу диспетчера, для этого нажать сочетание клавишь Win+R и ввести в открывшемся окне services.msc и нажать "ОК" для запуска оснастки управления службами, найти службу DispatcherService, выделить правой кнопкой мыши и выбрать в открывшемся контекстном меню Остановить;

image

5. Удалить из папки Stack все каталоги и файлы (если ранее был обновлен фронтенд по этой инструкци, то папку stack-front не удалять);

6. Скопировать содержимое архива с новой сборкой, полученного у разработчика, в папку Stack;

7. Скопировать из каталога ...Stack_OLD_ yyyymmdd\Stack.Srv\Bin\0 файл stack.ini в каталог ...Stack\Stack.Srv\Bin\0, если в новой сборке присутствуют заплатки, которых не было в старой версии, необходимо прописать пути к ним в файле stack.ini в разделе [AppPath], убедиться в правильности всех указанных путей;

image

8. Создайте копию папки ..\Stack\Stack.srv\Bin\0, назвав её, например, ..\Stack\Stack.srv\Bin\0_0;

9. Из созданной папки ...\Stack\Stack.srv\Bin\0_0, запустите файл stack.exe, войдите в программу под пользователем SA, на вопрос "Версия программы изменилась, необходима конвертация БД, продолжить?" ответьте Да и пройдите по всем шагам конвертации;

Важно!

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

10. Запустите службу диспетчера, остановленную в пункте 4;

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