Новости кассового сервера QKkmServer от RndItSoft
@qkkmserver 37 участников
Загрузить еще
Добавлена команда

QKkmServer:
команда: GetFiskalMarkById
параметры: doc_id -- номер фискального документа из ФН. Если =0, то автоматически будет исполнен поиск номера последнего документа, записанного в ФН и фискальный признак будет искаться уже для этого, последнего, документа.
результат: fiskalMark - фискальный признак; fiskalDocId - номер документа из ФН, для которого сформирован запрос. Если в запросе номер =0, то отображен номер последнего записанного в ФН документа.

Запрос:


Ответ:





СуперВизор:

get_fiscal_mark;ИД_ДОКУМЕНТА;

ИД-документа так же может быть =0. Тогда будет получена метка и номер для последнего записанного в ФН документа.

В интерфейс "Тест драйвера" добавлен функционал запроса информации.
Так же добавлена поддержка отображения полученных данных в графе "Ответ"
Добавлена команда

QKkmServer:
команда: GetFiskalMarkById
параметры: doc_id -- номер фискального документа из ФН. Если =0, то автоматически будет исполнен поиск номера последнего документа, записанного в ФН и фискальный признак будет искаться уже для этого, последнего, документа.
результат: fiskalMark - фискальный признак; fiskalDocId - номер документа из ФН, для которого сформирован запрос. Если в запросе номер =0, то отображен номер последнего записанного в ФН документа.

Запрос:


Ответ:





СуперВизор:

get_fiscal_mark;ИД_ДОКУМЕНТА;

ИД-документа так же может быть =0. Тогда будет получена метка и номер для последнего записанного в ФН документа.

В интерфейс "Тест драйвера" добавлен функционал запроса информации.
Так же добавлена поддержка отображения полученных данных в графе "Ответ"
Добавлена команда

QKkmServer:
команда: GetFiskalMarkById
параметры: doc_id -- номер фискального документа из ФН. Если =0, то автоматически будет исполнен поиск номера последнего документа, записанного в ФН и фискальный признак будет искаться уже для этого, последнего, документа.
результат: fiskalMark - фискальный признак; fiskalDocId - номер документа из ФН, для которого сформирован запрос. Если в запросе номер =0, то отображен номер последнего записанного в ФН документа.

Запрос:


Ответ:





СуперВизор:

get_fiscal_mark;ИД_ДОКУМЕНТА;

ИД-документа так же может быть =0. Тогда будет получена метка и номер для последнего записанного в ФН документа.

В интерфейс "Тест драйвера" добавлен функционал запроса информации.
Так же добавлена поддержка отображения полученных данных в графе "Ответ"
с версии 5.17.07.23 в интерфейс СВ внесена опция Автоматическое закрытие смены для интернет магазинов.

Название говорит само за себя. Как правило, в интернет-магазинах используются версии касс с отключенным или вообще отсутствующим принтером. Как правило в таких случаях даже кассир как таковой отсутствует. Соответственно следить за сменой 24 часа некому.

Тут на выручку приходит СуперВизор, который обучен самостоятельно отслеживать окончание смены, закрывает смену и открывает новую.

Таким образом вы не получите ситуацию отказа в печати чека по причине неготовности кассы "24 часа закончились".
с версии 5.17.07.23 в интерфейс СВ внесена опция Автоматическое закрытие смены для интернет магазинов.

Название говорит само за себя. Как правило, в интернет-магазинах используются версии касс с отключенным или вообще отсутствующим принтером. Как правило в таких случаях даже кассир как таковой отсутствует. Соответственно следить за сменой 24 часа некому.

Тут на выручку приходит СуперВизор, который обучен самостоятельно отслеживать окончание смены, закрывает смену и открывает новую.

Таким образом вы не получите ситуацию отказа в печати чека по причине неготовности кассы "24 часа закончились".
с версии 5.17.07.23 в интерфейс СВ внесена опция "Автоматическое закрытие смены для интернет магазинов".

Название говорит само за себя. Как правило, в интернет-магазинах используются версии касс с отключенным или вообще отсутствующим принтером. Как правило в таких случаях даже кассир как таковой отсутствует. Соответственно следить за сменой 24 часа некому.
Тут на выручку приходит СуперВизор, который обучен самостоятельно отслеживать окончание смены, закрывает смену и открывает новую. Таким образом вы не получите ситуацию отказа в печати чека по причине неготовности кассы "24 часа закончились".
Автоматический контроль дублей пакетов
с версии 5.17.08.12 в СВ внесен автоматический неотключаемый контроль ИД пакетов.
СВ запоминает последний ИД пакета и если при следующем опросе сервера по WebAPI будет получен пакет с таким же ИД, то данный пакет будет проигнорирован и задание не будет исполнено.

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

