Новое решение для автоматизации Вашего бизнеса
+7 (499) 703-42-61
Москва, ул. Большая Почтовая, д.18, стр.6

Установка и настройка ПО Abonement

Установка серверной части

Установка серверной части

Установка серверной части

 

папка с дитрибутивом называется FullVersionVerXXX, где XXX номер версии. На данный момент актуальная версия 145.

1. Создайте папку C:\_UCS. Диск С: указан для примера, можно использовать любой.

2. Создайте папку _UCS\FITNESS скопируйте в неё папки LIB, Licence, skins из папки \fullVersionver…

3. Папку LIB (например, C:\_UCS\FITNESS\LIB) нужно добавить в системную переменную переменную PATH - см. пункт 7.

4. Создайте папку IBDATA в папке FITNESS и из \fullVersionver...\Empty скопируйте в неё fitness.fbk (backup пустой базы) и файл ibsh.errors.ru.

5. Из папки \fullVersionver…\Server\INI.SERVER скопируйте файл shelter.IB.ini в системный каталог (папка C:\Windows\), предварительно настроив его (может не быть прав на изменение файла в системной папке). Параметры настройки файла:

[General]
Messages = "C:\FITNESS\IBDATA\ibsh.errors.ru"       ;путь до файла ibsh.errors.ru
skins    = "C:\FITNESS\skins\skins.ini"             ;путь до файла skins.ini

Установка Firebird 2.5

!!!ВНИМАНИЕ!!! Для исключения возможности необоснованного роста базы данных и других неисправностей связанных с работой СУБД, необходимо использовать дистрибутив Firebird 2.5.3 из дистрибутива ПО "Абонемент" ( \fullVersionver...\FireBird_2_5\)

6. Скопируйте содержимое папки \fullVersionver...\FireBird_2_5 в C:\Program Files (x86)\FireBird\FireBird_2_5

7. Папку C:\Program Files (x86)\FireBird\FireBird_2_5\UDF\ добавить в системную переменную PATH. Для этого необходимо:

Зайти в свойства компьютера → Дополнительные параметры системы → Переменные среды → в списке переменных найти «Path» и к ее значению в начале дописать путь до папки (см. Рис. 1)

image-1634547824197.png

Рис. 1 - Добавление в переменную Path путей до папок

8. В файле C:\Program Files (x86)\FireBird\FireBird_2_5\Firebird.conf найти параметр RemoteServicePort и указать для него значение 3080

9. Установить службу с помощью bat-файла C:\Program Files (x86)\FireBird\FireBird_2_5\bin\install_classic.bat  (выполнять от имени администратора).

10. Проверить, запущена ли служба FireBird. Если нет — запустить её вручную через "Службы" Windows.

11. Добавить пользователя UCS, запустив bat-файл C:\Program Files (x86)\FireBird\FireBird_2_5\bin\addUserUCS.bat

12. Если на машине используется только одна версия Firebird, файл fbclient.dll нужно копировать, копию переименовать в gds32.dll и поместить в папку C:\Windows\System32\

Если версий Firebird несколько, необходимо разместить файл gds32.dll, взятый из необходимой версии Firebird, под .exe-файлами тех программ, которые в своей работе обращаются к БД (например, в папке Abonementmanager данный файл уже имеется изначально).

13. В первый раз программы нужно запустить от имени администратора, иначе необходимо вручную зарегистрировать midas.dll из папки \LIB\ и frDlgDef.dll в папке \Reports\dll\ с помощью следующей команды (прописать в консоли windows, запущенной от имени администратора):

regsvr32 C:\_UCS\FITNESS\LIB\midas.dll
regsvr32 С:\_UCS\FITNESS\REPORTS\DLL\frDlgDef.dll 

 

Установка серверной части

Приложение 1 - Настройка bat-файлов.

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

 1 _backup_2_5.bat - создание копии базы (.fdb -> .fbk)

set EXE_gbak="C:\Program Files (x86)\Firebird\FireBird_2_5\bin\gbak.exe"  ;путь до файла gbak.exe в папке, куда устанавливался FireBird
set EXE_rar="D:\_2_Base\_FB25\Rar.exe"                                    ;путь до файла запуска архиватора winRar

