Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Для работы с программной кассой необходимо:

  • Настроить Модель и Группу касс в программе
  • Подключить к локальной рабочей станции, на которой работает POS, CKO (USB устройство с программным обеспечением) и выполнить настройку сервиса (подробнее в части Информация для администратора)

Оглавление

Table of Contents

Настройка кассы в lsFusion ERP

1. Добавить модель программной кассы.

...

Код - код для модели программной кассы Vial обязательно должен быть "titanPOS" 

Image RemovedImage Added

Рис. 1 Создание новой модели касс

Image RemovedImage Added

Рис. 2 Настройка модели программной кассы iKassa Vial (TitanPOS) 

2.  Настроить группу касс

...

Рис. 3 Создание новой группы касс

Image RemovedImage Added

Рис. 4 Настройка параметров группы касс

Далее, в блоке Касса нажать кнопку Добавить и установить настройки для кассы (рис. 5).  Красным и оранжевым (только Linux) Красным  цветом выделены обязательные для заполнения свойства, зеленым цветом выделены необязательные для заполнения свойства.

  • Путь логов кассы – каталог и имя файла, в который будут писаться пакеты обмена с кассой. По логам можно судить об ошибках или выполненных операциях.
  • Компьютер – всегда 127.0.0.1
  • TSVR, сессия – ID текущей сессии работы с СКО, присваивается в процессе работы по результатам запроса к СКО
  • TSRV, IP адрес – всегда 127.0.0.1:1828
  • TSRV, Номер – номер СКО
  • TSRV, ПИН код – пин код оператора
  • TSRV, Ставка НДС – значение ставки НДС. Допустимые значения – не указано, или 0, или 10, или 20 или 25.
  • TSRV, Имя очереди – Имя очереди принтера. Только для ОС Windows
  • TSRV, VID – значение Vendor ID для настройки принтера в ОС Linux
  • TSRV, PID – значение Product ID для настройки принтера в ОС Linux
  • TSRV, Ширина ленты – ширина ленты в символах для чекового принтера. Если не указано, то значение по умолчанию 48
  • TSRV, cp866 – номер кодовой таблицы в прошивке принтера, соответствующий CP866. Если не указано, то 17
  • TSRV, Прокрутка – количество пустых строк после печати чека. Если значение не задано, то по умолчанию 5.
  • TSRV, Отрезка – флаг включения отрезчика чека (нож). При этом если значение не определено, то отрезчик принтера выключен.
  • TSRV, Префикс – дополнительные данные (команды) перед печатью чека в формате base64

Image Removed

  • Порт – по умолчанию 3335.
  • PIN код – ПИН код оператора
  • Код в чеке – Печать кода товара в кассовом чеке
  • НДС в чеке – Печать ставок НДС в чеке

Image Added

Рис. 5 Настройка кассы

Особенности работы кассы

  1. При работе с программной кассой система нет возможности закрыть закрытие  Z-отчет без изъятия денег отчета требует обязательного изъятия наличных из кассы.
    Есть возможность печати копии любого чека, а также копии кассовой ленты. Для этого на форме POS нужно:
  2. Нажать Копия чека
  3. Указать Номер смены  и Номер документа (чека), если печатается копия чека
  4. В поле Операция выбрать Копия документа для печати копии чека или Копия Z-отчета 
    Image Removed
    Image Added
  5. Открытие смены сопровождается печатью документа , при этом на документе, в том числе печатается информация о переданных документах и событиях, а также возможные проблемы, связанные с обновлением СОС (список отозванных сертификатов). Если связь с интернетом существует, то количество документов и событий должно быть 0 и должна отсутствовать информация о проблемах обновления СОС. Если нет связи (отсутствует интернет) в течение более 7 дней, то СКО будет заблокировано для работы. Вычислить критический период неотправленных документов и не обновленных СОС можно по датам документов на открытие смен. 
    Image Added
  6. Для выдачи сдачи необходимо наличие определенной суммы денег в кассе, покрываемых из суммы внесения и принятых оплат наличными от покупателей. Пример: стоимость покупки 30 рублей, в кассе 0 рублей, покупатель дал 50 рублей. При попытке проведения чека будет ошибка:
    Image Added
  7. Есть  3 операции печати копии документа:
    • Копия документа - если последним документом был чек или Z-отчет, то при нажатии на кнопку «Ок» будет напечатан последний документ. Если смена открыта и есть напечатанные чеки, то свойство «Последний чек» будет отражать номер последнего чека. 
    • Копия по номеру -  необходимо заполнить свойство № документа  (номер чека). 
    • Копия Z отчета - необходимо заполнить свойство № документа (номер закрытой смены)
      Image Added
      Номера и содержание документов, которые могут быть распечатаны, как копии, хранятся в локальной БД SqlLite c именем TitanPOS.db. Если производится обновление версии ПО, то БД затирается.

  8. В процессе работы могут появляться инфо сообщения или сообщения об ошибках, связанные с работой СКО.  Как правило, если возникла ошибка, то в сообщении указывается Операция, которая вызвала ошибку, текст ошибки, а также код ошибки. Код ошибки может оказаться полезным для получения дополнительной информации или рекомендаций.
    Image Removed
    Некоторые ошибки требуют перезапуска СКО. Такие ошибки не должны возникать, если не был нарушен порядок работы СКО. На появление такой ошибки не должны влиять также, перезагрузки ПК или его отключение. 

    Image Removed
    При возникновении такой ошибки нужно следовать правилу:

    • выполнить рестарт СКО (перезапуск службы)
    • закрыть окно сообщений
    • повторить кассовую операцию


