Глава 3. Настройка СБиС++ для многопользовательской работы
TOC \o "2-3" \h \z Общие вопросы установки и запуска программы
Шаг 1. Установка Pervasive.SQL на сервере.
Шаг 2. Установка СБиС++ на сервере
Шаг 3. Установка клиента СУБД Pervasive SQL
Шаг 4. Установка СБиС++ на клиентском месте
Шаг 5. Настройка доступа к файлу и серверу лицензий
Приложение.Синхронизация файлов
Функциональные возможности утилиты
Типы запуска утилиты синхронизации
Общие вопросы установки и запуска программы
Установка многопользовательской версии «СБиС++ Электронная отчетность» практически повторяет все шаги установки любой программы СБиС++.
Ниже мы приведем основные термины для понимания процесса установки сетевой версии «СБиС++».
Система управления базами данных (СУБД) Pervasive.SQL - программный продукт для организации транзакционных баз данных. Позволяет управлять, объединять, анализировать и защищать секретные данные. СУБД Pervasive.SQL необходима для реализации сетевой работы СБиС++.
СБиС++ на сервере – содержит общий для всех пользователей каталог базы данных и эталонный каталог программы, с которым с помощью файла fsyncro.exe при каждом запуске сравнивается программа на клиентском месте.
СБиС++ на клиентском месте – устанавливается на каждое клиентское место и при работе обращается к базе данных на сервере.
Взаимодействие этих элементов можно отразить в виде следующей схемы:
Опишем основные шаги и подробнее рассмотрим сетевые настройки программы, которые задаются в файле sbis.ini.
Шаг 1. Установка Pervasive.SQL на сервере.
Для работы с многопользовательской версией СБИС++ необходимо сначала на сервере установить систему управления базами данных Pervasive.SQL согласно инструкции (Руководство по администрированию, глава «Работа с Pervasive.SQL»).
Шаг 2. Установка СБиС++ на сервере
1. Установите с диска СБиС++ на сервер. Для этого используйте специальные дистрибутивы. Для СБиС++ Электронная отчетность это будет sbis-setup-ESIGN-NET-INST.exe. Дистрибутивы для установки других сетевых продуктов СБиС++ можно скачать с сайта http://sbis.ru/.
2. Установка многопользовательской версии устанавливается по аналогии с однопользовательской. По умолчанию предлагается установить программу в каталог "sbis".
3. Откройте общий доступ на чтение к каталогу «СБиС++ клиент» на сервере. К каталогу базы данных (db) откройте доступ на чтение и запись.
Советуем не менять название каталога. Если вы все же решили установить СБиС++ в другой каталог, то обратите внимание на то, что каталог лучше называть латинскими буквами, в силу того, что некоторые версии Pervasive.SQL (например, Pervasive.SQL v9) не воспринимают русские буквы. Также не рекомендуется допускать пробелы в названии каталога с программой.
Шаг 3. Формат файла sbis.ini
После того, как была установлена программа на сервере, необходимо проверить настройки параметров в файле sbis.ini, отвечающие за сетевой режим работы. Файл с настройками должен выглядеть примерно следующим образом:
[Базовая конфигурация]
БазаДанных=s:\sbis\DB
Модули=Модули
СетевойРежим=ДА
РазделяемыеМодули=ДА
РазделяемыеНастройки=ДА
ПоУмолчанию=ДА
Настройки=S:\sbis\cfg\%COMPUTERNAME%
Джинн=jinnee\jinnee.exe
Особенно следует обратить внимание на параметры: «Сетевой режим», «РазделяемыеМодули» и «РазделяемыеНастройки», которые должны принимать значения «Да». Если при настройке СетевойРежим=Да, установить РазделяемыеМодули=Нет, доступ к ресурсам останется монопольным. При этом ресурсы будут доступны только для пользователя, который первым запустил СБиС++ и данную конфигурацию. Для остальных пользователей доступ к ресурсам из СБиС++ будет закрыт.
Подробное описание параметров приводится в главе «Структура комплекса» данного руководства.
Шаг 4. Установка клиента СУБД Pervasive SQL
1. Установите и настройте клиента Pervasive SQL. Процедуру подключения выполняйте согласно инструкции, описанной в главе «Работа с Pervasive.SQL» данного руководства.
2. Процедуру установки выполните на каждом клиентском месте.
Если компьютер, на котором установлен сервер СУБД, будет использоваться в качестве клиентской машины, клиентский Pervasive.SQL на него устанавливать не нужно.
Шаг 4. Установка СБиС++ на клиентском месте
Следующим шагом будет подключение СБиС++ на клиентских местах.
1. Подключите сетевой диск с каталогом программы на всех рабочих местах пользователей и настройте его так, чтобы он всегда подключался автоматически.
2. Запустите с сетевого диска файл sbis-setup-CLIENT-EO.exe и установите СБиС++ на клиентском месте. При этом на компьютер пользователя добавляется ярлык для запуска программы синхронизации.
3. Укажите путь к исполняемому файлу программы синхронизации СБиС++ fsynhro.exe. Он служит для синхронизации СБиС++ на клиентском месте с каталогом «СБиС++ клиент» на сервере. Если вы не знаете, где находится данный файл, найдите его с помощью кнопки «Обзор».
4. Следуя указаниям мастера, завершите установку СБиС++ на клиентском месте. Повторите установку на всех клиентских местах.
5. Запустите программу СБиС++ на клиентском месте. Произойдет синхронизация файлов со СБиС++ на сервере. При выполнении этого процесса происходит следующее: файлы программы, установленные на клиентском месте, сравниваются (по дате и времени) с файлами на сервере. И если они не идентичны, то происходит обновление файлов на клиентском месте. Проверка происходит каждый раз при подключении к программе.
Шаг 5. Настройка доступа к файлу и серверу лицензий
Для многопользовательской версии «СБиС++ Бухгалтерия» адрес сервера лицензий указывается в файле sbis-LicServ.ini, который создаётся при запуске утилиты в том же каталоге, что и файл sbis-LicServ.exe. Задание параметров в этом файле и обеспечивает взаимодействие защищённой программы с сервером лицензий.
[ Лицензии ]
КаталогЛицензий=Лицензии
АдресСервера=sbis-server:25678
Как правило, значения, указанные для этих параметров, используются как значения по умолчанию.
Надо скопировать значение параметра «АдресСервера» и указать это значение у параметра «СерверЛицензий» в файле sbis.ini:
[Базовая конфигурация]
БазаДанных=DB
Модули=Модули
ПоУмолчанию=ДА
...
СерверЛицензий=sbis-server:25678
По умолчанию, файл лицензии находится в каталоге «Лицензии» в каталоге «Сервер лицензий».
Для хранения файла лицензии может использоваться любой другой каталог. Но мы всё же рекомендуем использовать каталог «Лицензии». Если же выбран другой каталог, не забудьте прописать полный путь к этому каталогу в файле sbis-LicServ.ini (параметр «КаталогЛицензий»).
Эти же настройки можно выполнить непосредственно в программе СБиС++, запустив исполняемый файл sbis.exe, в каталоге установленной программы на сервере.
В задаче «Администратор» в окне выбора конфигураций запуска («Главное меню/Настройка программы/ Конфигурации запуска программы») нажмите кнопку «Изменить», выделив предварительно нужную конфигурацию:
Рис. 3- SEQ Рис. \* ARABIC 1 – Настройка конфигурации запуска программы
В появившемся окне в поле «Сервер лицензий» укажите адрес сервера и, если необходимо, то и новый путь доступа к файлу лицензии.
Приложение.Синхронизация файлов
При многопользовательском режиме работы обновления данных происходит на сервере. При запуске СБиС++ на клиентских местах программа сравнивает эти данные с информацией на локальном компьютере и в случае несовпадения обновляет ресурсы. Происходит это с помощью программы синхронизации файлов FSynchro. Запуск утилиты синхронизации файлов осуществляется с помощью файла fsynchro.exe.
Функциональные возможности утилиты
1. Утилита предназначена для синхронизации каталога-источника, расположенного на сервере, с каталогом-приёмником, расположенном на рабочем месте пользователя.
Во время синхронизации файлы упомянутых выше каталогов считаются идентичными, если время их создания совпадает.
Точность определения времени создания составляет 2 секунды. Поэтому файлы, имеющие разницу во времени создания менее 2х секунд также являются идентичными.
2. В целях уменьшения времени запуска программы, есть возможность не сравнивать полностью все файлы каталога-источника и каталога-приёмника, а ограничиться только корневым каталогом и/или дополнительными явно указанными файлами. Как накладываются данные ограничения, будет сказано чуть позже.
3. Кроме непосредственно синхронизации, утилита обладает возможностью производить запуск дополнительных команд и процессов после окончания процесса синхронизации. Как реализуется данная возможность, будет сказано чуть позже.
Типы запуска утилиты синхронизации
Для правильного выполнения синхронизации используются параметры, прописанные в ini-файле. Вследствие этого, возможны следующие типы запуска программы FSyncro:
§ Без параметра (fsynchro.exe). В качестве конфигурационного будет использоваться файл с именем fsynchro.ini, т.е. все значения параметров будут браться из этого файла. Если данного файла не существует, то принимаются значения параметров по умолчанию.
§ В качестве аргумента может передаваться ini-файл с другим именем (fsynchro.exe test.ini). В этом случае, значения параметров будут браться из этого файла. Недостающие значения параметров будут браться по умолчанию.
§ С аргументом g (fsynchro.exe /g). В этом случае, в каталоге с утилитой fsynchro.exe (в нашем случае, это каталог C:\sbis\СБиС++ Клиент) будет создан файл fsynchro.ini, содержащий значения параметров по умолчанию. После успешного выполнения данной команды последует сообщение:
Если данный файл на момент запуска утилиты уже существовал, он будет заменен вновь созданным.
§ С аргументом h (fsynchro.exe /h). Используется для вывода в программе основной информации (в кратком изложении) о режимах запуска утилиты, перечисленных выше.
Формат файла fsynchro.ini
Типовая настройка файла fsynchro.ini выглядит следующим образом:
[Основные параметры]
#КаталогИсточник=
#КаталогПриемник=
#ПроверятьЗапущеноЛиУже=
#СниматьReadOnly=
#УдалятьНенужныеФайлы=
#Выполнить=
#КоманднаяСтрока=
#ВопросПриОшибке=
#ВыводитьСтатистикуСинхронизации=
[Игнорировать]
fsynchro.err
fsynchro.out
fsynchro.exe
[Обновлять]
[СтрогоСинхронизировать]
Модули
[Вырезать]
[Пропустить существующие]
[Проверить пары]
[Оформление]
#ФоноваяКартинка=
По умолчанию файл fsynchro.ini не создаётся. Поэтому, чтобы узнать или изменить параметры по умолчанию, прописанные в этом файле, необходимо его создать. Чтобы знать, какое значение может принимать тот или иной параметр, необходимо узнать назначение каждого из перечисленных выше параметров.
Параметры ini-файла
Все параметры, можно условно разделить на группы:
[Основные параметры]
§ КаталогИсточник - путь к каталогу - источнику файлов. Каталог должен обязательно существовать. Если путь не указан, то в качестве каталога берётся тот, в котором находится файл fsynchro.exe.
§ КаталогПриемник - путь к каталогу - приёмнику файлов. Если данного каталога не существует, то он будет создан. По умолчанию предполагается каталог <c:\СБиС++ Клиент>. В этом параметре допускается использование переменных окружения среды.
Чтобы выполнить синхронизацию в домашний каталог пользователя, необходимо написать так: КаталогПриёмник=%HOMEDRIVE%%HOMEPATH%\ SBIS_20_CLIENT
§ ПроверятьЗапущеноЛиУже – имя файла приложения, которое может быть уже запущено в системе. По умолчанию предполагается, что это sbis.exe. Если нашли запущенное приложение, то синхронизация выполняться не будет, и появится соответствующее предупреждение. Необходимо указывать полный путь к приложению. При указании относительного пути предполагается, что приложение находится в каталоге - приёмнике.
§ СниматьReadOnly - если <да>, то в случае наличия атрибута ReadOnly (только на чтение) у файла-источника, у файла-приёмника он будет снят. По умолчанию предполагается <да>.
§ УдалятьНенужныеФайлы – если <да>, то будут удалены все файлы в каталоге-приёмнике, которых нет в каталоге-источнике. По умолчанию предполагается <да>.
§ Выполнить - команда, которая выполниться по окончании процедуры синхронизации файлов. Если запускается процесс из exe-файла, то расширение этого файла нужно обязательно указывать. Если не указывается расширение, то будет запущен другой файл с таким именем, но другим расширением, если таковые имеются в каталоге. При указании относительного пути к приложению предполагается, что приложение находится в каталоге - приёмнике. По умолчанию, запускается <sbis.exe>.
§ Командная строка – передаёт вызываемому файлу необходимые параметры. В этой строке передаются именно параметры, сам процесс запускается предыдущей командой.
§ ВопросПриОшибке - если <да>, то при возникновении ошибок во время синхронизации выводится сообщение с запросом: запускать или нет приложение. Если <нет> - выводится сообщение об ошибке при синхронизации и ничего не запускается. По умолчанию, <да>.
§ ВыводитьСтатистикуСинхронизации – если <да>, то в каталоге – приёмнике будет создан файл с именем fsynchro.out. В файл выводится информация о ходе выполнения синхронизации. По умолчанию такой файл не создаётся.
[Игнорировать]
Указывается список файлов и каталогов, которые не участвуют в синхронизации, причём каждое имя с новой строки. Необходимо заметить, что если в списке указано имя каталога, то и вложенные каталоги будут игнорироваться. Указывается либо полный путь к файлу, либо относительный. При указании относительного пути, будут игнорироваться файлы и каталоги как относительно пути источника, так и приёмника. Рекомендуется игнорировать файлы утилиты синхронизации: fsynchro.err и fsynchro.out. Если запускать утилиту синхронизации из каталога - источника, то рекомендуется прописать в список игнорируемых файлов ещё и fsynchro.exe.
[Обновлять]
Список файлов и каталогов, каждое имя с новой строки, которые необходимо синхронизировать. Синхронизируются все вложенные файлы и каталоги. Если оставить список пустым, синхронизации подлежат все файлы и каталоги. Необходимо отметить, что список «Игнорировать» имеет приоритет, то есть если каталог или файл указаны в списке «Игнорировать», то независимо от списка «Обновлять» файлы, каталоги и все подкаталоги будут проигнорированы.
[СтрогоСинхронизировать]
Список файлов и каталогов, каждое имя с новой строки, которые необходимо синхронизировать, даже в том случае, если параметр «УдалятьНенужныеФайлы» принимает значение <нет>. То есть, удаляет лишние файлы в указанных каталогах независимо от параметра «УдалятьНенужныеФайлы». Необходимо отметить, что списки «Игнорировать» и «Обновлять» имеют приоритет. То есть, строгая синхронизация производится только в папках из списка «Обновлять», или из всего каталога - приёмника, если список «Обновлять» пуст. В каталогах списка «Игнорировать» синхронизация не производится никогда. По умолчанию всегда синхронизируется каталог «Модули».
[Вырезать]
Список файлов и каталогов, каждое имя с новой строки, которые не участвуют в синхронизации. Если перечисленные файлы присутствуют на источнике, то они игнорируются. Если файлы присутствуют на приемнике, то удаляются. Необходимо заметить, что если в списке указано имя каталога, то и вложенные каталоги и файлы игнорируются или удаляются, соответственно. Параметром является либо полный, либо относительный путь к файлам. По умолчанию, ничего не указывается.
[Проверить существующие]
Указываются имена файлов, которые необходимо копировать, если они отсутствуют в каталоге - приёмнике и пропускать, если уже существуют. При указании относительного пути, сравниваем файлы по указанному пути относительно источника и приёмника. По умолчанию ничего не выполняется.
[Проверить пары]
Указываются имена файлов с различными именами, но с одинаковым содержанием. Пары задаются как имя файла-приёмника = имя файла-источника. При указании относительного пути, будут сравниваться файлы по указанному пути, относительно источника и приёмника соответственно. Пример: sbis.exe=sbis.ex. По умолчанию проверка не выполняется.
[Оформление]
§ Фоновая картинка – указывается имя файла (с расширением «.dll» или sbis.exe), в ресурсах которого содержится картинка фона утилиты синхронизации. После символа указывается идентификатор ресурса (по умолчанию <101>). Имя файла и идентификатор должны быть разделены символом '#'. При указании относительного пути предполагается использование каталога-источника. По умолчанию используется картинка <sbis.exe#101>.
Переменные среды
Помимо указанных значений по умолчанию в инициализационном файле, допускается использование следующих макроопределений:
§ %USERNAME% - текущее имя пользователя.
§ %HOMEPATH% - домашний каталог пользователя.
§ %SRCPATH% - значение переменной КаталогИсточник
§ %DESTPATH% - значение переменной КаталогПриемник
Пример ini-файла
[Основные параметры]
КаталогИсточник="N:\Client\SBIS_20_CLIENT"
КаталогПриемник="C:\SBIS_20_CLIENT"
ПроверятьЗапущеноЛиУже=sbis.exe
СниматьReadOnly=да
УдалятьНенужныеФайлы=да
Выполнить="sbis.exe"
КоманднаяСтрока="/user:ИВАНОВ /pass:1"
ВыводитьСтатистикуСинхронизации=нет
[Игнорировать]
fsynchro.err
fsynchro.out
[Пропустить существующие]
[Проверить пары]
sbis.exe=sbis.ex
[Оформление]
ФоноваяКартинка=sbis.ex#101
Сообщения об ошибках
В процессе выполнения сравнения и обновления файлов могут возникать ошибочные ситуации, которые требуют выяснения причин их возникновения и выработки соответствующих решений для их исправления.
: Невозможно определить путь-приемник в секции [Проверить пары]
: Невозможно создать каталог
: Неверное имя каталога
: Ошибка удаления файла
: Ошибка создания каталога
: Ошибка копирования файла . Путь в каталоге-приемнике слишком длинный
: Ошибка копирования файла в
: Ошибка чтения атрибутов файла
: Ошибка выполнения команды рабочий каталог
: Ошибка в файле инициализации
: Ошибка, не задан путь к каталогу приемнику. Синхронизация невозможна.
: Ошибка, не указан путь к каталогу источнику. Синхронизация невозможна.
: Каталог источник не существует, синхронизация невозможна.
: Сетевой путь не найден
: Ошибка доступа к каталогу источнику , синхронизация невозможна
: Приложение уже запущено, синхронизация невозможна
При запуске процесса может возникать данное сообщение. В этом случае необходимо проверить, не запущена ли уже программа СБиС++ и, в случае положительного ответа, закрыть её. Если вы уверены, что программа не запущена, проверить, не заблокированы ли те файлы, которые необходимо обновить.