Если требуется повторить печать чека (например, касса была выключена и чек не прошел), то следует изменить ИД пакета на новый.
Автоматический контроль дублей пакетов
с версии 5.17.08.12 в СВ внесен автоматический неотключаемый контроль ИД пакетов.
СВ запоминает последний ИД пакета и если при следующем опросе сервера по WebAPI будет получен пакет с таким же ИД, то данный пакет будет проигнорирован и задание не будет исполнено.

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

Если требуется повторить печать чека (например, касса была выключена и чек не прошел), то следует изменить ИД пакета на новый.
Автоматический контроль дублей пакетов
с версии 5.17.08.12 в СВ внесен автоматический неотключаемый контроль ИД пакетов.
СВ запоминает последний ИД пакета и если при следующем опросе сервера по WebAPI будет получен пакет с таким же ИД, то данный пакет будет проигнорирован и задание не будет исполнено.

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

Если требуется повторить печать чека (например, касса была выключена и чек не прошел), то следует изменить ИД пакета на новый.
Название товара "по-умолчанию"
с версии 5.17.08.12 в СВ внесена настройка, позволяющая задать наименование продаваемого товара "по-умолчанию".

Сделано это для тех предприятий, ассортимент продукции или услуг которых насчитывает 1-2 единицы. Для того, чтобы не вводить каждый раз одно и то же наименование, что достаточно утомительно, введена эта настройка.

Текст берётся из графы "Название товара "по-умолчанию"" в настройках программы.
Название товара "по-умолчанию"
с версии 5.17.08.12 в СВ внесена настройка, позволяющая задать наименование продаваемого товара "по-умолчанию".

Сделано это для тех предприятий, ассортимент продукции или услуг которых насчитывает 1-2 единицы. Для того, чтобы не вводить каждый раз одно и то же наименование, что достаточно утомительно, введена эта настройка.

Текст берётся из графы "Название товара "по-умолчанию"" в настройках программы.
Название товара "по-умолчанию"
с версии 5.17.08.12 в СВ внесена настройка, позволяющая задать наименование продаваемого товара "по-умолчанию".

Сделано это для тех предприятий, ассортимент продукции или услуг которых насчитывает 1-2 единицы. Для того, чтобы не вводить каждый раз одно и то же наименование, что достаточно утомительно, введена эта настройка.

Текст берётся из графы "Название товара "по-умолчанию"" в настройках программы.
Версия 5.17.08.28 СуперВизора
корректирующий релиз
Проведена работа над снижением нагрузки на CPU, подправлены утечки памяти.
Программа стала ещё надежней и стабильней!
Версия 5.17.09.19 Супервизора
тестовая сборка. Пока только для ОС Windows
В данной версии внесены некоторые новшества.
1. Добавлена функция "Усиленное подтверждение ответа от сервера".
Что это такое? В некоторых случаях возникала ситуация, когда СуперВизор работая в режиме WebAPI чек успешно печатал, ответ на центральный сервер передавал, а вот этот самый центральный сервер ответ по какой-то причине не принимал/не обрабатывал/не использовал в работе.
В итоге СВ запрашивая новое задание от центрального сервера получает задание с номером пакета, которое уже исполнил и игнорирует его (защита от повторной печати чека).
Для противодействия это ситуации введена опция "Усиленное подтверждение ответа", которая заставляет СВ поверить в то, что центральный сервер действительно получил и корректно обработал ответ только в том случае, если получит в ответе квитанцию в формате:

успех


внутренняя ошибка центрального сервера


Таким образом, СуперВизор гарантированно будет знать о том, что центральный сервер получил и корректно обработал ответ о WebAPI задании на печать чека. Только в этом случае СВ прекратит попытки отправить ответ на центральный сервер.


2. Расширение команды tmde
С увеличением количества установок кассового сервера в рознице возникла потребность в решении задачи оплаты чека несколькими формами оплаты: наличные+безналичные. Так же использование несколько форм налога.
В классической нотации команды закрытия кассового чека (оплаты) tmde указывается только форма оплаты и сумма.
В новой версии данный функционал расширен (при этом старая форма команды сохранена),

tmde;СУММА_1;СУММА_2;СУММА_3;СУММА_4;НАЛОГ_1;НАЛОГ_2;НАЛОГ_3;НАЛОГ_4;