Anchor
TechSettings
TechSettings
Информация для администратора

Expand
titleМодули системы

Программная касса работает с модулем "Управление продажами". Для подключения программной кассы в логике проекта в топ файле прописать вызов управляющего модуля программной кассы FiscalTsrvFiscalTitanPOS. Например:
Image RemovedImage Added


Expand
titleНастройка СКО

Настройка программной кассы
Для работы программной кассы необходимо устройство СКО, программное обеспечение для СКО, чековый принтер принтер  и обязательное наличие сети Интернет.

Image Added

            СКО представляет собой USB устройство, размер менее 5 см. С задней стороны корпуса нанесена служебная информация: СКО, СККО и серийный номер.

Image Removed 

СКО – это Средство Контроля Оператора. СККО – это Система Контроля Кассового Оборудования.Для настройки программной кассы надо создать доступный каталог, скопировать в него приложение tsrv.x86_64-pc-windows-gnu.exe (или 32 битный аналог). Приложение можно (необязательно) переименовать, например в tsrv.exe, и запустить под правами Администратора Windows с параметрами:

  • Для тестов: tsrv.exe --install-service --test
  • Для реальной кассы: tsrv.exe --install-service --prod
Выполнить настройку сервиса. Минимальная настройка сервиса, это создание конфигурации логирования: log.yaml. Каталог логирования c именем «log» можно создать в каталоге старта сервиса.
Вообще все файлы настроек могут быть размещены в каталоге старта службы. Служба вначале ищет файлы настроек в каталоге своего старта, и только потом во всех прочих.
Image Removed Для проверки старта сервиса в командной строке набрать команду: sc query tsrv-native.
Параметр STATE (Статус, Состояние) покажет текущее состояние сервиса, где: STOPPED – служба остановлена, RUNNING – служба запущена.
См. также документация: https://tsrv.int.imlab.by/base/windows_service.html
Если настройки выполнены правильно и служба запущена в каталоге, который был определен для логирования, появятся два файла: logs.log (общее логирование, http запросы к службе и ответы) и checks.log (формируемые кассовые документы).
В каталоге старта сервиса создать два технологических файла:
  • для остановки сервиса, например, с именем stop.cmd, в который поместить команды:

sc.exe stop tsrv-native.
Остановка службы может потребоваться, например, для корректного извлечения СКО.

  • для перезапуска сервиса, например, с именем start.cmd, в который поместить команды:

