В розничной торговле часто возникает ситуация, когда на кассовом узле необходимо установить второй компьютер с рабочим местом кассира (РМК) для подбора товаров и работы с покупателями, но фискальный регистратор (например, АТОЛ 55Ф) имеется только в одном экземпляре. Рассмотрим, почему типовая конфигурация «1С:Розница» версии 2.2 ограничивает такую работу и какими способами можно реализовать эту схему.
Выясним причину, по которой штатный механизм «1С:Розница 2.2» не позволяет сразу пробивать чеки с двух ПК на один фискальный регистратор:
Подключаемое оборудование жестко привязывается к конкретному элементу справочника Рабочие места (текущему ПК и сеансу Windows). Второе рабочее место не видит физически настроенный на первом ПК фискальный регистратор.Кассовая смена открывается в разрезе конкретной Кассы ККМ и конкретного Рабочего места. Если смена уже открыта на компьютере №1, РМК на компьютере №2 заблокирует проведение фискальных операций, требуя открыть смену для своего рабочего места.Если нет возможности дорабатывать конфигурацию, проанализируем организационную схему «Мягкий / Отложенный чек». Этот вариант позволяет разделить процессы консультации/подбора товара и финальной печати чека.
Преимущества: Конфигурация остается полностью типовой, обновления проходят без риска поломки логики кассового узла.
Если требуется пробивать чеки непосредственно со второго ПК без участия кассира на первом компьютере, разберем вариант доработки системы с помощью расширения.
В этом случае фискальный регистратор подключается к локальной сети магазина (по Ethernet/Wi-Fi) или настраивается доступ к нему по IP-адресу. Чтобы обзойти платформенные проверки, в расширении переопределяется логика инициализации оборудования при запуске РМК.
Рассмотрим пример кода в расширении, подменяющий текущее рабочее место при запуске кассового модуля:
&НаСервере
Процедура Расш1_ПриОткрытииФормыРМКПеред(Отказ)
// Подменяем рабочее место текущего сеанса на рабочее место основной кассы
РабочееМестоОсновное = Справочники.РабочиеМеста.НайтиПоНаименованию("ПК-Касса1");
Если ЗначениеЗаполнено(РабочееМестоОсновное) Тогда
ПараметрыСеанса.ТекущееРабочееМесто = РабочееМестоОсновное;
КонецЕсли;
КонецПроцедуры
Нюансы реализации: При запуске РМК на втором ПК система загружает настройки оборудования основного рабочего места. Однако следует учитывать, что при одновременной печати чеков с двух ПК может возникать временная блокировка порта драйвером. Для предотвращения ошибок в коде необходимо обрабатывать повторные попытки отправки команды фискализации.
Посмотрим на штатный механизм удаленной фискализации, появившийся в обновленных версиях «1С:Розница» (начиная с релизов 2.3.5+ и 3.0):
Очередь чеков ККТ.Этот способ является наиболее стабильным и правильным с точки зрения архитектуры БПО, так как исключает конфликты смен и монопольную блокировку порта драйвера.
При использовании одного фискального регистратора и одного денежного ящика двумя кассирами обратите внимание на следующие ограничения: