Как подключить один фискальный регистратор на два компьютера в 1С: выбор оборудования и решение проблем со сменами

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

В розничной торговле часто возникает ситуация, когда в рамках одного помещения работают два продавца-кассира на разных компьютерах, но объем продаж или бюджет не оправдывают покупку двух отдельных кассовых аппаратов. Логичное решение — приобрести один фискальный регистратор (ФР) и использовать его совместно. Однако на практике такая схема сталкивается со множеством аппаратных и программных трудностей.

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

Выбор оборудования: Атол, Штрих или альтернативные варианты?

Для стабильной работы одной кассы на два компьютера критически важен тип подключения. Традиционное подключение по USB к одному из компьютеров с последующей попыткой "расшарить" COM-порт средствами Windows часто приводит к постоянным сбоям драйверов, зависаниям очереди печати и потере связи. Поэтому лучшим выбором будет использование фискального регистратора с полноценным Ethernet (LAN) портом.

Проанализируем основные варианты ККТ, представленные на рынке:

  1. Атол 55Ф. Один из лучших вариантов для сетевой работы. Порт Ethernet присутствует "из коробки". Аппарат обладает высокой скоростью печати, надежным автоотрезчиком и отлично поддерживается всеми конфигурациями 1С. Основной минус — относительно высокая стоимость.
  2. Атол 30Ф. Бюджетный и очень популярный аппарат. Однако важно учитывать, что физического порта Ethernet (RJ-45) на борту Атол 30Ф нет. Его можно подключить по сети только при установке опционального беспроводного модуля (Wi-Fi/Bluetooth) или программным путем, о чем мы расскажем ниже.
  3. Штрих-М (и его аналоги). Сетевые модели семейства "Штрих" отлично работают по сети через интерфейс Ethernet. Если бюджет ограничен, можно рассмотреть аппараты от брендов RR-Электро или Retail (например, Retail-01F). Они стоят дешевле оригинальных "Штрихов", но работают на тех же стабильных драйверах и поддерживают сетевые протоколы.
  4. ВикиПринт. Данное оборудование относится к категории специфического. Практика показывает, что у этих моделей часто возникают проблемы при работе по USB, а также наблюдается нестабильная интеграция со старыми конфигурациями 1С на обычных формах. Для сетевой работы на два рабочих места этот вариант использовать не рекомендуется.

Как настроить совместный доступ к USB-кассе без Ethernet-порта

Если вы решили сэкономить и приобрести бюджетный аппарат без физического сетевого порта (например, Атол 30Ф), существует несколько способов сделать его доступным для двух компьютеров в локальной сети.

Способ 1: Использование Web-службы драйвера АТОЛ (ДТО 10)

Современные драйверы АТОЛ 10-й версии имеют встроенную службу «ATOL Fiscal Printer Web-Server». Рассмотрим алгоритм настройки:

  1. Физически подключаем кассу по USB к Компьютеру №1.
  2. На Компьютере №1 устанавливаем ДТО 10 и запускаем службу веб-сервера кассы. По умолчанию она начинает ожидать сетевые запросы на порту 16732.
  3. На Компьютере №2 в настройках торгового оборудования 1С выбираем подключение по TCP/IP, указываем локальный IP-адрес Компьютера №1 и порт 16732. Теперь Компьютер №2 может отправлять чеки на печать напрямую через сеть.

Способ 2: Использование стороннего ПО (KkmServer)

Программа KkmServer устанавливается на компьютер, к которому физически подключен ККТ, и превращает его в полноценный сетевой принт-сервер для касс. Она берет на себя управление очередью печати, что полностью исключает конфликты, когда оба кассира одновременно нажимают кнопку «Пробить чек».

Решение проблемы блокировки смен в 1С

Даже если вы идеально настроили сетевое подключение кассы, вы гарантированно столкнетесь с архитектурным ограничением самой системы 1С. В типовых конфигурациях логика работы с торговым оборудованием жестко привязана к справочнику «Рабочие места» (идентификатором которого выступает сетевое имя компьютера или специальный ID в системе).

Выясним причину конфликта:

  1. Кассир на Компьютере №1 открывает смену. 1С создает в базе документ «Смена ККМ» со статусом «Открыта» и привязывает его к рабочему месту Компьютера №1. Физическая касса переходит в режим открытой смены.
  2. Кассир на Компьютере №2 пытается пробить чек. 1С проверяет свое состояние и видит, что для рабочего места Компьютера №2 смена в базе данных не открыта. Программа пытается программно открыть смену на кассе, но физический фискальный регистратор возвращает ошибку: «Смена уже открыта на ККТ». Процесс блокируется.

Рассмотрим два основных пути решения этой проблемы.

Вариант А: Использование механизма «Удаленная касса» в современных БПО

В современных конфигурациях 1С (например, в «1С:Розница 3.0» или «1С:УНФ») разработчики добавили штатный механизм работы с удаленными фискальными регистраторами. Нам необходимо настроить систему следующим образом:

Вариант Б: Доработка кода 1С через конфигуратор (для старых или нетиповых баз)

Если вы работаете в старой конфигурации (например, на обычных формах), где нет встроенного механизма совместного использования ККТ, проблему придется решать программным путем. Наша задача — заставить 1С думать, что оба компьютера являются одним и тем же рабочим местом с точки зрения торгового оборудования.

Для этого откроем конфигуратор и найдем функцию, которая определяет имя текущего рабочего места (обычно это функция ПолучитьИмяКомпьютераТО() или аналогичный метод в модуле управления подключаемым оборудованием). Переопределим логику работы функции так, чтобы для работы с ККТ второй компьютер всегда возвращал сетевое имя первого.

Посмотрим на пример реализации такого кода:


Функция ПолучитьИмяКомпьютераТО() Экспорт
    ТекущееИмя = ВРег(ИмяКомпьютера());
    
    // Если имя текущего ПК соответствует второму рабочему месту,
    // подменяем его на имя основного компьютера, к которому привязана касса
    Если ТекущееИмя = "OFFICE-WORKSTATION-2" Тогда
        Возврат "OFFICE-WORKSTATION-1";
    Иначе
        Возврат ТекущееИмя;
    КонецЕсли;
КонецФункции

Благодаря этой несложной доработке, 1С будет использовать один и тот же элемент справочника РабочиеМеста для обоих физических компьютеров. Документы открытия и закрытия смены будут создаваться в рамках единого контекста, и конфликт блокировки файлов кассовых смен полностью исчезнет.

Юридическая сторона вопроса (Закон 54-ФЗ)

Планируя использовать один фискальный регистратор на два отдела, обязательно проанализируйте планировку вашего помещения. Согласно действующему законодательству (54-ФЗ), фискальный чек должен быть сформирован и выдан покупателю непосредственно в месте осуществления расчета в момент оплаты.

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

← На главную