set FDB="127.0.0.1/3080:D:\_2_Base\_FB25\fitness.FDB"                     ;путь до рабочей базы
set FBK="D:\_2_Base\_FB25\autobackup\fitness.FBK"                         ;путь до файла, в который будет делаться бэкап (все папки должны быть уже созданы)
set RAR="D:\_2_Base\_FB25\autobackup\FITNESS.RAR"                         ;путь до файла с архивом бэкапа (все папки должны быть уже созданы)

if exist %FBK% del %FBK%                                                  ;удаляем предыдущий бэкап, если он имеется
%EXE_gbak%  -user "ucs" -password "ucs"   -b  %FDB% %FBK%                 ;делаем бэкап
%EXE_rar%   a -ep -ag %RAR%  %FBK%                                        ;создаём архив

 2 _restore_2_5.bat - Восстановление базы из бэкапа (.fbk -> .fdb)

Обратите внимание, что при использовании файла _restore.bat он не перезаписывает конечный файл с БД, а дополняет его, поэтому перед использованием запуском данного bat-файла нужно переименовать, переместить (рекомендуется внутри папки IBDATA создать папку OLD, куда и помещать предыдущие восстановленные из бэкапа базы), либо удалить уже имеющуюся БД с таким именем. 

set EXE_gbak="C:\Program Files (x86)\Firebird\FireBird_2_5\bin\gbak.exe"
set EXE_rar="D:\_2_Base\_FB25\Rar.exe"

set FDB="127.0.0.1/3080:D:\_2_Base\_FB25\FITNESS_TEST.FDB"
set FBK="D:\_2_Base\_FB25\autobackup\FITNESS.FBK"

set resout=resultrestore.txt
set charset=win1251

if exist %resout% del %resout%
%EXE_gbak% -c -k -p 8192 %FBK% %FDB% -user ucs -password ucs -v -y %resout%

3 _backup_2_5_EX.bat - создание архива базы в случае её повреждения.

Стоит отдельно обозначить данный вариант создания архива БД, так как он будет работать в том случае, если невозможно сделать бекап поврежденной БД обычным методом (_backup.bat)

set EXE_Gbak="C:\Program Files (x86)\Firebird\FireBird_2_5\bin\gbak.exe"
set EXE_Rar="c:\Program Files\WinRAR\Rar.exe"

set server=127.0.0.1/3080
set FDB_Dir=D:\FITNESS\_IBDATA
set FDB_Name=FITNESS

set FBK_Dir=%FDB_Dir%\autobackup
set FDB_Path=%FDB_Dir%\%FDB_Name%.FDB
set FDB="%server%:%FDB_Path%"
set FBK="%FBK_Dir%\%FDB_Name%.FBK"
set FBK_RAR="%FBK_Dir%\%FDB_Name%.RAR"
set FDB_ER="%FBK_Dir%\%FDB_Name%_ERROR.FDB"
set FDB_ER_RAR="%FBK_Dir%\%FDB_Name%_ERROR.RAR"

if exist %FBK% del %FBK%
%EXE_Gbak% -user "ucs" -password "ucs"  -b  %FDB% %FBK%
%EXE_Rar% a -ep -ag %FBK_RAR%  %FBK%

if exist %FDB_ER% del %FDB_ER% 
if not exist %FBK%  copy %FDB_Path% %FDB_ER% 
if exist %FDB_ER%  %EXE_Rar% a -ep -ag %FDB_ER_RAR% %FDB_ER%

4  restore_1_5_to_2_5.bat - используется для миграции с FireBird 1.5 на Firebird B 2.5

set backup=" C:\fitness\IBDATA\Empty\fitness.FBK"	             
set dbname="127.0.0.1/3080:C:\fitness\ IBDATA \fitness.FDB" 
set resout=resultrestore.txt
if exist %resout% del %resout%
"C:\Program Files\Firebird\FireBird_2_5\bin\gbak.exe" -c -k -p 8192 %backup% %dbname% -FIX_FSS_DATA win1251 -FIX_FSS_METADATA win1251 -user ucs -password ucs -v -y %resout%

;set backup – локальный путь к файлу fitness.FBK – backup базы;
;set dbname – путь до новой базы, начиная с IP-адреса (имени) сервера, если используем Firebird 2.5 не забываем указывать порт .

 

 

Установка серверной части

Приложение 2 - Выполнение SQL-скриптов.

IBExpert. Регистрация базы.

    Рассмотрим выполнение скриптов в программе IBExpert. Вход в  программу осуществляется путем запуска файла \fullVersionver…\OS\IBEXPERT\IBExpert.exe - следует скопировать его в папку "_UCS\UTILS\" для будущего использования клиентом.