sc.exe stop tsrv-native
sc.exe start tsrv-native
Перезапуск сервиса иногда необходим, например, в случаях выключения ПК.
На рабочем столе создать ярлыки, которые будут запускаться с правами Администратора.
1.2             ПО СКО решает несколько задач, в том числе управление печатью на чековом принтере. При этом чековый принтер должен поддерживать кодовую страницу 1251 или 866, а также иметь или не иметь в своей прошивке поддержку QR кодов. Выбор осуществляется настройками в конфигурационном файле. Базовая настройка конфигурационного файла предполагает, что чековый принтер поддерживает QR коды и кодовую страницу 1251.   

             Официальные актуальные версии ПО и документации находятся по адресу https://github.com/titanbel/TitanPosSDK_Releases не в общем доступе. Для получения доступа необходимо выслать свой логин от github в техническую службу программной кассы «Виал», после чего они пришлют приглашение для подключения к их ресурсу на гитхабе.

           Отдельно информация по программной кассе с документацией и сопутствующим программным обеспечением находятся на внутреннем сервере по адресу e:\InstLux\!Programm_KSA\TitanPos\. В папке Install и Insall\New находиться инсталляционный пакет TitanPosSDK_x86-64_1_5_9_*.exe (версия 1.5.9. В этой же папке находиться документация на программную кассу в формате PDF документов:


  1. TitanPOS Платформа - Интерфейс API. Содержит описание протокола обмена
  2. TitanPOS Платформа - Руководство по установке и администрированию
  3. TitanPOS Платформа - Функциональные возможности

1.2 Установка программной кассы

Установка программного обеспечения программной кассы осуществляется запуском инсталляционного пакета, который установит необходимы набор программ, библиотек и сертификатов, а также позволит сделать выбор между настройками тестовой или промышленной зоны.

Для настройки на тестовую зону (работа с тестовым сервером) необходимо поставить галочку. Более подробно «Руководство по установке и администрированию».
Image Added

1.3 Настройки программной кассы

Основные настройки программной кассы регламентируются конфигурационным файлом и настройками в «Оборудование – Группы касс».
Настройки конфигурационного файла решают задачи по конфигурированию работы программной кассы, чекового принтера, настройки НДС, видов оплат, управление денежным ящиком. Более подробно «Руководство по установке и администрированию», страницы 3-8.

Отдельный момент конфигурирования программной кассы, связан с вариантами запуска приложения. Возможны 4 варианта старта приложения:

1. Пользователь стартует со значка «TitanPOS», который уже в свою очередь запускает основное приложение (ERP), прописанное в конфигурации. Когда основное приложение закрывается, то вместе с ним закрывается программная касса. То есть "тандем приложений" стартует со значка «TitanPOS».
2. Второй вариант похож на 1-й, только вместо основного приложения «TitanPOS» стартует приложение-пустышку, с целью показать пользователю что "что-то запущено". Окно приложения пустышки отражается в панели задач.
3. «TitanPOS» ни чего не запускает и висит с невидимым окном.
4. «TitanPOS» может стартовать, как сервис.

Для реализации вариантов задействуется объект "Application" в конфигурационном файле.
Для вариантов 1 и 2 в параметре «Name» прописывается имя программы, которую запускает приложение TitanPos.exe. Отдельно в массиве «Params» могут быть заданы параметры запуска основного приложения (не TitanPos).
Для варианта 3 и 4 в параметр «Name» записывается значение «NULLAPP».
Для варианта 4, кроме того, воспользоваться сторонним средством nssm, которое идет в комплекте с инсталлятором и устанавливается в папку C:\Program Files\TitanPOS\service. Файл service_install.cmd – это установка сервиса.

Примечание:
• При разработке интеграции программной кассы с ERP использовался 2-й вариант, для чего запускался файл-заглушка DummyWFapp.exe (внутренний сервер, папка e:\InstLux\!Programm_KSA\TitanPos\Install).

Строка в конфигурационном файле:

"Application": { "Name": "C:\\ProgramData\\.TitanPOS\\DummyWFapp.exe"}

1.4 Личный кабинет

Программная касса имеет личный кабинет. Для каждого СКО присутствует токен, который позволяет получить доступ к личному кабинету. Запрос к личному кабинету в строке браузера выглядит так: работы с личным кабинетом, располагается по адресу https://lkecrs.test.imlab.by/auth/success?значение_токена
Например: https://lk.test.imlab.by/auth/success?jwt=eyJhbGciOiJIUzUxMiJ9.eyJwcmluY2lwYWwiOnsiaWQiOjExMTI5OTYxOCwidHlwZSI6MH0sInVucCI6MTExMjk5NjE4LCJyb2wiOlsiUk9MRV9DT01QQU5ZX1VTRVIiXSwic3ViIjoiIiwiZXhwIjo0Mjk0OTY3Mjk1fQ.ug0UnvCiMloBQrnCBeG7VKjdu9T2ZK91jVF2RuqtwoYSRdZbZ1_SkMifX3-X59nUs1Z5rZ5brI5-xvcHoJXGzw
1.3 Настройка чекового принтера
Для работы необходим чековый принтер со следующим набором характеристик:

  • интерфейс подключения USB
  • система команд ESC/POS
  • прошивка принтера должна содержать кодовую страницу 866 (MS DOS)
  • поддержка печати QR кодов

Эта информация может быть получена из self теста принтера и (или) технической документации на устройство.
Self тест для большинства принтеров выполняется следующим образом: выключить принтер, нажать на кнопку «FEED» панели управления принтером, включить принтер и отпустить кнопку «FEED». При этом принтер автоматически напечатает свои характеристики и текущие установки.
Принтер должен быть установлен в системе (его ПО должно быть проинсталлировано) и он должен определяться операционной системой. Имя принтера в системе Windows будет использовано для настройки оборудования программной кассы в ERP.
Важное замечание:
для тестирования подойдет любой чековый принтер, даже не поддерживающий печать QR кодов. Но, для реальной работы нужен принтер, который печатает QR коды, так как это определено законодательно.
См. также документация:
https://tsrv.int.imlab.by/base/printers.html , Очередь печати WIndows

Примечание:
Если принтер не определен ни под Windows, ни под Linux, то вывод направляется на устройство типа виртуальный принтер (dummy printer). Это не должно использоваться для реальной работы, но может быть использовано для тестов при отсутствии реального принтера.by/, необходим ЭЦП (электронная цифровая подпись) и IE версии 11, а также дополнительные настройки операционной системы.

1.5 Особенности некоторых настроек конфигурационного файла

Содержание конфигурационного файла, использованного для написания стыковки с ERP, находится на внутреннем сервере по адресу e:\InstLux\!Programm_KSA\TitanPos\Install.

Чековый принтер. Так как при разработке изначально использовался «старый» чековый принтер без поддержки кодовой страницы 1251 (только 866) и без поддержки QR кодов, то были использованы дополнительно следующие настройки (по рекомендациям службы технической поддержки).

Для печати на русском:
"EscPosSubstituteCharset1251" : 17
"DefaultCharsetName": "IBM 866"

Для печати QR кодов:
"EscPosQrMode" : 2

Ставки НДС. В конфигурационном файле установлены 2 ставки НДС 10 и 20 %. Значение ID привязано к программной обработке.

"Taxes": [
{ "Id": 1, "Name": "НДС 20%", "Value": 0.20 },
{ "Id": 2, "Name": "НДС 10%", "Value": 0.10 }
]
Виды оплат. Виды оплат в конфигурационном файле не определялись, так как по своим ID соответствуют видам оплат в ERP: 1 – НАЛИЧНЫЕ, 2 – КАРТА, 3 – СЕРТИФИКАТ.


Expand
titleДополнительное логирование

            Устройство СКО совместно со своим программным обеспечением ведет свои лог файлы, которые описаны в блоке Настройка СКО. Норасположенные в каталоге c:\ProgramData\.TitanPOS\logs\.  Но, просмотр этих логов не всегда удобен. Можно вести отдельный лог относительно запросов к кассе и получаемых от нее ответов.
Image Removed
Структурно Имя лог файла и его расположение задается в настройках группы касс.

Image Added

 Структурно в логе отражается дата-время запроса к кассе, условное название операции и запрос от ERP к СКО. Следующей строкой, через строку символов «-» идет содержание ответа от СКО.Если значение ключа type равно send, то запрос был выполнен успешно.
Если значение равно error, то ответ будет содержать код и описание ошибки, которое может несколько отличаться от сообщения на экране, что связано с тем, что некоторые оригинальные сообщения идут на английском языке, также отображение некоторых сообщений может быть отдельно интерпретировано под текущую ситуацию.
Пакет сообщений типа «запрос-ответ» разделяется строкой символов «=».
В приводимой картинке приводиться два запроса

. 1-й запрос «Получение статуса к СКО» имеет статус ошибки. Второй запрос «Открытие сессии» выполнен успешно. Если ошибок не возникло, то ответ будет представлен, как Json

 Так как все ошибки привязаны к ошибкам HTTP то, как правило, ответ от СКО в логе будет представлен в виде текстовой строки, где отображаются: Номер ошибки WEB, Текст ошибки, Значение статуса (ключ «Status»), текст ошибки (ключ «Error»)