При автоматизации торговых точек часто возникает необходимость подключения нескольких фискальных регистраторов (ФР) к одному рабочему месту. Это может быть связано с продажей товаров от разных юридических лиц (например, ОСНО и УСН/Патент) или распределением потоков покупателей. В данной статье мы разберем, как правильно настроить совместную работу двух и более касс АТОЛ на одном компьютере, используя драйвер версии 10.х и конфигурацию 1С:Управление торговлей 11.4, а также выясним причины возможных сбоев системы.
Прежде всего, ответим на главный вопрос: драйвер АТОЛ версии 10.х полностью поддерживает работу с неограниченным количеством кассовых аппаратов на одном системном блоке. Ограничения могут накладываться только физическим количеством портов (USB, COM, Ethernet) и ресурсами самой операционной системы. Важно понимать, что драйвер 10-й серии работает как системная служба, которая способна управлять очередями запросов от различных приложений и экземпляров 1С.
Рассмотрим по шагам, как подготовить систему к стабильной работе без вылетов и конфликтов оборудования.
Для того чтобы система различала два одинаковых устройства, нам необходимо правильно сконфигурировать их на уровне драйвера. Проанализируем процесс настройки через утилиту «Тест драйвера ККТ»:
COM3 или USB) и нажмем «Проверка связи». Убедимся, что модель и серийный номер определились корректно.COM4).Проанализируем ситуацию: если обе кассы настроены на один и тот же виртуальный порт или используют один и тот же логический номер в памяти драйвера, возникнет конфликт захвата ресурса, что приведет к ошибке доступа в 1С.
После того как драйвер «увидел» обе кассы, переходим к настройке внутри программы 1С. Разберем этот этап подробно:
Устройство используется совместно. Это позволит драйверу корректно освобождать порт после завершения операции печати чека.Серийный номер стояли разные значения.Часто пользователи сталкиваются с тем, что при попытке пробития чека на второй кассе программа 1С закрывается без видимых причин. Выясним основные причины этой нестабильности:
Проблема идентификатора «Рабочее место». В 1С каждое устройство привязывается к объекту справочника Рабочие места. Если две кассы привязаны к одному и по какому-то стечению обстоятельств система пытается инициализировать их под разными именами пользователей или с разными правами, может произойти конфликт сессий драйвера. Проверьте, чтобы в настройках обеих касс было указано одно и то же актуальное рабочее место.
Разрядность компонентов. Если ваша платформа 1С 32-битная (x86), то и драйвер АТОЛ должен быть установлен 32-битный. Смешивание 64-битного драйвера и 32-битной платформы через COM-объекты часто приводит к ошибкам Access Violation и мгновенному закрытию процесса 1cv8.exe.
Параметр «Не отключаться от ККТ». Разберем, как этот флаг влияет на работу. Если он установлен, 1С держит соединение с кассой постоянно. При работе с двумя кассами на одном ПК под одним пользователем это может привести к тому, что библиотека драйвера блокирует ресурсы. Попробуйте снять этот флаг для обеих касс, чтобы 1С подключалась к кассе только в момент печати и сразу отключалась.
Наиболее современным и надежным способом работы с несколькими ККТ является использование встроенного Web-сервера АТОЛ. В этом случае взаимодействие происходит не напрямую через COM-порты, а по протоколу HTTP/JSON.
Рассмотрим алгоритм настройки через Web-сервер:
16732).127.0.0.1 и порт 16732.Такой подход полностью снимает проблему «захвата портов», так как служба драйвера сама управляет очередностью печати и распределяет запросы к разным кассам независимо от того, сколько экземпляров 1С запущено.
Проанализируем физический уровень подключения. Если обе кассы подключены по USB, они могут потреблять значительный ток в момент инициализации или печати. Windows часто отключает питание USB-портов для экономии энергии.
Выполним следующие действия:
Разрешить отключение этого устройства для экономии энергии.Если проблема сохраняется, проанализируем лог-файлы драйвера. Они находятся по пути C:\Users\ИмяПользователя\AppData\Roaming\Atol\drivers10\logs\. Откройте последний файл fptr10.log и найдите строки непосредственно перед моментом вылета 1С. Если вы видите ошибки типа -4 (Port busy) или -1 (Internal error), это подтверждает проблему распределения прав доступа к портам между кассами.
Пример корректной инициализации устройства в коде (логика драйвера):
// Создание объекта драйвера
Библиотека = Новый ("AddIn.Atol_KKT_10");
// Установка параметров для конкретной кассы
Библиотека.setParam(Библиотека.LIBFPTR_PARAM_PORT, Библиотека.LIBFPTR_PORT_COM);
Библиотека.setParam(Библиотека.LIBFPTR_PARAM_COM_FILE, "COM3");
Библиотека.open();
В завершение подчеркнем: работа с двумя кассами на одном ПК в 1С 8.3 — задача абсолютно решаемая. Главное — обеспечить разделение ресурсов (портов) и правильно настроить режим совместного использования оборудования в параметрах 1С.