Подключение современных контрольно-кассовых аппаратов с поддержкой требований 54-ФЗ (онлайн-касс) к ранним релизам конфигурации 1С:Управление торговлей 11 (например, 11.0.6.9) — классическая задача, с которой сталкиваются при сопровождении сильно кастомизированных баз. В таких конфигурациях типовые механизмы работы с торговым оборудованием (ТО) рассчитаны на устаревшие версии протоколов (DTO 6/8) и не поддерживают современные фискальные реквизиты.
Разберем основные проблемы, возникающие в процессе подключения ККТ АТОЛ 11Ф, выясним технические причины сбоев и рассмотрим пошаговые варианты их исправления.
Данная ошибка обычно появляется при попытке инициализации драйвера или печати чека из сеанса 1С. Проанализируем, почему операционная система сообщает об отсутствии файла, даже если драйвер физически установлен:
Для исправления проблемы выполним ручную регистрацию необходимой библиотеки драйвера. Найдем файл Fprn.dll (или соответствующую библиотеку из комплекта актуального интеграционного компонента АТОЛ), скопируем его в каталог исполняемых файлов платформы bin и зарегистрируем через командную строку от имени администратора:
regsvr32 "C:\Program Files (x86)\1cv8\8.3.XX.XXXX\bin\Fprn.dll"
Частая ситуация: в тесте устройства из 1С появляется сообщение о том, что фискальный регистратор не включен, а при попытке включить его связь сразу же разрывается. Выясним причину такого поведения.
Физический или виртуальный COM-порт, через который подключена касса (включая подключение по USB в режиме эмуляции COM-порта), может монопольно удерживаться только одним приложением. Если на компьютере параллельно запущена сервисная утилита («Тест драйвера ККТ») и в ней установлена отметка Устройство включено, порт блокируется этой утилитой. При попытке 1С обратиться к аппарату драйвер получает отказ операционной системы в доступе к занятому порту и сбрасывает статус готовности устройства.
Чтобы решить эту проблему, обязательно закрываем утилиту тестирования драйвера либо снимаем в ней флаг Устройство включено перед выполнением проверки связи или пробитием чека из 1С.
Релиз УТ 11.0.6.9 создавался задолго до появления онлайн-касс, передачи электронных чеков операторам фискальных данных (ОФД) и требований форматов фискальных документов 1.05/1.2. В связи с этим при попытке работы возникают ошибки формирования реквизитов чека:
Для стабильной работы онлайн-кассы на сильно измененной старой конфигурации применяются три основных подхода:
Переносим подсистему «Библиотека подключаемого оборудования» (БПО) из современного релиза 1С:Управление торговлей в рабочую нетиповую базу. Это наиболее правильный путь с точки зрения стандартов 1С: обновляются справочники оборудования, обработки обслуживания и универсальные механизмы формирования фискальных чеков под актуальные требования 54-ФЗ. При этом остальной нетиповой функционал конфигурации остается без изменений.
Если внедрение новой БПО требует слишком масштабных изменений метаданных, создается специализированная внешняя обработка. Она инициализирует COM-объект современного драйвера АТОЛ (DTO 10) напрямую и передает фискальные данные через нативные методы драйвера ККТ в обход устаревшей структуры подсистемы оборудования конфигурации.
На рабочий компьютер кассира устанавливается промежуточный веб-сервис фискализации, принимающий команды по протоколу HTTP/JSON. В конфигурации 1С формируется простой JSON-пакет с позициями чека и отправляется POST-запросом на локальный порт (localhost). Сторонний сервис самостоятельно берет на себя все взаимодействие с драйвером АТОЛ, исключая проблемы с разрядностью платформы 1С, регистрацией COM-компонент и блокировками портов.