1. Зарегистрировать базу (если она ещё не зарегистрирована). Для этого необходимо: нажать кнопку  Register Database (в разделе Database), ввести необходимые параметры подключения (см. рис.1) (Remote - IP-адрес машины, 127.0.0.1 - для локальной машины, используемый порт - 3080), выбрать  кодировку Win1251, установить логин UCS и пароль ucs для базы, выбрать версию Firebird (для всех актуальных установок используется версия 2.5). Указать путь до файла gds32.dll, который по умолчанию находится в папке с установленной версией Firebird в каталоге bin. Рекомендуется для Alias'а (отображаемого названия) использовать WORK - для рабочей базы и TEST - для тестовой.

    

(Рис.1 - Заполненные регистрационные данные базы)

2. Создать подключение к ещё одной базе можно простым методом - Клонировать Регистрационные Данные (Clone Registration Info) - нажав правой кнопкой на БД в списке Database Explorer (см. рис. 2 - пункт 1). Подключиться к базе данных, дважды кликнув по ней в списке либо выбрав соответствующий пункт из выпадающего меню (см. рис. 2 - пункт 2).

(Рис.2 - Клонирование данных базы и Подключение)

Выполнение скрипта.

3. Зайти в меню  Tools\Script Executive (Ctrl+F12), открыть  sql файл, содержащий нужный скрипт, установить галочку (checkbox) "Use current connect" (данная функция будет активна, если выполнено хотя бы одно подключение).

При выполнении скриптов, базу регистрировать не обязательно - если подключение не выполнено, можно указать путь до базы в самом скрипте, например так:

CONNECT '127.0.0.1/3080:c:\FITNESS\IBDATA\FITNESS.FDB' USER 'UCS' PASSWORD 'ucs';

4. Нажать кнопку  Run Script (F9). Скрипт должен выполнится без ошибок. Выполните его на рабочей (пустой) и на тестовой базе.

5. При обновлении базы данных программы abonementmanager, скрипты выполняются в возрастающем порядке (например, при переходе со 117 на 119 версию - сперва выполнить скрипт 118, а потом 119). Перед любыми обновлениями необходимо всё проверить на копии базы. Копия базы делается только через bat-файлы backup/restore.

6. После обновления, необходимо сделать backup-restore базы. 

 

Пример выполнения скрипта перевода базы на английский язык

*по аналогии, выполняется любой другой скрипт

 
Рис.3. Заходим в программу IBExpert (FullVersionVer129/OS/IBEXPERT/ibexpert.exe), нажимаем на кнопку "Register database".
 
 
Рис.4. Прописываем путь к БД "Абонемент" (см. Регистрация базы).
 

Рис.5. Нажимаем кнопку "Connect ot Database" (1) затем нажимаем кнопку"Script Executive" (2).

Рис.6. В открывшемся окне ставим галку "Use current connect", далее нажимаем "Script"->"Run from file..."  и в открывшемся окне выбираем наш скрипт (например: Translate_DB_to_English.sql) и нажимаем кнопку "Открыть".

Рис.7. Выполнится скрипт, после чего появится информационное сообщение о его успешном выполнении.

После выполнения перечисленных выше действий - закрываем IBExpert.

Установка серверной части

Приложение 3 - Управление лицензиями.

_____ описание в разработке____

Работа с ключом защиты ПО Абонемент.

После того, как установлены драйвера для ключа, и ключ вставлен в ПК, запустите файл licence.exe из Абонемент Fullversion\__SERVER\Licence\ или скачайте его по этой ссылке.
Если всё в порядке, после нажатия кнопки «Получить код сессии» в поле «Код сессии» появится набор символов, по 4, разделенных «-». (см. Рис. 3)
Если код сессии не появился, перед вами пустой не форматированный ключ. Нажмите кнопку Форматирование ключа. Внимание! Убедитесь что в данном компьютере установлен только этот ключ.
Для добавления лицензии: запустить licence.exe, получить "код сессии", сообщить его в московский офис КБЦП Спектр (вместе с информацией о требуемой лицензии) на почтовый ящик licenсe@shelter.ru и zakaz@game-keeper.com
В московском офисе  сформируют "код лицензии" - его необходимо ввести в поле «Код для записи» (см. Рис.3).
 
