Всех приветствую! Как программно доработать документ ЧекККМ на проверку подключения кассы. Если подключение отсутствует, то он не должен проводиться. Столкнулся с тем, что иногда первый чек оформляется при отключенной кассе, и в конце при закрытии смены тоже затягивается в документ ОтчетККМ.
В модуле формы сначала документ проводится, а потом же направляется в ККМ. Или неверно понимаю алгоритм работы?
В модуле формы сначала документ проводится, а потом же направляется в ККМ. Или неверно понимаю алгоритм работы?
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1)
Результат пробития возвращается в документ в реквизиты
ЧекПробитККМ
НомерЧекаККМ
ЧекПробитККМ = глФРПечататьЧек
соответственно закрытие смены должно "собирать" чеки только где ЧекПробитККМ = 1 и НомерЧекаККМ <> ""
В модуле формы сначала документ проводится, а потом же направляется в ККМ. Или неверно понимаю алгоритм работы?
Результат пробития возвращается в документ в реквизиты
ЧекПробитККМ
НомерЧекаККМ
ЧекПробитККМ = глФРПечататьЧек
соответственно закрытие смены должно "собирать" чеки только где ЧекПробитККМ = 1 и НомерЧекаККМ <> ""
Так вот получается, что если ККМ не подключена физически в силу разных причин (кабель оторван, свет отключен), документ ЧекККМ физически создался и провелся. А я пытаюсь где-то на этом уровне проверку сделать, например вот так:
ИначеЕсли глФРВкл=0 Тогда
Предупреждение("Фискальный регистратор не подключен!",60);
Возврат;
ИначеЕсли глФРВкл=0 Тогда
Предупреждение("Фискальный регистратор не подключен!",60);
Возврат;
(3) ну дак создать в глобальном модуле
и перед проведением проверять подключение
Функция ПодключитьсяКФР() Экспорт
Рез = 0;
Если глФРВкл = 1 Тогда
Параметры = СоздатьОбъект("СписокЗначений");
Параметры.Установить("Процесс" ,"подключить");
Параметры.Установить("Объект" , глФР);
РезТекст = глОборудованиеКоманда("ФР", глФРОбработка, Параметры);
Если ПустоеЗначение(РезТекст) = 0 Тогда
Сообщить(РезТекст);
Иначе
Если Параметры.Получить("Результат") = 0 Тогда
Сообщить("Фискальный регистратор: ошибка при подключении");
Сообщить(Параметры.Получить("ОписаниеРезультата"));
Иначе
Рез = 1;
КонецЕсли;
КонецЕсли;
КонецЕсли;
Возврат Рез;
КонецФункции // ПодключитьсяКФР()
Показатьи перед проведением проверять подключение
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот