31
правка
Изменения
→Настройка ФР Штрих-М
Модуль интеграции с фискальным регистратором (печати кассовых чеков) предназначен для обеспечения возможности взаимодействия системы "Курьерская служба 2008" MeaSoft с фискальными регистраторами. Он представляет собой [http://ru.wikipedia.org/wiki/Службы_Windows службу Windows], которая подключается к БД системы, и к фискальному регистратору. Одна установка службы поддерживает один регистратор. При этом система в целом поддерживает неограниченное количество регистраторов, в том числе и зарегистрированных на одно юр. лицо, посредством установки необходимого количества модулей интеграции с ФР.
Модуль печати кассовых чеков состоит из следующих файлов:* CheckServiceExe.ini - Конфигурационный exe — исполняемый файлслужбы;* CheckServiceExe.ini — конфигурационный файл;* CheckServiceExe.log — файл журнала. Если его нет, создается при запуске службы.
Чековая служба нужна, если:
* установлена касса Штрих-М — для печати чеков в офисной системе и мобильном приложении курьера.
:При закрытии заказа курьером в мобильном приложении для печати чеков нужен [[Настройка модуля автоматизации|модуль автоматизации]], который будет отправлять чеки, поскольку прямой связи мобильного приложения с Штрих-М нет;
* установлена касса LIFE PAY — для ручной печати чека из офисного приложения.
=Установка чековой службы= Настройка ==Откройте файл CheckServiceExe.ini любым текстовым редактором, например, [http://ru.wikipedia.org/wiki/Блокнот_(программа) блокнотом].
# Скопируйте файл CheckServiceExe.exe в любую папку на компьютере:#* для кассы Штрих-М — на тот компьютер, к которому физически подключена касса;#* для кассы LIFE PAY – на любой компьютер, потому что у LIFE PAY облачная фискализация.# Создайте ярлык для файла CheckServiceExe.exe.# В файле, свойствах ярлыка на вкладке '''Ярлык''' в разделе "поле '''Объект''' после имени файла добавьте <code>/install<nowiki/code>:[COMMON[Файл:Установка чековой службы.png|none]<]# Сохраните и запустите ярлык от имени администратора. В результате служба появится в списке служб. Для просмотра списка в контекстном меню '''Мой компьютер''' выберите '''Управление''' > '''Службы'''.# В папке с чековой службой создайте INI-файл или загрузите шаблоны: [https://courierexe.ru/download/checkservice/lifepay/nowiki>"CheckServiceExe.ini LIFE PAY], Вы найдете (если не найдете [https://courierexe.ru/download/checkservice/shtrih/CheckServiceExe.ini Штрих- их можно добавить) следующие М].# Откройте INI-файл, укажите [[#Настройка чековой службы |параметры:]] для своей базы и сохраните изменения.# В контекстном меню элемента '''Мой компьютер''' выберите '''Управление''' > '''Службы''', убедитесь, что режим запуска службы установлен в положение «Автоматически», и запустите чековую службу. Если установка и настройка прошли успешно, то первый чек будет сразу распечатан на кассе.
Можно установить несколько независимых экземпляров службы на одну систему, переименовав exe-файл. Название службы в Windows, файлы настроек и логов будут иметь соответствующие имена. = Настройка чековой службы =Откройте файл CheckServiceExe.ini любым текстовым редактором, например [http://ru.wikipedia.org/wiki/Блокнот_(программа) блокнотом]. В разделе <nowiki>[COMMON]</nowiki> измените или добавьте следующие параметры: {|class="wikitable" style="width: 80%;" "background-color:#ffffff;"!style="width: 20%;"|Параметр!Описаниеstyle="width: 40%;"| Штрих-М!style="width: 40%;"| LIFE PAY|-|<code>Param</code><br>Дополнительные параметры фискального регистратора|Пример: <code>Param=30, 6</code><br>Обязательный параметр, значения указываются через запятую. <br>Первое значение — пароль пользователя ФР, по умолчанию 30. Второе значение — скорость работы ФР. Чтобы узнать скорость, используйте утилиту «Тест драйвера», которая поставляется с кассой: откройте утилиту, нажмите на кнопку '''Настройка свойств''' > '''Поиск оборудования'''. Отобразится подключенный ФР и его <spoiler text="скорость работы">Принимаемые значения параметра '''Скорость порта''':<br>1 — 4800 кбит/с,<br> 2 — 9600 кбит/с,<br> 3 — 19200 кбит/с,<br> 4 — 38400 кбит/с,<br> 5 — 57600 кбит/с,<br> 6 — 115200 кбит/с.<br>Значение параметра скорости должно совпадать с установленным режимом самого фискального регистратора. По умолчанию он настроен на скорость 115200, однако иногда этот параметр необходимо уменьшить для повышения стабильности работы регистратора. Также были случаи сброса скорости в положение 4800 пользователями, что возможно при включении ФР с зажатой кнопкой промотки чековой ленты (см. [http://courierexe.ru/download/ext_manual/Shtrih_user_manual.pdf руководство пользователя]). Таким образом, начальная настройка в этом режиме исключит вероятность отказа системы из-за ошибочного сброса настройки в ФР. Скорость работы в ФР можно задать в утилите «Тест драйвера» в окне «Настройка свойств» кнопкой '''Установить параметры'''.<br>Например, чтобы установить для модуля настройки подключения к ФР следующие параметры: пароль доступа — 30, скорость порта — 4800, укажите строку: <br> Param=30, 1</spoiler>.|Пример: <code>Param=91defdc4556fc182680982e1b2am8d6f, 79011111111,,64</code><br>Необязательный параметр. Если значения указаны в [[Фирмы#Добавление фискального регистратора|фискальном регистраторе]], можно оставить строку в таком виде: <code>#Param=</code><br>Первое значение — 32-значный АПИ-ключ из ЛК LIFE PAY.<br>Второе значение — номер телефона без +, на который зарегистрирован ЛК LIFE PAY. <br>Третье значение — по умолчанию пустое, но можно указать путь к АПИ лайфпей (тикет 76001). Укажите путь https://sapi.life-pay.ru/cloud-print/ - для ФФД 1.05 И 1.1 и путь https://sapi.life-pay.ru/cloud-print-ffd1_2/ для ФФД 1.2. <br>Четвертое значение — агентский признак, если есть.|-|<code>Port</code><br>Номер [http://ru.wikipedia.org/wiki/Последовательный_порт COM-порта] фискального регистратора. Если регистратор подключен через [http://ru.wikipedia.org/wiki/USB USB-порт], драйвер эмулятора порта все равно создает виртуальный COM-порт, номер которого устанавливается в его свойствах (в [http://ru.wikipedia.org/wiki/Диспетчер_устройств диспетчере устройств]), а также номер порта меняется в зависимости от разъема USB, к которому подключено устройство.|Пример: <code>Port=5</code><br>Обязательный параметр.|Пример: <code>Port=1 </code><br>Необязательный параметр, можно указывать значение 1.|-|<code>CashRegister</code><br><rspoiler text="Код фискального регистратора">Чтобы его узнать, выберите в главном меню системы пункт '''Справочники''' > '''Фирмы''', откройте карточку фирмы, на которую зарегистрирован фискальный регистратор, перейдите на закладку '''Устройства''', убедитесь, что в выпадающем списке выбрано значение '''Фискальные регистраторы'''. В списке фискальных регистраторов вы увидите код. Если запись для регистратора еще не создана или вы планируете установить дополнительную кассу, добавьте новый ФР.</rspoiler> в базе данных.|colspan="2" |Пример: <code>CashRegister=2 </code> <br> Обязательный параметр.<br> <spoiler text="Что еще можно указать">Можно указывать наборы обслуживаемых ФР двумя способами:* через запятую или тире или их комбинации указать несколько кодов;* условие SQL-запроса. Например <code>AND cr.DeviceType=3</code> для всех доступных ФР LIFE PAY. Тогда они все будут обслуживаться одним объектом подключения к ФР. Что это значит: для Штрих-М у объекта открыт COM-порт при старте, и поменяться он не может. Все чеки пойдут в один ФР. Для LIFE PAY — в созданный объект передается поле '''Серийный номер''', откуда он берет авторизацию, т.о. чеки могут отправляться в различные аккаунты. Главное, что тип кассы у всех ФР должен быть один — служба не сможет переключиться например с LIFE PAY на ApiShip.</spoiler>
|-
|<code>ServerName</code><br>Имя или IP-адрес сервера, на котором находится БД MeaSoft. Сервер должен быть доступен по сети с компьютера, к которому подключена касса.|Имяcolspan="2" |Пример: <code>ServerName=srv01 </адрес сервераcode> <br> Обязательный параметр.
|-
|<code>DatabaseName|</code><br>Имя базы данных (по-умолчанию - «courier»)|colspan="2" |Пример: <code>DataBaseName=courier")</code> <br>Обязательный параметр.
|-
|<code>UserName|</code><br>Имя пользователя базы данных|colspan="2" |Пример: <code>UserName=check</code> <br>Обязательный параметр. Пользователя check нужно создать для определения запросов чековой службы, для этого обратитесь в техподдержку.
|-
|<code>Password|</code><br>Пароль пользователя базы данных|colspan="2" |Пример: <code>Password=password </code> <br>Обязательный параметр.
|-
|<code>DBPort|</code><br>Порт базы данных (по-|colspan="2" |Пример: <code>DBPort =3306 </code> <br>Обязательный параметр. По умолчанию - 3306). Проверить порт можно в любом ярлыке офисной программы.
|-
|CashRegister<code>Device</code>|Код фискального регистратора в базе данных1 — ФР Штрих-М (по умолчанию),<br> 2 — чековый принтер Штрих-М (протокол Epson ESC/P)|3 — сервис фискализации LIFE PAY <br> 9 - WebKassa
|-
|Port<code>AgentFlags</code><br>Флаги тега 1057 для передачи в кассу при агентском чеке|Номер [httpcolspan="2" | Пример: <code>AgentFlags=4<//rucode><br>Обязательный параметр, если курьерская служба — платежный агент. Чтобы не передавать признаки платежного агента (если в кассе нет этого признака), укажите 0. Если параметр не указан, передается значение по умолчанию 4.wikipedia<spoiler text="Возможные значения">* 1 — банковский платежный агент,* 2 — банковский платежный субагент,* 4 — платежный агент,* 8 — платежный субагент,* 16 — поверенный,* 32 — комиссионер,* 64 — агент.org/wiki</Последовательный_порт COM-порта] фискального регистратораspoiler>
|-
|Param<code>PrintKurier</code>|Дополнительные параметры фискального регистратораcolspan="2" |1 — печать ФИО курьера на чеке.
|-
|PrintKurier<code>PrintSeller</code>|1 - Печать ФИО курьера colspan="2" |1 — печать заказчика на чеке.<br> Если включено, печатается юр. наименование, ИНН и телефон клиента.<br>В [[Клиенты и партнеры#Реквизиты|карточке клиента]] на вкладке '''Реквизиты''' должно быть заполнено поле '''Полное название'''.<br> Этот параметр никак не связан с тегами фискального документа 1225 и 1226 и просто выводит текстом на бумагу дополнительный текст там, где это возможно.
|-
|PrintSeller|1 - Печать заказчика <code>PrintCashier</code><br>Печатать имя кассира на чеке(тег 1021). По умолчанию 1. Если включено|colspan="2" |1 — кассир берется из строки чека, <br>0 — не печатается юр,<br> другое число — код нужного сотрудника. наименование, ИНН и телефон клиента<br>Можно писать подзапрос вида <code>if(a. Чтобы это работалоcl=1, необходимо5, чтобы в карточке клиента было заполнено поле '''"Полное название"''', на вкладке '''"Реквизиты"'''6)</code>.
|-
|<code>EmailPriority</code>|1 - Отправка colspan="2" |1 — отправка чека по e-mail приоритетнее , чем SMS.
|-
|<code>AddStr</code>|colspan="2" |Пользовательская строка, которая печатается на всех чеках.
|-
|}
=Настройка ФР Штрих-М == Описание значений ===[[Файл:ShtrihTableList.png|thumb|100px|right]]'''CashRegisterВнимание.''' - Код фискального регистратора в базе данных. Чтобы узнать, выберите в главном меню системы пункт "Справочники" - "Фирмы", Откройте двойным щелчком карточку фирмы, на которую зарегистрирован фискальный регистратор, перейдите на закладку "Фискальные регистраторы". Вы увидите список фискальных регистраторов. При необходимости их можно создать здесь жеДля использования программы «Тест драйвера» нужно остановить службу «CheckService».
'''Внимание'''. Данные фискального документа хранятся в фискальном накопителе 30 дней, после этого срока посмотреть документ регистрации (перерегистрации) в ФН будет невозможно.
=== Подключение логирования драйвером Штрих-М ===
Чековая служба предусматривает включение логирования формирования чека средствами драйвера Штирх-М. Для этого в файле параметров конфигурации необходимо указать в секции
[COMMON] для переменной LogShtrih значение "T" или "1". Отключить логирование указать "F" или "0". Путь по которому сохраняется лог, можно посмотреть в настройках драйвера Штрих-М: “Дополнительные параметры” -> Ставим галочку “Вести лог” и указываем путь к файл лога.
=== Проверка корректности передачи тегов в ОФД ===
<gallery style="float: right" mode="nolines">
Shtrih LastDoc.png
Shtrih check tags.png
</gallery>
Убедиться в корректности передаваемых в ОФД значений тегов можно следующим образом: Сначала узнаем номер фискального документа — его можно посмотреть в чеке (как бумажном, так и электронном), или в приложении «Тест драйвера» в разделе «11. ФН», в закладках «Состояние ФН», нажмем кнопку «Запрос статуса ФН» и посмотрим «Номер последнего ФД» (см. скрин-шот). Далее на закладке «Данные» введем этот номер в поле «№Док.», и нажмем «Прочитать документ». В результирующем тексте убеждаемся в отправке тегов 1008, 1057, 1073, 1171, 1215 и прочих (см. скрин-шот).
Теги 1225 и 1226 (Наименование и ИНН поставщика) поддерживаются Штрих-М в прошивке от 24.10.2018 и версией чековой службы от 19.03.2019
К сожалению, эти передаваемые данные далеко не всегда отображаются в бумажном и/или электронном чеках, это зависит от самого ФР и/или ОФД соответственно. Однако по данной инструкции мы можем убедиться, что со своей стороны передали все данные, необходимые для соответствия 54-ФЗ.
= Удаление службы=
Для корректного удаления службы запустите исполняемый файл CheckServiceExe.exe с параметром командной строки <code>/uninstall</code>.
= Примечания =
Поскольку при запуске служба открывает подключение к фискальному регистратору, и использует его все время своей работы, другие программы (например «Тест драйвера» и т. д.) при попытке подключения выдадут ошибку «Невозможно открыть порт, он используется другим приложением». Чтобы избежать этого, остановите службу модуля на время использования других программ.
= Устранение неполадок =
1. В случае сбоя работы кассы ошибку можно посмотреть в файле CheckServiceExe.log
2. Для включения логирования от драйвера Штрих-М в чековой надо установить флаг fDriver.LogOn:= true. По умолчанию false
3. Ошибки условно можно разделить на 3 категории:
{|
!ЗначениеОшибка!Скорость (кбит/сек)Симптомы!Возможные причины!Способы устранения
|-
|1Нет связи с сервером|4800Касса не печатает, в логе сообщения вида «Unknown MySQL server host ''» или «Can’t connect to MySQL server on…».|Неверно настроено подключение к серверу, не работает сервер, сеть.|Проверить настройки подключения в файле CheckServiceExe.ini, проверить доступность сервера с этого компьютера.
|-
|2Нет связи с фискальным регистратором|9600Касса не печатает, в логе сообщения вида «Нет связи код: −1, Режим: 0, Подрежим: 0»|ФР Выключен, ФР подключен не к тому разъему, ФР настроен не на ту скорость|Проверьте, что ФР включен, подключен к компьютеру, именно в тот порт, в котором он настраивался. Попробуйте отключить службу чеков, открыть программу «Тест драйвера», выполнить поиск оборудования. Если она находит ФР — сравнить настройки подключения, найденные тестом драйвера с тем, что прописано в CheckServiceExe.ini. В единичных случаях проблема может заключаться в драйвере переходника COM-USB, попробуйте удалить этот переходник в диспетчере устройств windows, и попросить его поискать устройства заново.
|-
|3Некорректная работа фискального регистратора.|Касса печатает заголовок чека, потом ошибку, потом надпись «Чек аннулирован», и так бесконечно по кругу.|Аппаратная ошибка ФР, некорректный чек, сформированный системой.|19200Если текст ошибки, который печатается на чеке (он же сохраняется и в лог-файл) содержит информацию об [http://ru.wikipedia.org/wiki/ЭКЛЗ ЭКЛЗ] (например «ЭКЛЗ: Неверные дата или время код: 168, Режим: 3, Подрежим: 0») — нужно обратиться в компанию, с которой у вас заключен договор о поддержке кассы, сообщить им текст ошибки. В остальных случаях — обратиться в службу поддержки MeaSoft для выяснения причины и ее устранения.
|-
|4|38400|Ошибка при формировании отчета без гашения (X-отчет)|5|57600|Касса печатает X-отчет бесконечно по кругу. В протоколе работы чековой службы выдается сообщение «Команда не поддерживается в данном режиме код: 115, Режим: 6, Подрежим: 0».|6В кассовом аппарате не установлены дата и время.|115200Необходимо через драйвер ФР установить текущую дату и время, затем cохранить настройку. В остальных случаях — обратиться в службу поддержки MeaSoft для выяснения причины и ее устранения.
|}
В таком случае покупатель получает два чека: первый чек выдаётся, когда клиент вносит предоплату, а второй чек — когда он получает товар. Подробнее см. [https://astral.ru/articles/ofd/12791 в статье].
== Отчет по секциям =В офисном приложении ===Чековая служба не запрашивает печать бумажного чека, если заказ доставлен курьером: бумажный чек тратит бумагу, и если бумага закончится, то печать чеков остановится. А эту бумагу курьер все равно получателю отдать не сможет.
Потенциально могут быть еще небольшие различия в заполнении данных агента, поставщика. Если есть пожелания к конкретным полям, обращайтесь.
Чтобы отключить печать бумажных чеков на фискальном регистраторе Штрих-М:
# Отключите чековую службу, чтобы она не мешала работе программы «Тест драйвера ФР». Для этого в контекстном меню элемента «Этот компьютер» выберите '''Управление'''. Откроется оснастка Windows «Управление компьютером». В панели слева разверните узел «Службы и приложения», выберите элемент «Службы», выделите в списке службу '''CheckService''' и нажмите '''Остановить службу'''.[[Файл:Настройка ФР управление.png|none|900 px]]
# Запустите программу «Тест драйвера ФР».
# Нажмите на кнопку '''Настройка свойств'''. Откроется окно «Свойства».[[Файл:Настройка ФР драйвер.png|none]]
# Нажмите на кнопку '''Проверка связи''', чтобы проверить связь с кассой. Если в поле '''Код ошибки''' отобразился модуль кассы, все хорошо. Если отобразилась ошибка, например «Нет связи», в этом окне в поле '''Подключение''' выберите значение '''Локально''', в поле '''COM порт''' выберите порт, к которому подключена касса. Посмотреть номер порта можно через диспетчер устройств.
# Нажмите на кнопку '''Таблицы'''. Откроется окно «Таблицы».
# Найдите в списке таблицу 17 «Региональные настройки» и дважды щелкните по элементу. Откроется окно «Региональные настройки».
# В строке «Поле 7. Rus не печатать документ» установите значение 2 и нажмите ENTER.
# Закройте все окна программы «Тест драйвера ФР».
# Включите чековую службу.
Чтобы отключить печать чеков на других ФР, заклейте датчик кассовой ленты скотчем, бумажную ленту достаньте.
[[Файлhttps:Kassa3//docs.png|500px]google.com/spreadsheets/d/19Mn5syH70XwFdg6Pe2fhYM17SNHGuOJDvQEQXHxSz54/edit#gid=0 Список ошибок протокола Штрих и их решение]
== Удаление Ошибка программирования реквизита 1226 ==Для корректного удаления службы запустите исполняемый файл "CheckServiceExe.exe" с параметром командной строки " /uninstall"Ошибка тега 1226 означает, что не был передан ИНН поставщика.
ИНН передается, если:
# Передан признак агента.
# ИНН поставщика указан в карточке клиента в Measoft или в контейнере вложения в [[API#Описание элементов для оформления заказа|API-запросе]] (параметр <code>suppINN</code>).
# Наименование поставщика указано в карточке клиента в Measoft (поле '''[[Клиенты и партнеры#Реквизиты|Полное наименование]]''') или в контейнере вложения в API-запросе (параметр <code>suppcompany</code>).