Внимание! Глобусом, расположенным после ID ключа, не пользоваться! 
 

image-1673345820045.png

 
Рис.3 - Внешний вид окна Licence.exe
Установка серверной части

Приложение 4 - Отслеживание автоматического запуска приложений.

    Описание утилиты StarterA1.exe

Файлы программы лежат в папке \FullVersionVer...\UTILS

Данная программа отслеживает, запущено ли приложение, и запускает его при необходимости. Имеется возможность использовать следующие параметры запуска:
  •   Инсталлировать: StarterA1.exe /install - для инсталляции службы, создать ярлык и прописать в нём после пути к файлу "-install"
  •   Деинсталлировать: StarterA1.exe /uninstall
  •   Запустить службу: StarterA1.exe /start
  •   Остановить службу: StarterA1.exe /stop
Отслеживаются приложения, которые настраиваются в ini-файле, в секции [tasks.XXX] , где XXX - номер приложения от 0 до 100.
 [tasks.XXX]
   exename = C:\Projects\GKHC\GKHOSTCONNECT2\gkhostconnect.exe       ;Путь до исполняемого файла. Всегда следует использовать полный (абсолютный) путь. Именно этот файл служба ищет в процессах
   enabled=1                                                         ;0 - не отслеживать этот exe, 1 - отслеживать. По умолчанию enabled=0
   parameters=                                                       ;Параметры командной строки для запуска exe
   CommandLine=C:\Projects\GKHC\GKHOSTCONNECT2\gkhostconnect.exe dodo
   

Порядок работы службы

  1. Служба каждую секунду проверяет секции [tasks.XXX]
  2. Анализирует параметр enabled. Если enabled=1, то см.п.3
  3. Служба ищет в процессах процесс exename
  4. Если НЕ находит, то анализирует параметры CommandLine, exename и parameters.
  5. Если CommandLine НЕ пустой, то служба пытается запустить его. Если CommandLine пустой, то служба создаёт строку  exename + parameters и пытается запустить её.
    
Параметр DelayAfterStart в секции [tasks.XXX] - отвечает за задержку после успешного запуска (в миллисекундах). По умолчанию равен нулю.
[tasks.XXX]
  DelayAfterStart=3000

Примеры использования

Рекомендуется создавать отдельную копию утилиты для контроля запуска каждой необходимой программы. Для удобства, внутри ini-файла следует изменять имя и описание Службы. Например:

[Main]
DisplayName = UCS Служба StarterA1           ;Имя сервиса - отображается в графе "Имя" в "Службах"
ServiceName = StarterA1_1                    ;Внутреннее имя сервиса (одно слово. Только латинские символы и цифры. Начинается с буквы)
Description = UCS StarterA1 - ServerT1       ;Описание сервиса - отображается в графе "описание" в "службах"

Неполный список утилит, которым требуется контроль автоматического запуска:

  • ServerT1
  • TcpCardReader
  • gkhostconnect
Установка серверной части

Приложение 5 - Настройка автоматического резервного копирования.

 

_____under construction ____

Настройка автоматического резервного копирования.

Необходимость настройки автоматического резервного копирования продиктована множеством причин и является обязательным элементом работы с БД. При установке ПО, необходимо заключить с клиентом соглашение  о резервном копировании БД, которое оставляет дальнейшую ответственность за резервное копирование на заказчике (приложено к данной статье).

Чтобы настроить автоматический backup БД, необходимо создать Простую Задачу в Планировщике Задач Windows (Task Scheduler).

Триггер: ежедневно. Повторять каждый день или чаще/реже - по договорённости с заказчиком. Обычно бэкап делается в ночное время (никто не работает с базой, в ней сохранены все изменения за день). Установите галочку "

Действие: запустить программу. Указываем путь до bat-файла _backup.bat, который находится в директории \FITNESS\IBDATA\ подробнее смПриложение 1. Настройка bat-файлов.

После сохранения, зайдите в свойста задачи. Поставьте галочки "Выполнить с наивысшими правами", "Немедленно запускать задачу, если пропущен плановый запуск". Попробуйте выполнить эту задачу из планировщика. Резервная копия должна создаться без ошибок. Если этого всё-таки не происходит, перепроверьте ещё раз все пути, особенное внимание обратите на относительные пути (если имеются) - можно заменить их на абсолютные.