СУММА_1 - это всегда наличная форма оплаты, а остальные 3 - разные формы безналичной оплаты (точное наименование зависит от настроек самой онлайн-кассы).
НАЛОГ_Х -- это номер налога, который надо применить ко всему чеку. Значения ставок налогов, а так же их наименования зависят от настроек кассы. Если налог применять не следует, то надо поставить значение 0 (ноль) в соответствующие позиции.

3. Доработка интерфейса кассира
Изменена очередность расположения функциональных кнопок.
Добавлены кнопки "Добавить товар" и "Удалить товар".
Исправлен расчет суммы чека (при некоторых ситуациях он не пересчитывался: таблица чека пустая, а сумма внизу есть от предыдущего чека).

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

В процессе эксплуатации замечено, что ряд пользователей запускает несколько экземпляров СуперВизора.
Это влечет за собой ряд проблем: чек может быть распечатан несколько раз, т.к. будет "пойман" разными экземплярами СВ. Не будет обновляться информация в таблице-журнале операций из-за нарушения совместного доступа к БД.
Для избежания вышеописанных ситуаций введена опция в настройках "Запрет запуска второй копии программы". По-умолчанию она включена.
*Версия 5.17.09.19 Супервизора*
_тестовая сборка. Пока только для ОС Windows_
В данной версии внесены некоторые новшества.
1. *Добавлена функция "Усиленное подтверждение ответа от сервера". *
Что это такое? В некоторых случаях возникала ситуация, когда СуперВизор работая в режиме WebAPI чек успешно печатал, ответ на центральный сервер передавал, а вот этот самый центральный сервер ответ по какой-то причине не принимал/не обрабатывал/не использовал в работе.
В итоге СВ запрашивая новое задание от центрального сервера получает задание с номером пакета, которое уже исполнил и игнорирует его (защита от повторной печати чека).
Для противодействия это ситуации введена опция "Усиленное подтверждение ответа", которая заставляет СВ поверить в то, что центральный сервер действительно получил и корректно обработал ответ только в том случае, если получит в ответе квитанцию в формате:

_успех_


_внутренняя ошибка центрального сервера_


Таким образом, СуперВизор гарантированно будет знать о том, что центральный сервер получил и корректно обработал ответ о WebAPI задании на печать чека. Только в этом случае СВ прекратит попытки отправить ответ на центральный сервер.


2. *Расширение команды tmde*
Ссылка для тестирования - http://rnditsoft.ru/files/QKkmServerSupervisor/QKkmServer.Supervisor-Setup-5.17.09.19.exe
Обновлена сборка для RaspberyPi.

Обновлению подверглись и кассовый сервер и графический клиент.

Теперь все основные возможности интегрированы и в эту версию ПО.
По многочисленным просьбам в драйвер АТОЛ внедрена работа с ККМ АТОЛ по сети TCP/IP!

Сегодня завершился этап тестирования работы с онлайн-кассами АТОЛ но Ethernet.

На сайте представлена сборка кассового сервера QKkmServer для ОС Windows с поддержкой этого новшества.
http://rnditsoft.ru/files/QKkmServer/QKkmServerSetup-5.17.10.13.exe

Для остальных ОС сборки будут размещены в самое ближайшее время.

Для использования данной возможности требуется в файле настроек qkkmserver.cfg.xml указать IPAddress=адрес_кассы и IPPort=порт_если_отличен_от_5555.

Успешных интеграций!
Сегодня на сайте произведено обновление документации - исправлены ошибки в описаниях команд и добавлены описания новых, которые вошли в версию 5.17.10.20 кассового сервера.

Версия 5.17.10.20 несет следующие новшества/усовершенствования:
1. для ККМ Штрих-М изменен режим работы на устройствах с малым таймаутом (100мс). Связь должна стать постабильнее, особенно при снятии отчетов.

2. для ККМ Штрих-М и АТОЛ добавлено получение номера чека внутри смены.

3. для АТОЛа добавлено получение фискального номера, даты и фискального признака последнего чека

4. для АТОЛа добавлено автоопределение модели, т.е. теперь в фале настроек не обязательно прописывать код модели model. Только в случае, когда "что-то пошло не так"...

5. для АТОЛа исправлена работа при указании налога. Он теперь корректно обрабатывается. Обратите так же внимание, что ККМ АТОЛ, в отличии от Штрих-М, умеют работать только с одним налогом на чек (Штрих-М с четырьмя). Поэтому нужный номер налога из настроек следует указывать в первом параметре (tax1).

6. в СуперВизор в окно "Настройки" добавлена кнопка "Сброс сетевого обмена" - если связь с сервером заданий подвисла/произошла рассинхронизация можно попробовать исправить ситуацию таким способом.

