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