Рекомендуемой опцией резервного копирования является настройка копирования на внешний диск / диск удаленной машины / облачное хранилище данных (например Yandex Disk). Для этого необходимо установить Яндекс (или Google) Диск на локальную машину, настроить папку синхронизации и установить копирование архива бэкапа базы в эту папку, таким образом она будет синхронизироваться с облачным хранилищем, значительно уменьшая вероятность потери данных, необходимых для восстановления БД.

 

Вложение Размер
ucs_soglashenie_storon_o_rezervnom_kopirovanii.doc 628.5 КБ

Установка клиентской части

Установка клиентской части программы Abonement Manager

Действия производятся на компьютере, который будет являться рабочим местом. Обратите внимание, что количество рабочих мест ограничено количеством купленных лицензий. Машина, являющаяся сервером, одновременно может являться рабочим местом.
 
1. Создайте папку FITNESS и скопируйте в неё папки LIB, EXE , Report из  папки \fullVersionver…
2. В системную переменную PATH  добавьте путь до папки  LIB (например, C:\UCS\FITNESS\LIB). (см. Рис. 1)
3. Пропишите в файле abonementmanager.ini, находящийся в папке \FITNESS\EXE путь до используемой базы данных:
[database]
dbname = сервер/3080:C:\UCS\FITNESS\IBDATA\fitness.FDB                  
;где сервер – это имя или ip адрес компьютера, где установлена серверная часть, например 127.0.0.1/3080:C:\FITNESS\IBDATA\FITNESS.FDB
4. Укажите в файле  abonementmanager.ini путь до пк, где запущен сервер блокировок (ServerT1.exe) в секции [LOCK.SERVER]. Проверьте, что номер порта совпадает с указанным в файле LockServer.ini
[LOCK.SERVER]
  TCPHost = 127.0.0.1 
  TCPPort = 1111
5. Если используется считыватель карт (TcpCardReader), проверьте, что в файле abonementmanager.ini указано значение "1" в строке UseTCPCardReader=1.
В секции [HARDWARE.READER] Параметр "COMPORT" поставьте равным несуществующему порту, например, "99".
 
6.  В abonementmanager.ini в секции [Defaults] есть возможность настроить WEB-камеру (например, для получения изображений клиентов и сохранения их в карточке клиента):
 
usecamera=0 - использовать WEB-камеру. По умолчанию 0 - не использовать.
usecamera=1 - при открытии карточки клиента будет видно на экране изображение с камеры. Кнопка "Фотографировать" в карточке клиента сделает снимок с камеры и сохранит его как фотографию клиента.
DefaultCameraName=Eye 312  - Название WEB-камеры (из списка устройств Windows).
 
7. Проверьте наличие файла gds32.dll в папке \FITNESS\EXE (или С:\UCS\FITNESS\LIB\). Если файл отсутствует, скопируйте fbClient.dll из папки \fullVersionver…\FireBird_2_5\bin в одну из этих папок и переименуйте новый файл в gds32.dll.
 

8. В первый раз программы нужно запустить от имени администратора, иначе необходимо вручную зарегистрировать midas.dll из папки \LIB\ и frDlgDef.dll в папке \Reports\dll\ с помощью следующей команды (прописать в консоли windows, запущенной от имени администратора):

9. Создайте на рабочем столе ярлыки для Abonementmanager.exe и FReports.exe.

 

Перезагрузка сервера блокировок Abonement

Инструкция по проведению процедуры сброса сервера блокировок:

Сервер блокировок работает как служба.

  1. Для доступа к службам на сервере необходимо зайти в диспетчер задач (правая кнопка мыши на панели задач и нажать на Диспетчер задач):

image-1626781480626.png

  1. В открывшемся окне выбрать вкладку Службы (пункт 2 на рисунке ниже).
  2. Найти службу с именем: UCSServerT1Service
  3. Нажать правой кнопкой мыши на самой службе (пункт 3 на рисунке ниже).

   В выпадающем списке выбрать "Остановить",

  1. Нажать правой кнопкой мыши на самой службе (пункт 3 на рисунке ниже)

   В выпадающем списке выбрать "Запустить" (если служба не запуститься - то попробовать повторно Запустить).

image-1626781539618.png

Все подключения к базе обновятся принудительно.

Интеграции Abonement

Интеграции Abonement

Интеграция iiko и Абонемент / Shelter

Описание интеграции iiko и Абонемент / Shelter.

Структурная схема связки выглядит следующим образом: