Как настроить и выполнять архивацию чеков ККМ в 1С:Управление торговлей

Программист 1С v8.3 (Управляемые формы) 1С:Управление торговлей Управленческий учет Торговля и дистрибуция
← На главную

В процессе розничных продаж в конфигурациях 1С (включая 1С:Управление торговлей, 1С:ERP и 1С:Комплексная автоматизация) формируется множество документов Чек ККМ. После закрытия смены их движения по регистрам остатков товаров и взаиморасчетов передаются в сводный документ Отчет о розничных продажах. Чтобы база данных не перегружалась избыточными движениями, выполняется архивация чеков. Однако запуск фонового регламентного задания в рабочее время может вызывать блокировки таблиц и снижать быстродействие системы. Разберем, как оптимизировать этот процесс и настроить архивацию чеков ККМ вручную или непосредственно при закрытии смены.

Что происходит при архивации чеков ККМ

Проанализируем механику работы механизма архивации в системе:

  1. Документ Чек ККМ переводится в статус Архивный.
  2. С документов снимаются движения по регистрам накопления (остатки товаров на складах, денежные средства и продажи), поскольку эти данные уже зафиксированы итоговым документом Отчет о розничных продажах.
  3. В зависимости от настроек программы табличные части чеков могут очищаться, либо чеки могут помечаться на удаление для дальнейшей очистки базы.

Важно понимать: типовое регламентное задание архивации по умолчанию производит поиск по всей базе данных среди всех закрытых смен, чеки которых еще не были переведены в архив. Если база эксплуатируется долго без регулярной архивации, фоновый процесс сканирует массив за длительный период, что создает пиковую нагрузку на СУБД.

Вариант 1. Включение автоматической архивации при закрытии кассовой смены

Если требуется, чтобы чеки архивировались сразу же в момент закрытия кассы кассиром без ожидания фонового задания, настроим штатный механизм системы. Рассмотрим пошаговый порядок действий:

  1. Перейдем в раздел НСИ и администрирование.
  2. Откроем пункт Настройка НСИ и разделов → Продажи.
  3. Развернем подраздел Розничные продажи.
  4. Установим флаг для опции архивации чеков ККМ и выберем режим архивации при закрытии кассовой смены.

При включении данной опции процедура архивации запускается линейно в момент проведения операции закрытия смены и обрабатывает только чеки текущей смены, не обращаясь к массиву исторических данных всей базы.

Вариант 2. Ручная архивация конкретной смены

Если регламентное задание отключено, а смена закрылась без автоматической архивации (например, при аварийном завершении сеанса), выполним точечную ручную архивацию. Разберем порядок действий:

  1. Перейдем в раздел Продажи → Кассовые смены (или через журнал документов розничных продаж).
  2. Откроем нужный документ Кассовая смена со статусом Закрыта.
  3. На командной панели документа нажмем кнопку Заархивировать чеки ККМ.

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

Вариант 3. Использование групповой обработки архивации

Для выборочной архивации за определенный период или по конкретной кассе ККМ воспользуемся специализированной системной обработкой:

  1. Откроем главное меню 1С и выберем Функции для технического специалиста (в более ранних версиях — Все функции).
  2. В разделе Обработки найдем и откроем обработку Архивирование и удаление чеков ККМ.
  3. В форме обработки укажем организацию, конкретную кассу ККМ и период, за который требуется архивировать документы.
  4. Выберем требуемое действие (архивация или удаление) и нажмем Выполнить.

Вариант 4. Оптимизация регламентного задания

Если в организации работает большое количество розничных точек и кассиры не должны тратить время на ожидание архивации при сдаче смены, правильным решением будет перенос регламентного задания на нерабочее время:

  1. Перейдем в раздел НСИ и администрирование → Обслуживание → Регламентные и фоновые задания.
  2. Найдем регламентное задание Архивирование чеков ККМ.
  3. Отключим дневное расписание (например, запуск каждые 15–30 минут).
  4. Настроим единовременный ночной запуск (например, в 03:00), когда в системе отсутствуют активные сеансы кассиров и менеджеров.

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

← На главную