Установка и настройка кассового Windows-клиента RK6 (RK6WIN)
Общие сведения
Важно! RK6WIN не работает на 64-х битных версиях Windows!
Кассовая часть R-Keeper v6, работающая под операционной системой Windows (далее RK6WIN), является отдельной разработкой и не совместима по модулям, библиотекам и т.д. с кассовой версией, работающей в среде DOS.
RK6WIN не является полностью 32-х разрядным приложением (в отличии от R-Keeper V7) - в состав клиента входят также 16-разрядные модули, для работы которых требуется наличие в операционной системе виртуальной машины для 16-ти разрядных приложений (NTVDM). Эта особенность накладывает ограничение на используемые ОС - т.к. в 64-разрядных системах Windows NT отсутствует NTVDM, то и запуск RK6WIN становится невозможным на таких ОС.
При запуске RK6WIN (или любого другого 16-разрядного приложения ) на компьютере с Windows NT автоматически запускаются процессы ntvdm.exe и wowexec.exe. После завершения работы RK6WIN эти процессы не выгружаются из памяти - такое поведение является особенностью Windows NT и позволяет увеличить быстродействие (для RK6WIN, работающего в качестве основного приложения на POS-терминале, такая особенность не является актуальной)
Примечание: После принудительного закрытия RK6WIN процессы NTVDM могут не освобождать некоторые ресурсы, например COM-порт или NetBIOS-имя - для освобождения ресурсов надо принудительно выгрузить из памяти процессы ntvdm.exe и wowexec.exe.
Архитектура RK6WIN и ее отличия от DOS-версии
Несмотря на то, что RK6WIN является отдельной разработкой, кассовый сервер (rkserver.exe) используется стандартный. Для организации независимо работающего кассового места (аналог DOS-сервера) необходимо установить на Windows-компьютер стандартный кассовый сервер (rkserver.exe) и RK6WIN соответствующей версии
Важно! Клавиатурный вариант RK6WIN (отличие только в CALL16.DLL) имеет ограниченную поддержку и отсутствует по-умолчанию в дистрибутиве.
В качестве протокола связи между RK6WIN и кассовым сервером используется все тот же NetBIOS, как и в случае использования DOS-версии. При установке RK6WIN следует помнить об этом факте - поддержка NetBIOS в ОС Windows может быть организована либо с помощью протокола NetBEUI либо включением поддержки NetBIOS в свойствах протокола TCP/IP. В любом случае все также остается актуальным понятие "номер адаптера" (подробнее о номере адаптера см. ниже)
Таким образом, RK6WIN состоит из специального клиента и стандартного кассового сервера. В составе клиентской части есть отличия в сравнении с DOS-клиентом - большинство файлов имеют такое же название и назначение, но есть некоторые файлы, которые отсутствуют в DOS-версии (например, vga32.dll, wsys.dll и т.д.)
Также есть отличие в механизме запуска RK6WIN - исполняемый файл RK6WIN.EXE используется только для инициализации основного исполняемого модуля CALL16.DLL - когда идет речь об обновлении версии RK6WIN, в первую очередь обновляется CALL16.DLL
В клиенте RK6WIN появилась поддержка нового каталога EXTENS32 для 32-х разрядных модулей расширения - если в описании модуля не указано, в какую директорию необходимо его поместить, копируем его, как и прежде, в директорию EXTENS (либо корневую директорию клиента - зависит от назначения модуля)
Для работы некоторых устройств RS232 требуется драйвер прямого доступа к портам (PORT32.EXE). Еще одной особенностью работы в среде Windows c устройствами RS232 является отсутствие поддержки линии IRQ (поэтому параметр _IRQ, присутствующий во многих DOS-драйверах, отсутствует в Windows-версиях).
Примечание: Драйвер прямого доступа к портам нужен только для приложений, использующих прямой доступ к портам. И необходимость его установки обязательно указана в описании таких приложений(драйверов). Со всеми остальными устройствами, подключаемыми к COM-портам, работа идёт стандартными средствами Windows и для них не требуется дополнительный драйвер.
Дистрибутив RK6WIN и драйвера устройств
Сборка клиента RK6WIN имеет некоторые особенности - полный дистрибутив каждой выпущенной версии не выкладывается разработчиками на ftp-сервер, вместо этого в стандартном дистрибутиве кассы R-Keeper v6 идут только обновленные файлы RK6WIN
Для обновления версии RK6WIN или сборки нового клиента определенной версии, можно использовать следующую схему:
- в случае обновления версии используем текущую сборку RK6WIN и дополняем ее обновленными файлами из стандартного дистрибутива кассы
- в случае сборки нового клиента используем любой доступный дистрибутив или сборку RK6WIN более ранней версии
Примечание: В стандартном дистрибутиве кассы обновленные файлы для RK6WIN находятся в каталоге \KACCA\STATIONS\WIN
Клавиатурная касса
Клавиатурный вариант кассы отличается от стандартной RK6WIN только файлом CALL16.DLL. Обновления для клавиатурной кассы не включаются в стандартный дистрибутив, а предоставляются по запросу (например, через трекер).
Важно: Клавиатурный вариант Windows-кассы будет корректно работать только с клавиатурой Mitec KB-99-128 со специальной прошивкой ftp://ftp.ucs.ru/r-keeper/Tools/MITEC/KB99B-128-WIN.LED
Универсальная касса
Универсальная касса отличается от стандартной RK6WIN только файлом CALL16.DLL. Обновления для универсальной кассы не включаются в стандартный дистрибутив, а предоставляются по запросу (например, через трекер)
Драйвера устройств
Все устройства, подключаемые к кассе RK6WIN и требующие для работы специальной поддержки, должны иметь драйвер для кассы, разработанный с учетом использования ОС Windows.
Драйвера для большинства устройств, поддерживаемых в RK6WIN, поставляются в стандартных дистрибутивах кассы R-Keeper v6. Если драйвер устройства поддерживает работу в RK6WIN, в каталоге, где размещается драйвер данного устройства, будет присутствовать подкаталог WIN.
Например, драйвера для фискальных регистраторов расположены в директории ftp://ftp.ucs.ru/r-keeper/versions/FISC_PRT - в директории каждой отдельной модели ФР могут располагаться подкаталоги DOS и WIN, где размещаются драйвера для DOS и Windows кассы соответственно.
Ниже приведен список каталогов на ftp-сервере, где хранятся драйвера устройств для кассовой части R-Keeper v6:
- ftp://ftp.ucs.ru/r-keeper/versions/COM_READ - драйвера для различных считывающих устройств (магнитные, бесконтактные, браслеты и т.д. )
- ftp://ftp.ucs.ru/r-keeper/versions/FISC_PRT - драйвера для всех поддерживаемых моделей ФР
- ftp://ftp.ucs.ru/r-keeper/versions/SCALE - драйвера для различных моделей весов
- ftp://ftp.ucs.ru/r-keeper/versions/SMPAUTH - драйвера для различных моделей банковских пинпадов
Если для устройства нет драйвера в стандартном дистрибутиве кассы, можно проверить каталог ftp://ftp.ucs.ru/r-keeper/versions/WINCAS/DEVICES. Если в данном каталоге драйвер также отсутствует, возможно устройство не поддерживается кассой RK6WIN - в случае необходимости можно оформить запрос на доработку драйвера через трекер.
Примечание: В каталоге ftp://ftp.ucs.ru/r-keeper/versions/WINCAS доступны полные сборки некоторых версий RK6WIN (включая клавиатурную и универсальные кассы), а также некоторые драйвера устройств. Данные сборки протестированы и собраны технической поддержкой - по всем вопросам, связанным с использованием данных сборок, необходимо обращаться на трекер.
Установка RK6WIN
Важно! Для возможности запуска RK6WIN требуется ключ USB Novex II, подготовленный специальным образом! Дилер не может самостоятельно подготовить или прописать такой ключ - его нужно заказывать через офис компании ЮСИЭС!
Как отмечалось выше, в качестве сервера используется стандартный rkserver.exe. Кассовый сервер может быть установлен либо на том же компьютере, где и клиент RK6WIN, либо на отдельном. При этом кассовый сервер может использоваться для подключения других кассовых клиентов, в том числе DOS-станций.
Установка RK6WIN выполняется простым копированием содержимого архива в любую директорию.
Важно! RK6WIN использует собственные шрифт RKEEPER.FON, который нужно установить стандартными средствами Windows. Сам шрифт находится в директории \FONTS.
Параметры RK6WIN хранятся в файле RKEEPER6.INI - поддерживаются практически все параметры обычной версии кассы (DOS), также есть параметры, специфичных только для Windows-кассы:
Nbadapter = 0 - номер адаптера (lana number) для запуска WIN-кассы WindowType = 0 - тип запуска приложения RK6WIN. Может принимать следующие значения: 0 - обычное окно 1 - режим "stay on top" ("всегда на переднем плане") 2 - режим DirectX-окна (некоторые доп. технические возможности по ускорению вывода графики) Key = 271A787C - идентификатор ключа защиты USB Novex, задается в шестнадцатеричном виде (HEX) - узнать код можно с помощью утилиты диагностики Guardant HiResolution = 100 - специальный режим для RK6WIN, позволяющий установить разрешение экрана кассы соотв. рабочему разрешению экрана Cursor = OFF - возможность (ON) отображения курсора в рабочей области экрана кассы (например, для возможности демонстрации системы с помощью "мыши")
Примечание: В "чистой" установке Windows присутствует только один протокол - TCP/IP, который по-умолчанию имеет нулевой адаптер - для запуска WIN-кассы достаточно установить поддержку NetBIOS поверх TCP/IP в свойствах протокола.
Если в системе установлено несколько протоколов или несколько сетевых карт, для изменения номера адаптера можно использовать утилиту lanacfg.
Особенности конфигурационного файла RKEEPER6.INI
Если в конфигурационном файле присутствуют секции, то все параметры, который находятся ниже этой секции до следующей секции, будут считаны и интерпретированы как параметры, относящиеся к данной секции. Например, если в середине конфигурационного файла вставить секцию с параметрами, то все нижеследующие параметры будут отнесены к этой секции и перестанут работать:
.............. [barstd] Port = 5 Log = 1 CanManualCardInput=ON CanManualDiscInput=ON
В этом примере параметры CanManualCardInput и CanManualDiscInput перестанут работать.
Таким образом, либо все параметры прописываем без секций, либо если секция необходима, вставляем в конец RKEEPER.INI.
Еще одна особенность - наличие "скрытых" символов в значениях параметров. Например, после значения параметра присутствует символ табуляции, что не позволяет корректно считать это значение и соотв. параметр не будет работать, как ожидается.