- Created by Александр Акимов on Mar 12, 2021
Перед настройкой и диагностикой модуля ActivePos должны быть выполнены следующие требования:
- Модуль ActivePos постоянно обновляется и дорабатывается, поэтому, при удаленной работе с сервером TRASSIR через клиентское ПО TRASSIR, важно, чтобы версии ПО сервера и клиента были одинаковыми. По возможности, обновите их до актуального состояния.
- Сервер TRASSIR и кассовый терминал (или иной источник данных POS) должны находиться в одной сети: сетевые данные должны беспрепятственно передаваться между ними по порту используемым источником данных POS (кассовый терминал, счетная машинка, весовое оборудование и прочее).
Для проверки возможности передачи данных со стороны терминала можно воспользоваться командой ping IP_адрес_TRASSIR. Аналогично можно проверить доступность терминала из командной строки Windows (указав IP-адрес терминала), если используется TRASSIR для Windows. Для серверов на базе TRASSIR OS можно воспользоваться служебным скриптом Ping
Для начала нужно проверить получает ли сервер TRASSIR данные от POS терминала:
1. Заходим в "Настройки сервера" и в правом окне нажимаем кнопку "Журнал дампы падений", в появившемся окне ставим галочку "Включить POS дампы" и закрываем окно.
2. После этого вcе данные присылаемые терминалом будут сохраняться в файл в папке "Скриншоты".
Проведите на терминале какую-либо операцию, которая должна фиксироваться сервером TRASSIR.
-Если после пробитие чека у Вас сформировался файл форматом *.pos_dump, значит данные доходят.
Если файл не сформировался, значит TRASSIR не получает данные от терминала:
- Некорректно настроено подключение к терминалу в модуле ActivePOS TRASSIR.
- Терминал не отправляет данные - неверные настройки POS-терминала.
- Сетевое оборудование не пропускает данные от POS-терминала к серверу TRASSIR по нужному порту.
Примечание.
Каждый терминал создаёт свой уникальный файл с расширением *.pos_dump. Количество рабочих терминалов равно количеству созданных файлов. Если терминалов 5, а файлов создалось 3 - значит 3 терминала работают и присылают данные в TRASSIR, а 2 не присылают. В таком случае нужно перепроверить на стороне кассового терминала настроена ли отправка в TRASSIR, верно ли указаны IP адрес и порт от кассы в модуле ActivePOS TRASSIR, а так же проверить работу сети от терминала до TRASSIR.
Обратите внимание, что сам факт наличия файла *.pos_dump не означает, что TRASSIR получает данные в текущий момент. По изменению даты и времени под названием файла можно понять, что касса присылает данные в реальном времени.
3. В случае, если файл *.pos_dump сформировался в разделе "Скриншоты", а в чековой ленте данных нет:
То необходимо проверить кодировку данных.
Как правило, каждый терминал отправляет данные в одной из следующей кодировки:
UTF-8
CP1251
ibm866
CP866
Уточните какой тип кодировки используется терминалом в настройках\инструкции самого кассового терминала, или откройте полученный файл *.pos_dump.
В свойствах файла или в в начале каждой операции\чека, как правило, присутствует строка "encoding="utf-8" - которая и сообщает тип кодировки.
Узнать и, если нужно, изменить принимаемую кодировку на стороне сервера TRASSIR можно с помощью скрипта POS_encoding.
Если описанные выше рекомендации не помогли: файл *.pos_dump создаётся, но при этом в чековой ленте данные не появляются - Скачайте из папки Скриншоты нужный файл *.pos_dump и передайте его в техническую поддержку DSSL для подробного анализа и решения проблемы.
1. Для начала Вам нужно проверить привязали нужный канал на Ваш терминал:
2. Далее Вам нужно нажать на один из Ваших привязных каналов и на картинке кликнуть правой кнопкой мыши и выбрать пункт "Вид".
• В дополнительном новом окне нажать на название Вашей камеры или выбрать пункт "Общие настройки", потом поставить галку на "Показать фигуры" и выбрать "Субтитры".
Не могу просмотреть историю событий c терминала в сервере TRASSIR.
• Если нужно просмотреть историю событий с терминала на сервере TRASSIR, но по каким то причинам сервер не может загрузить события, нужно проверить подключен ли сервер к базе данных PostgresSQL.
1) Нужно перейти в раздел "Настройки сервера" далее выбрать пункт "База Данных", если состояние пишет ОШИБКА (Как указанно на скриншоте снизу), далее нужно воспользоваться статьей "Ошибки и решение проблем с Базой Данных"
Если подключение терминала производиться через устройство MOXA.
1) Зайдите в Web-интерфейс устройства MOXA (установите программу NPortAdmin, чтобы узнать ее IP)
2) Выполните действия, указанные на скриншоте.
• Введите ip адрес и порт TRASSIR.
3) Проверьте, совпадают ли настройки COM-порта (данные настройки должны совпадать с терминалом).
4) Далее в разделе “ActivePOS”, выберите подраздел “Терминалы” в нём добавьте новый кассовый терминал.
5) Далее потребуется заполнить следующие поля:
• Имя терминала.
• IP адрес – IP адрес MOXA
• Порт — в зависимости от настроек на MOXA, в данном руководстве 2555
• Канал видео — выберите канал, на котором планируется отображение субтитров с весов.
• Протокол — вам потребуется выбрать требуемый протокол для данных весов.
И последнее, потребуется вывести субтитры на самом канале. Правый клик по видеоизображению на канале, после чего выберите в разделе «фигуры» - показывать субтитры.
Торговые системы и оборудование, совместимые с ActivePOS
ActivePOS работает как с полноценными торгово-кассовыми системами, так и с отдельными устройствами:
- Торгово-кассовые системы:
- Рабочее место кассира Artix:POS (artix.su)
- ПО Frontol (atol.ru)
- Программно-аппаратный комплекс R-Keeper (ucs.ru)
- dStore POS от компании MICROS (micros-fidelio.it)
- Кассовая система СуперМаг УКМ 4 (servplus.ru)
- POS-система ШТРИХ-LIGHTPOS (shtrih-m.ru)
- Программный комплекс IBS GAS
- Кассовая программа Set Retail (crystals.ru)
- ПО МАРКЕТ+ от компании Софт Маркет
- Компьютерная касса POS-2000
- Весовое оборудование:
- Весовой индикатор СКИ-12
- Весовой индикатор CAS CI-200A
- Торговые весы с печатью этикеток CAS-CL5000J
- Напольные весы CAS-DBII(E), CAS-CI2001A
- Счетные машинки и сортировщики:
- Сортировщики банкнот Numeron и BPS
- Счетчики купюр Glory GFR-220, USF100 и USF 51
- Сортировщик монет Glory (Talaris) MACH-6
- Счетчики-сортировщики банкнот Kisan Newton-FS, Newton-VS, Newton-F(v3.22) и K-500Pro
- Сортировщики банкнот Laurel K4 и Laurel K8
- Сортировщик монет Perconta Sortovit MS10 DB
- Сортировщики банкнот Magner 150 Digital и Magner 350 Digital
- Счетчики банкнот DoCash DC-50V и DoCash DC-50F
Также, модуль ActivePOS может получать события по TCP или UDP от любой другой системы, при условии что события будут приходить в формате DSSL XML.
Для того чтобы настроить передачу событий с кассовых терминалов, необходимо указать в программном обеспечении торговой системы IP-адрес, порт и протокол сервера TRASSIR. Настройки для каждой из поддерживаемых торговых систем смотрите в документации поставщиков кассового программного обеспечения.
C полным списком интегрированного и протестированного оборудования Вы можете ознакомится по ссылке:
https://www.dssl.ru/files/trassir/manual/ru/setup-posterminal-devices.html
Формат DSSL XML для ActivePOS.
Оптимальный способ для отправки данных из сервера "1С".
Формат позволяет присылать события в ActivePOS от имени кассового терминала. Сообщения в этом формате можно присылать как по TCP так и UDP.
Как видно из названия протокола, данный протокол основан на XML. Каждое событие, произошедшее на кассовом терминале, представляется в виде блоков-транзакций.
Пример как выглядит блок:
#1. Начало чека "Продажа"
<?xml version="1.0" encoding="utf-8"?>
<transaction>
<event_type>POSNG_RECEIPT_OPEN</event_type>
<operation_id>d3afe3bc-36bd-47b0-a938-ba442a8a1cb9</operation_id>
<cashier>Федоренко Виталий</cashier>
<date>10/08/2018</date>
<time>15:36:16</time>
</transaction>
#2. Номер чека
<?xml version="1.0" encoding="utf-8"?>
<transaction>
<event_type>POSNG_RECEIPT_NUMBER</event_type>
<operation_id>d3afe3bc-36bd-47b0-a938-ba442a8a1cb9</operation_id>
<cashier>Федоренко Виталий</cashier>
<date>10/08/2018</date>
<time>15:36:16</time>
<quantity>24491</quantity><text>24491</text>
</transaction>
#3. Добавление товара
<?xml version="1.0" encoding="utf-8"?>
<transaction>
<event_type>POSNG_POSITION_ADD_BY_SCANNER</event_type>
<operation_id>d3afe3bc-36bd-47b0-a938-ba442a8a1cb9</operation_id>
<cashier>Федоренко Виталий</cashier>
<date>10/08/2018</date>
<time>15:36:16</time>
<position>1</position>
<quantity>1</quantity>
<barcode></barcode>
<text>Товар Х</text>
<price>1</price>
</transaction>
#4. Расчет наличный
<?xml version="1.0" encoding="utf-8"?>
<transaction>
<event_type>POSNG_PAYMENT_CASH</event_type>
<operation_id>d3afe3bc-36bd-47b0-a938-ba442a8a1cb9</operation_id>
<cashier>Федоренко Виталий</cashier>
<date>10/08/2018</date>
<time>15:36:20</time>
<price>500</price>
</transaction>
#5. Сумма чека
<?xml version="1.0" encoding="utf-8"?>
<transaction>
<event_type>POSNG_RECEIPT_FINAL_RESULT</event_type>
<operation_id>d3afe3bc-36bd-47b0-a938-ba442a8a1cb9</operation_id>
<cashier>Федоренко Виталий</cashier>
<date>10/08/2018</date>
<time>15:36:20</time>
<price>500</price>
</transaction>
#6. Сдача
<?xml version="1.0" encoding="utf-8"?>
<transaction>
<event_type>POSNG_RECEIPT_CHANGE</event_type>
<operation_id>d3afe3bc-36bd-47b0-a938-ba442a8a1cb9</operation_id>
<cashier>Федоренко Виталий</cashier>
<date>10/08/2018</date>
<time>15:36:20</time>
<price>0</price>
</transaction>
#7. Скидка
<?xml version="1.0" encoding="utf-8"?>
<transaction>
<event_type>POSNG_RECEIPT_DISCOUNT</event_type>
<operation_id>d3afe3bc-36bd-47b0-a938-ba442a8a1cb9</operation_id>
<cashier>Федоренко Виталий</cashier>
<date>10/08/2018</date>
<time>15:36:20</time>
<quantity>0</quantity><price>0</price>
</transaction>
#8. Печать чека
<?xml version="1.0" encoding="utf-8"?>
<transaction>
<event_type>POSNG_RECEIPT_PRINT</event_type>
<operation_id>d3afe3bc-36bd-47b0-a938-ba442a8a1cb9</operation_id>
<cashier>Федоренко Виталий</cashier>
<date>10/08/2018</date>
<time>15:36:24</time>
</transaction>
#9. Открыт кассовый ящик при расчете
<?xml version="1.0" encoding="utf-8"?>
<transaction>
<event_type>POSNG_MONEYBOX_OPEN</event_type>
<operation_id>d3afe3bc-36bd-47b0-a938-ba442a8a1cb9</operation_id>
<cashier>Федоренко Виталий</cashier>
<date>10/08/2018</date>
<time>15:36:24</time>
<text>Федоренко Виталий</text>
</transaction>
#10. Конец чека "Продажа"
<?xml version="1.0" encoding="utf-8"?>
<transaction>
<event_type>POSNG_RECEIPT_SELL_CLOSE</event_type>
<operation_id>d3afe3bc-36bd-47b0-a938-ba442a8a1cb9</operation_id>
<cashier>Федоренко Виталий</cashier>
<date>10/08/2018</date>
<time>15:36:26</time>
<quantity>500</quantity><price>500</price>
</transaction>
<?xml version="1.0" encoding="utf-8"?>
<transaction>
<event_type>pos_new_receipt_sell</event_type>
<!-- Тип события ОБЯЗАТЕЛЬНОЕ ПОЛЕ. В данном случае оно сигнализирует о начале чека. -->
<cashier>ЗДЕСЬ ИМЯ КАССИРА</cashier>
<!-- Здесь указывается имя кассира -->
<operation_id>E44D0F4A-9822-11E0-36A3-0050FB005F1Y</operation_id>
<!-- Уникальный идентификатор операции ОБЯЗАТЕЛЬНОЕ ПОЛЕ. Идентификатор может быть любым, но в пределах чека у всех событий он должен быть одинаковым -->
<date>06/16/2011</date>
<!-- Дата ОБЯЗАТЕЛЬНОЕ ПОЛЕ -->
<time>18:14:04</time>
<!-- Время ОБЯЗАТЕЛЬНОЕ ПОЛЕ -->
</transaction>
<?xml version="1.0" encoding="utf-8"?>
<transaction>
<event_type>pos_position_add</event_type>
<!-- Тип события ОБЯЗАТЕЛЬНОЕ ПОЛЕ. В данном случае оно сигнализирует о добавлении позиции -->
<cashier>ЗДЕСЬ ИМЯ КАССИРА</cashier>
<!-- Здесь указывается имя кассира -->
<operation_id>E44D0F4A-9822-11E0-36A3-0050FB005F1Y</operation_id>
<!-- Уникальный идентификатор операции ОБЯЗАТЕЛЬНОЕ ПОЛЕ. Идентификатор может быть любым, но в пределах чека у всех событий он должен быть одинаковым -->
<date>06/16/2011</date>
<!-- Дата ОБЯЗАТЕЛЬНОЕ ПОЛЕ -->
<time>18:14:05</time>
<!-- Время ОБЯЗАТЕЛЬНОЕ ПОЛЕ -->
<name>ИМЯ ТОВАРА</name>
<!-- Имя товара -->
<quantity>10</quantity>
<!-- Количество товара товара -->
<weight>100</weight>
<!-- Вес товара -->
<code>560010000165070013</code>
<!-- Артикул товара -->
<price>50</price>
<!-- Цена товара товара -->
</transaction>
<?xml version="1.0" encoding="utf-8"?>
<transaction>
<event_type>pos_credit_card_payment</event_type>
<!-- Тип события ОБЯЗАТЕЛЬНОЕ ПОЛЕ. В данном случае оно сигнализирует о типе платежа. -->
<cashier>ЗДЕСЬ ИМЯ КАССИРА</cashier>
<!-- Здесь указывается имя кассира -->
<operation_id>E44D0F4A-9822-11E0-36A3-0050FB005F1Y</operation_id>
<!-- Уникальный идентификатор операции ОБЯЗАТЕЛЬНОЕ ПОЛЕ. Идентификатор может быть любым, но в пределах чека у всех событий он должен быть одинаковым -->
<date>06/16/2011</date>
<!-- Дата ОБЯЗАТЕЛЬНОЕ ПОЛЕ -->
<time>18:14:33</time>
<!-- Время ОБЯЗАТЕЛЬНОЕ ПОЛЕ -->
<price>500</price>
<!-- Сумма платежа -->
</transaction>
<?xml version="1.0" encoding="utf-8"?>
<transaction>
<event_type>pos_receipt_number</event_type>
<!-- Тип события ОБЯЗАТЕЛЬНОЕ ПОЛЕ. В данном случае оно сигнализирует о номере чека. -->
<text>1337</text>
<!-- Номер чека -->
<operation_id>E44D0F4A-9822-11E0-36A3-0050FB005F1Y</operation_id>
<!-- Уникальный идентификатор операции ОБЯЗАТЕЛЬНОЕ ПОЛЕ. Идентификатор может быть любым, но в пределах чека у всех событий он должен быть одинаковым -->
<date>06/16/2011</date>
<!-- Дата ОБЯЗАТЕЛЬНОЕ ПОЛЕ -->
<time>18:14:30</time>
<!-- Время ОБЯЗАТЕЛЬНОЕ ПОЛЕ -->
</transaction>
<?xml version="1.0" encoding="utf-8"?>
<transaction>
<event_type>pos_receipt_close</event_type>
<!-- Тип события ОБЯЗАТЕЛЬНОЕ ПОЛЕ. В данном случае оно сигнализирует о закрытии чека. -->
<cashier>ЗДЕСЬ ИМЯ КАССИРА</cashier>
<!-- Здесь указывается имя кассира -->
<operation_id>E44D0F4A-9822-11E0-36A3-0050FB005F1Y</operation_id>
<!-- Уникальный идентификатор операции ОБЯЗАТЕЛЬНОЕ ПОЛЕ. Идентификатор может быть любым, но в пределах чека у всех событий он должен быть одинаковым -->
<date>06/16/2011</date>
<!-- Дата ОБЯЗАТЕЛЬНОЕ ПОЛЕ -->
<time>18:14:30</time>
<!-- Время ОБЯЗАТЕЛЬНОЕ ПОЛЕ -->
<price>500</price>
</transaction>
Ознакомится более подробно с форматом DSSL XML для ActivePOS можно по ссылке:
https://www.dssl.ru/files/trassir/manual/ru/setup-pos-dsslxml.html
Если в сервер Trassir приходят POS данные но информация в чековой ленте не читаемая или отображается с проблемой как на скриншоте.
То проблема основана на том что кассовый терминал (или иной источник данных POS) отправляет в сервер Trassir данные другой кодировки.
На примере скриншота, данные приходят в сервер Trassir кодировкой cp-1251, а сервер Trassir считывает в utf-8.
В зависимости от протокола работы модуля ActivePos, Trassir может устанавливать свою кодировку.
В основном utf-8 или cp1251
Сервер Trassir поддерживает такие кодировки: utf-8, cp1251, cp866, ibm866.
Так же чтоб изменить кодировку на стороне сервера Trassir, нужно перейти в раздел "Модули" → "ActivePos" → "терминалы" и нажать клавишу F4.
После в дополнительном меню выбрать нужный терминал и найти значение "Encoding" в данном значении указать кодировку по которой работает касса\счетная машинка.
Так же нужно понимать что данная настройка не меняет конфигурацию работы кассового терминала (или иной источник данных POS)
Сама настройка кодировки меняет считывание данных на сервере Trassir и адаптирует их под оборудование (Касса\счетная машинка).
Если информация уже записалась с проблемным отображением данных, то данные не исправить.