7. в СуперВизоре при возникновении ошибок для облегчения их восприятия пишется текст ошибки в строке состояния (внизу окна). Особенно критично если нарушен обмен с сервером.

8. В "Тест драйвера" добавлена возможность запроса номеров документов.

А так же ряд мелких фиксов и исправлений, направленных на улучшение работы
Версия 5.17.12.11
1. Кассовый сервер: если отсутствует файл настроек qkkmserver.cfg.xml то запускается механизм автоматического определения настроек подключенного оборудования.
Сначала ищется оборудование АТОЛ (перебираются все возможные порты и скорости). Если ККМ АТОЛ не найдена, то запускается поиск ККМ Штрих-М (так же перебираются все порты и скорости).
Таким образом оборудование всегда будет найдено, даже без какого-либо конфигурирования.
Однако, настоятельно рекомендуется в итоге создать файл конфигурации, т.к. это ускорит поиск ККМ на ПК, где есть много портов (перебор занимает определенное время).

2. Исправлен ряд некритичных ошибок.
Вниманию клиентов!
Ошибка в прошивке ккм штрих-м
https://m.facebook.com/story.php?story_fbid=1646169612117569&id=100001736397653
Обновление СуперВизора 5.17.12.21
1. Добавлена поддержка пользовательских прайс-листов в XML-формате. Для запроса в настройки вынесен адрес, по которому ВебСервер должен вернуть прайс. Идентификация производится традиционно на основании kkm_id
Сам прайс отображается в момент добавления товара в "Интерфейсе кассира".
2. В файловом протоколе управления СВ добавлены файлы-результаты исполнения команд. Именуются они так же как и исходный файл-запрос, но с добавлением расширения .answer.
Внутри -- хорошо известная по WebAPI структура: набор строк как в оригинальном файле-задании с кодом и тектом результата, а так же кодированном Base64Url полном ответе QKkmServer в соответствии с XmlAPI.
Крайне удобно использовать для получения результата печати чека во внешнюю инфо-систему, получения фискального признака и прочих атрибутов.
3. В Интерфейсе кассира добавлены кнопки изменения количества товаров( + - ).
4. При работе в RDP-сессиях вылез неприятный момент: ОС кеширует файлы и при медленном канале наблюдается эффект, когда СВ напечатал уже чек, послал ОС команду на удаление файла, а файл ещё не удалился. И СВ при новом сканировании каталога с файлами-заданиями опять видит этот файл и повторяет печать чека.
Для борьбы с этим введена опция, которая не допускает исполнения двух раз подряд файла-задания с одним и тем же именем (даже с разным содержимым).
Сегодня произведена актуализация сборок для распберри и центос.

Обращаю внимание, что поддепржка Raspbian7 прекращена. Актуальной является текущая 9-я версия.
http://rnditsoft.ru/files/QKkmServer/azskit2-qkkmserver-5.18.02.20_raspbian-9_armhf.deb

http://rnditsoft.ru/files/QKkmServerSupervisor/azskit2-qkkmserver.supervisor-5.18.02.20_raspbian-9_armhf.deb

Добавлена команда текстового протокола

print_clishe;

print_reklama;
После долгого затишья рады представить анонс новой версии кассового сервера.

Изменения достаточно масштабны, так что прошу обратить внимание на данный пост:

1. Ядро QKkmServer и графический клиент SuperVisor теперь объединены в единый комплекс. Ядро теперь работает в UserSpace, т.е. ему не нужны права администратора для работы.

2. Отказ от использования ядра как службы.
Некоторые антивирусы неправильно реагировали на такое поведение и блокировали работу сервера.
Теперь ядро стартует как процесс внутри СВ.

3. Появилась возможность осуществлять перезапуск драйвера (ядра) из СВ (в случае зависания кассы или необходимости провести некие работы). Добавлен соответствующий пункт меню.

4. Добавлен "сторож" соединения с кассой.
Если в течении 90 секунд нет ответа от ККМ, то производится автоматический перезапуск драйвера.
Это позволяет бороться с зависаниями связи по вине "сильно китайских" юсб-хабов.

5. Переработан диалог настроек. Настройки структурированы по назначению.

6. Добавлен конфигуратор для настроек кассового сервера.
Если СВ и ядро установлены на одном ПК, то достаточно выбрать модель ФР, порт и скорость работы (или только модель -- остальное определится автоматом) и нажать "Применить". Настройки сами запишутся в qkkmserver.cfg.xml + произойдет перезапуск драйвера.

