KassaLite admin manual

Подготовка к работе

Установка / обновление

Кассирка поставляется в составе аппаратно-программного комплекса ТПК (терминал продавца-кассира).

Кассирка под Linux

Есть два дистрибутива, для процессоров ARM и x86. Папки программы называются соответственно.

Расположение папки программы:

  • ~/kassa_linux_arm
  • ~/kassa_linux_x86

Для работы нужны следующие папки и файлы:

reports/    - папка для копий отчетов
tmp/        - папка для логов (может быть ссылкой)
tpl/        - шаблоны для печати, копировать вместе с содержимым
update/     - файлы и скрипты для обновления настроек системы (необязательно)
changes.txt - список изменений (необязательно)
config.ini  - файл настроек
kassa_start.sh - скрипт запуска кассирки
KassaLite   - исполнимый файл кассирки
power.sh    - скрипт, запускаемый при 3-х кратном нажатии POWER
reset.sh    - скрипт, запускаемый при 3-х кратном нажатии RESET
update_kassa.sh - скрипт обновления исполнимого файла (необязательно)
  • Устанавливаем права
chmod 755 KassaLite
chmod 666 config.ini

Веб-сервис кассирки

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

Установка RPC-сервера

  1. Копируем на компьютер охранника (или на другой, работающий круглосуточно) папку и все файлы из:
  2. Устанавливаем Oracle Instant Client
  3. Устанавливаем Python, Tornado, cx_Oracle из папки kassa_server/distr
  4. В файле py/apiserv_kassa.py настраиваем адрес сервера (в начале файла, после строк, начинающихся на import)
  5. Ставим файл apiserv.bat в автозагрузку
    • как вариант - использовать SchoolAgent, в настройках ConsoleChecker указать запуск apiserv_kassa.py

Настройка и диагностика

Настройки кассирки хранятся в текстовом файле config.ini

Для диагностики во время работы нажмите F11 или Alt-F11, появится окно с отладочными сообщениями. Текст в окне можно прокручивать.

Что проверять в первую очередь

Для нормальной работы критичны следующие настройки:

  • [main]
    • template_dir - должно соответствовать папке с шаблонами, иначе не будут печататься чеки и отчеты (версии 1.4 и выше)
    • reports_dir - должна соответствовать эталону, папка должна быть и быть доступной для записи, иначе будут ошибки при печати отчетов
  • [database]
    • db_type - от нее зависит работа с базой данных
  • [rpc]
    • api_server (если db_type=rpc) - проверьте правильность адреса, можно в браузере
  • [oracle]
    • database, username, password (если db_type=oracle) - проверьте правильность строки сервера, название схемы БД
  • [cwk]
    • enabled, port_init - от этих настроек зависит работа картридера, сравните их с эталонными
  • [line_printer]
    • enabled, port_init - должны соответствовать эталонным
    • template_dir - должно соответствовать папке с шаблонами, иначе не будут печататься чеки и отчеты (версии до 1.4)

После запуска откройте отладочное окно (F11 или Alt-F11) и проверьте начальные строки - инициализация БД, устройств. Проверьте:

  • правильность времени
  • работу кнопок
  • считывание карт
  • печать чеков и отчетов по всем отделам
  • работу списка заказов питания (если есть)
  • работу списка товаров (если есть)

Описание файла настроек config.ini

; Файл конфигурации KassaLite 1.4
; Кодировка UTF-8
[main]
; Состояние окна при запуске программы
; 1-разворачивать на весь экран, 0-обычное окно (для отладки)
fullscreen=1
; период бездействия перед сбросом аккаунта, сек  (Account clear timeout, sec)
account_timeout=30
; код кнопки сброса, после 4-х нажатий подряд вызывается reset.sh  (RESET key code)
; на случай, если нужно повесить сброс на нестандартную клавишу
key_reset=01
; интервал проведения самодиагностики, сек
; во время самодиагностики проверяется состояние подключенных устройств
self_check_interval=3
; отображать групповые заказы питания, 1-да, 0-нет
; при включении в закладке "групповые заказы" отображается количество блюд для сервировки столов
enable_meals=0
; разрешить работать с товарами, 1-да, 0-нет
enable_goods=1
; список тестовых карт (через запятую) для клавиш F5..F8
test_cards_list=40A637DE,40B1691E,40B399DE,40B33A1E
; номер отдела для продаж, 0-доступны все отделы
department=0
; папка шаблонов печати
template_dir=tpl
; папка для отчетов
reports_dir=./reports
; ограничивать сумму чека при вводе
enable_sum_limit=0

[logger]
; файл для записи диагностических сообщений
file=./tmp/log
; адрес syslog сервера, на него будут отправляться копии диагностических сообщений
server=127.0.0.1
; имя компьютера, отправляющего сообщение (необязательно)
hostname=kassa_1

[print_params]
; эти параметры заменяют соответствующие параметры печати из БД
FIRM_NAME=Комбинат общественного питания "Подросток"
FIRM_INN=ИНН: 12345678901
FIRM_ADDRESS=293346, г. Оренбург, ул. Просторная 11
BILL_FOOTER=Благодарим Вас за использование системы "ClassCard"

[db]
; тип базы данных (oracle, rpc)
; oracle - используется Oracle InstantClient (только на процессорах x86)
; rpc - используется удаленный вызов процедур через HTTP
db_type=rpc

[oracle]
; сервер базы данных
database=192.168.1.1/XE
; логин
username=
; пароль
password=

[rpc]
; строка адреса сервера RPC (RPC API server URL)
api_server=http://25.1.5.94:8888/kassa
; Таймаут ответа сервера, сек (Request timeout, sec)
request_timeout=2
; Включение режима отладки запросов (HTTP debug mode enabled)
debug_mode=0

[cardreader]
; использовать выносной картридер: 1-да, 0-нет
enabled=0
; строка инициализации СОМ-порта картридера
port_init=COM7,9600,8,N,1,0,0
;port_init=/dev/ttyUSB0,9600,8,N,1,0,0

[cwk]
; использовать встроенный картридер с клавишами: 1-да, 0-нет
enabled=1
; строка инициализации СОМ-порта
;port_init=COM18,9600,8,N,1,0,0
port_init=/dev/ttyUSB.CWK,9600,8,N,1,0,0

[line_printer]
; использовать принтер чеков
enabled=1
; строка инициализации порта принтера, содержит имя файла порта
port_init=/dev/usb/lp0
; имя каталога с шаблонами для печати
template_dir=tpl

[vending_machine]
; использовать торговый автомат: 1-да, 0-нет
enabled=0
; строка инициализации СОМ-порта
port_init=COM22,9600,8,N,1,0,0
; номер первой колонки
hw_line1=1
; номер второй колонки
hw_line2=2
; номер третьей колонки
hw_line3=3
; номер четвертой колонки
hw_line4=4
Comments