Как исправить ошибку «Порт занят (999)» при подключении фискального регистратора АТОЛ к 1С?

Системный администратор 1С:Розница Торговля и дистрибуция
← На главную

Часто при работе с торговым оборудованием в 1С, особенно в режиме рабочего места кассира (РМК), мы сталкиваемся с нестабильным подключением фискальных регистраторов (ФР). Типичная ситуация: весь день продажи идут штатно, вечером снимается Z-отчет, закрывается смена и запускается обмен данными. Однако на следующее утро (или внезапно в течение дня) при открытии 1С появляется критическая ошибка: Не удалось подключить устройство "'АТОЛ: Фискальные регистраторы': Порт занят (999)".

Временным «костылем» в таких случаях часто становится двойной запуск проверки связи: заходим в настройки торгового оборудования, выбираем фискальный регистратор и нажимаем «Тест устройства». Первый раз система выдает «Тест не пройден. Нет связи», но при повторном нажатии 1С вдруг «подхватывает» ФР, и можно продолжать работу. Если в вашей сети десятки магазинов, такой ручной перезапуск недопустим — для таких случаев есть система централизованного администрирования и мониторинга парка ККТ. Давайте проанализируем ситуацию, выясним причину и разберем по шагам все возможные способы решения этой проблемы.

Анализ причины: почему порт оказывается «занят»?

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

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

Решение 1: Проверка монопольного захвата и зависших сеансов 1С

Самая распространенная причина блокировки порта — фоновые процессы, которые не отпустили оборудование после закрытия программы.

  1. Проверьте, корректно ли завершается сеанс 1С. Часто бывает так, что визуально окно программы закрыто, но процесс 1cv8.exe или 1cv8c.exe (его завершит инструмент принудительного закрытия зависших сеансов) все еще висит в Диспетчере задач. Если процесс завис, он продолжает удерживать COM-порт кассы. Настройте корректное завершение работы пользователей или используйте скрипты принудительного завершения зависших сеансов при закрытии смены.
  2. Убедитесь, что никто не запустил параллельный сеанс 1С под другим пользователем (например, в терминальной сессии), который также пытается инициализировать РМК — это решается через управление сеансами и соединениями информационной базы.
  3. Обязательно закрывайте утилиту «Тест драйвера ККТ» (ДТО) от АТОЛ. Если эта программа свернута в трей или оставлена открытой на заднем фоне, 1С не сможет подключиться к кассе.

Решение 2: Отключение энергосбережения для портов (USB/COM)

Даже если ваш фискальный регистратор подключен через физический COM-порт, а тем более если используется эмуляция через USB, операционная система Windows может отключать питание порта для экономии энергии при простое. Когда компьютер или касса «засыпает», связь рвется, а при пробуждении 1С считает, что порт завис.

Выполним следующие шаги для настройки электропитания:

  1. Откройте «Панель управления» операционной системы и перейдите в раздел «Электропитание».
  2. Выберите используемую схему электропитания и нажмите «Настройка схемы электропитания» -> «Изменить дополнительные параметры питания».
  3. В открывшемся окне найдите раздел «Параметры USB» и установите параметр Параметр временного отключения USB-портов в значение Запрещено.
  4. Далее откройте «Диспетчер устройств» Windows.
  5. Раскройте ветку «Контроллеры USB» (или порты COM и LPT, если используется физический контроллер).
  6. Кликните правой кнопкой мыши по каждому «Корневому USB-концентратору» и перейдите в «Свойства».
  7. На вкладке «Управление электропитанием» обязательно снимите галочку Разрешить отключение этого устройства для экономии энергии. Сохраните изменения.

Решение 3: Устранение конфликта со службой передачи данных в ОФД (Служба EoU)

Проанализируем работу драйверов АТОЛ. Часто вместе с ними устанавливается специальная фоновая служба EthernetOverUSB (Служба EoU), которая отвечает за отправку электронных чеков в ОФД. Для своей работы эта служба также использует COM-порт.

Если при настройке оборудования порты были указаны неверно (например, службе EoU ошибочно присвоен порт управления ККМ, а не порт обмена данными), возникает жесткий конфликт. Служба стартует вместе с Windows и намертво блокирует кассу.

  1. Откройте «Диспетчер задач» и перейдите на вкладку «Службы» (или откройте оснастку services.msc).
  2. Найдите службу с названием EoU или Служба EthernetOverUSB.
  3. Остановите эту службу.
  4. Перейдите в 1С и попробуйте подключить фискальный регистратор. Если ошибка ушла и связь появилась моментально — причина найдена.
  5. Вам потребуется зайти в утилиту настройки EoU и четко разделить порты: один виртуальный COM-порт должен использоваться строго для связи с 1С (управление), а второй — только для службы EoU (передача данных в ОФД).

Решение 4: Переназначение номера COM-порта

Иногда в Windows возникает системный сбой (или конфликт с другим драйвером), из-за которого стандартные порты, такие как COM1 или COM2, резервируются системой на уровне ядра, и 1С не может получить к ним стабильный доступ.

Посмотрим, как изменить номер порта:

  1. Откройте «Диспетчер устройств».
  2. Разверните ветку «Порты (COM и LPT)».
  3. Найдите устройство вашего фискального регистратора АТОЛ (или виртуальный порт), кликните правой кнопкой мыши и выберите «Свойства».
  4. Перейдите на вкладку «Параметры порта» и нажмите кнопку «Дополнительно».
  5. В выпадающем списке Номер COM-порта выберите любой свободный порт с бóльшим номером, например COM3, COM4 или COM9.
  6. Сохраните изменения, после чего обязательно укажите этот новый номер порта в настройках драйвера АТОЛ и в карточке торгового оборудования в самой 1С.

Решение 5: Обновление драйверов и решение аппаратных зависаний

Проанализируем техническое состояние самого оборудования и программного обеспечения. Если база 1С регулярно обновляется, а драйверы кассы ККМ (например, 10-я версия драйвера АТОЛ) давно не актуализировались, это вызывает рассинхронизацию. Убедитесь, что установлены последние версии драйверов торгового оборудования — для работы через сетевые интерфейсы подойдёт драйвер подключения ККТ АТОЛ по TCP/IP и RDP.

Также не стоит исключать аппаратное зависание самой кассы. В результате скачка напряжения или плохого контакта кабеля фискальный регистратор может аппаратно «зависнуть» в режиме ожидания команды. В этом случае касса не освобождает порт. Простая перезагрузка кассового аппарата (выключение и включение тумблера питания) сбрасывает статус зависания.

Решение 6: Использование утилит-анализаторов

Если вы выполнили все вышеописанные шаги, но ошибка 999 продолжает появляться, воспользуйтесь специализированным программным обеспечением. Технические специалисты часто применяют небольшую утилиту COM Port Checker (или аналоги).

Запустите такую утилиту от имени администратора. Она просканирует систему и покажет полный список COM-портов, их текущее состояние (Свободен/Занят) и, самое главное, выведет точный путь к процессу (например, C:\Windows\System32\svchost.exe или конкретной сторонней программе), который в данный момент удерживает нужный вам порт. Вычислив виновника, вы сможете отключить мешающую службу или удалить конфликтующее приложение.

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

← На главную