7. Добавлена работа с транспортом FileAPI via FTP.
Теперь можно получить у нас логин-пароль от FTP и использовать этот канал для обмена данными с СуперВизором.
Это более надежное решение чем работа через NFS (не будет ситуации с дубляжом файла по причине кеширования его ОС).

8. Убран один из давнишних багов, приводящий к падению СВ.
Тестирование показало отсутствие падений СВ на стенде и у клиентов, участвовавших в тестировании.

9. изменен механизм лицензирования.
Теперь каждое ПО имеет уникальный идентификатор. Посмотреть можно в меню "Лицензия".
Для ядра этот идентификатор печатается на кассовой ленте.

10. в тестовую эксплуатацию вводится автоматическое обновление ПО.
При старте ПО СуперВизор (для ОС Windows. Остальные - в процессе тестирования) проверяет наличие обновлений и при наличии показывает сообщение об обновлении.
В случае согласия на обновление - автоматически устанавливает его.
Это позволяет поддерживать ПО в актуальном состоянии.

http://rnditsoft.ru/files/QKkmServer/QKkmServerSetup-5.18.03.18.exe

Обращаю внимание, что в связи с вводом абсолютно нового сервера лицензий потребуется новая генерация лицензий для ваших ККМ! Прошу при обновлении учитывать данный момент и заложить некоторое время на запрос-ответ по лицензии.
Юмор

Подготавливая очередную инструкцию для работы с ККМ заметил сходство работы кассира и игромана на приставке.
Спустя продолжительное время вышло обновление программы Кассовый сервер.

1. В Windows-инсталлятор добавлена установка драйверов COM-портов ККМ (VCOM)
2. Открытие чека с непустым именем кассира приводит к смене имени кассира №30 (системного администратора) на указанное в параметре
3. Добавлены типы чеков ПОКУПКА и ВОЗВРАТ ПОКУПКИ. Соответствующий тип указывается при открытии чека.
4. Исправлено поведение программы при печати очень больших слип-чеков. Главное чтобы длительность операции укладывалась в 5 минут.
5. Добавлена поддержка перенаправления в ответах сервера в URL WebAPI.
6. Добавлена поддержка Session token.
7. Критические исправления в модуле лицензирования.
8. Важные исправления в модуле очереди печати чеков.
9. Исправлена работа с ККМ АТОЛ при пробитии малых сумм.
10. В инсталлятор LINUX добавлена поддержка размещения ярлыка на ПО в системном меню.
Вышла новая версия кассового сервера 5.18.06.14
В данной версии реализован новый механизм взаимодействия между браузером и СуперВизором. Теперь можно использовать AJAX-запросы к СВ для исполнения команд протокола FileAPI!
Встроить поддержку кассы в Web-приложение теперь ещё проще-простого. А для демонстрации возможностей нами подготовлена ДЕМО-страница http://rnditsoft.ru/test_ajax.html.

Сопутствующие изменения:
1. исправлена ошибка в работе с налогами в драйвере АТОЛ. (Без НДС - это 6-й код налога по-умолчанию)
2. Реорганизация расположения файлов и папок.
3. ряд фиксов незначительного плана.
http://rnditsoft.ru/files/QKkmServer/QKkmServerSetup-5.18.06.14.exe
Версия 5.18.07.04

http://rnditsoft.ru/files/QKkmServer/QKkmServerSetup-5.18.07.04.exe

1. В СВ если пароль пустой, то он не запрашивается (поведение по-умолчанию).
2. В Интерфейсе кассира переделаны ещё раз налоговые коды... Теперь они соответствуют большинству прошивок и ФФД (хотя гуляет столько вариантов, что самый правильный - смотреть какой код зашит у вас в аппарате).
3. ИЗМЕНИЕ В ПРОТОКОЛЕ команда SetTLV.
Принимает теперь все базовые типы параметров (массив, строка, числа).
Изменился формат команды. Теперь это tag, type,data

или
set_tlv;tag;type;data;

Передача адреса
set_tlv;1008;5;lyboy_mail_adress@domain.com;

type принимает значения в соответствии с ФФД
0 - массив
1 - int8 (байт)
2 - int16 (2 байта)
3 - int32(4 байта)
5 - строка (utf8)

для тега 1055 (СНО) в HEX
01 - ОСН
02- упрощенная доходы
4-Упрощенная доходы - расходы
8 - ЕНВД
10 - ЕСХ
20 - ПСН
Так как разработка ведётся с использованием эмулятора ФН, который не позволяет задать несколько систем налогообложения одновременно, большая просьба к сообществу: протестируйте работу с TLV в разных режимах.
Буду рад каждому отклику. Заранее Спасибо.
1502550086
1530775356