Как подключить онлайн-кассу АТОЛ FPrint-55Ф к 1С:УПП 1.3 и устранить ошибку Фискальный регистратор не подключен

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

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

Шаг 1. Различие между классическим ФР и ККТ с передачей данных

Проанализируем первую ошибку, с которой сталкиваются при настройке: кассу пытаются подключить через устаревшую обработку обслуживания ATOLFiscalPrinters_v2.epf. В списке поддерживаемых моделей такой обработки присутствуют только старые фискальные регистраторы с ЭКЛЗ (например, FPrint-55K, FPrint-22K, FPrint-02K). Попытка прописать модель FPrint-55Ф вручную в коде старой обработки приводит к системным сбоям драйвера.

Устройство АТОЛ FPrint-55Ф относится к принципиально новому классу оборудования — ККТ с передачей данных (онлайн-касса с фискальным накопителем). Для него в 1С используется отдельная библиотека и специализированные обработки обслуживания (или встроенные драйверы БПО по стандарту «1С:Совместимо»).

  1. Открываем справочник торгового оборудования: перейдем в меню Сервис — Торговое оборудование — Подключение и настройка торгового оборудования.
  2. Выбираем вкладку ККТ с передачей данных (а не «Фискальные регистраторы»).
  3. Добавляем новое устройство, выбрав интеграционную компоненту или обработку обслуживания, предназначенную для работы с ККТ с передачей данных (драйвер АТОЛ версии 8.x или 10.x).

Шаг 2. Устранение ошибки доступа к порту: System Error. Code: 2

Если при попытке выполнить тест устройства драйвер сообщает: «Тест не пройден. Дополнительное описание: Порт недоступен (System Error. Code: 2. Не удается найти указанный файл)», разберем причины этой проблемы:

  1. Конфликт виртуальных COM-портов USB. При подключении кассы АТОЛ по USB-кабелю операционная система создает в диспетчере устройств два виртуальных COM-порта. Первый предназначен для передачи команд управления из 1С, второй — для службы передачи данных в ОФД (EthernetOverUSB / EoU). Ошибка с кодом 2 возникает, если в параметрах 1С указан порт, занятый службой EoU, либо порт выбран некорректно. Откроем «Диспетчер устройств» Windows, проверим номера портов и укажем в 1С именно командный порт ККТ.
  2. Блокировка утилитой драйвера. Если параллельно с 1С запущена сервисная утилита «Тест драйвера ККТ», COM-порт будет монопольно занят ею. Перед запуском проверки связи в 1С обязательно закроем все сторонние утилиты АТОЛ.
  3. Слишком большой номер COM-порта. Старые 32-разрядные компоненты могут некорректно опрашивать порты с номерами COM10 и выше. В свойствах порта в диспетчере устройств переназначим номер порта в диапазон от COM1 до COM9.
  4. Разрядность платформы. Проверим соответствие разрядности: для 32-разрядного клиента 1cv8.exe должны быть установлены 32-битные драйверы ККТ.

Шаг 3. Исправление ошибки «Фискальный регистратор не подключен» в коде ПКО

После того как касса успешно добавлена в справочник оборудования и тест связи проходит без ошибок, при нажатии кнопки «Чек» в документе «Приходный кассовый ордер» (ПКО) программа выдает ошибку: «Фискальный регистратор не подключен» или «Драйвер ФР не загружен».

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

Проанализируем проблемный участок кода в модуле формы документа ПриходныйКассовыйОрдер в процедуре ОсновныеДействияФормыЧек():


// Устаревший фрагмент кода в нетиповой форме:
МассивФР = ПолучитьСерверТО().ПолучитьСписокУстройств(
                Перечисления.ВидыТорговогоОборудования.ФискальныйРегистратор,
                Справочники.КассыККМ.ПустаяСсылка());

Так как наше устройство зарегистрировано как онлайн-касса, метод ПолучитьСписокУстройств возвращает пустой массив, из-за чего система генерирует исключение об отсутствии подключенного регистратора.

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


// Исправленный вариант выборки оборудования:
МассивУстройств = ПолучитьСерверТО().ПолучитьСписокУстройств(
                    Перечисления.ВидыТорговогоОборудования.ККТ,
                    КассаККМ);

Если МассивУстройств.Количество() = 0 Тогда
    // Проверяем наличие классического ФР, если кассы работают параллельно
    МассивУстройств = ПолучитьСерверТО().ПолучитьСписокУстройств(
                        Перечисления.ВидыТорговогоОборудования.ФискальныйРегистратор,
                        КассаККМ);
КонецЕсли;

Если МассивУстройств.Количество() = 0 Тогда
    Предупреждение("Устройство для печати чеков не подключено!");
    Возврат;
КонецЕсли;

Важное архитектурное замечание: простая замена значения перечисления восстанавливает обращение к кассе, но старый формат пакета фискализации через СерверТО не передает реквизиты, обязательные для 54-ФЗ (теги систем налогообложения, ставки НДС, реквизиты кассира, признак предмета расчета). Правильным долгосрочным решением для сильно измененных конфигураций является полное обновление процедуры печати чека из типового актуального релиза конфигурации УПП 1.3 с вызовом общего модуля МенеджерОборудованияКлиент и передачей сформированной структуры чека.

Шаг 4. Настройка справочников и привязка к рабочему месту

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

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

После изменения типа оборудования на ККТ и корректировки обращения к торговому оборудованию в форме кассового ордера печать чеков на АТОЛ FPrint-55Ф проходит в штатном режиме.

← На главную