Механизм Очереди чеков ККТ в программах 1С:Розница и 1С:Управление нашей фирмой предназначен для асинхронной работы с торговым оборудованием. Это позволяет системе продолжать работу, даже если касса временно занята или недоступна. Однако часто пользователи сталкиваются с тем, что чеки «застревают» в этой очереди, а регистры сведений начинают бесконтрольно расти, замедляя работу базы данных. В этой статье мы подробно разберем, почему это происходит, как восстановить печать, выполнить настройку торгового места на базе РМК и правильно очистить историю операций.
Для начала проанализируем ситуацию: почему 1С вместо прямой печати отправляет документ в очередь? Основная и самая распространенная причина — временная недоступность кассового аппарата. Как только драйвер оборудования сообщает системе о потере связи, 1С мгновенно переключает режим печати на асинхронный.
Рассмотрим основные технические факторы:
Проанализируем опыт коллег: наиболее стабильным решением является перевод кассовых аппаратов с интерфейса USB на Ethernet (TCP/IP). Разберем, почему это помогает:
Сетевой протокол обмена данными гораздо устойчивее к кратковременным помехам. При подключении по IP-адресу касса становится самостоятельным узлом сети, что исключает проблемы с «засыпанием» USB-портов и конфликтами драйверов на конкретном рабочем месте. Если ваша модель ККТ поддерживает установку сетевого модуля или имеет разъем LAN, настоятельно рекомендуем выполнить этот переход или использовать независимую печать чеков на ККМ АТОЛ напрямую через драйвер.
Самая сложная ситуация возникает, когда чек получает статус Фискализируется. В этом состоянии кнопка «Фискализировать» в форме очереди часто становится неактивной. Посмотрим на логику системы: статус Фискализируется означает, что 1С уже отправила команду на пробитие, но еще не получила ответа «Успех» или «Ошибка».
Важно: Это защитный механизм. Система блокирует повторную отправку, чтобы не допустить двойного фискализации, не допуская двойного списания денег по кассе.
Если вы убедились, что физически чек из кассы не вышел и в личном кабинете ОФД его нет, но статус в 1С мешает работе, выполним следующие шаги:
ГрупповоеИзменениеРеквизитов.ОчередьЧековККТ.Новый или Ошибка.Со временем регистр ОчередьЧековККТ может раздуться до огромных размеров, что приводит к увеличению объема базы данных. В типовых конфигурациях предусмотрено штатное средство очистки — регламентное задание ОчисткаИсторииОперацийОчередиЧеков.
Рассмотрим по шагам, как его настроить и почему оно может не срабатывать:
Очистка истории операций очереди чеков.Почему задание может не удалять записи? Проанализируем условия работы этого задания. Оно удаляет записи только при соблюдении двух условий одновременно:
Завершен (то есть чек успешно пробит).Если в вашей очереди висят записи со статусами Фискализируется или Ошибка, регламентное задание их не тронет, так как они считаются «проблемными» и требующими вмешательства администратора. Чтобы очистить такие записи, их сначала нужно перевести в статус Завершен (если чек пробит) или удалить вручную через групповую обработку, предварительно сверившись с данными кассы.
Посмотрим, где регулируется срок очистки. В 1С:Розница эти настройки часто скрыты в параметрах подключаемого оборудования. Проверьте путь:
Администрирование — Подключаемое оборудование — Правила фискализации чеков
Здесь можно указать количество дней, по истечении которых история операций будет считаться устаревшей. Если установить слишком большое значение, база будет расти. Оптимальный срок для оперативного учета — 7–14 дней.
Чтобы минимизировать проблемы с очередью чеков в будущем, рекомендуем придерживаться следующих правил:
Соблюдение этих рекомендаций и правильная настройка регламентных заданий позволят вам забыть о «застрявших» чеках и поддерживать базу данных в чистоте.