Рассмотрим довольно распространенную и неочевидную ситуацию: принтер этикеток АТОЛ ТТ42, подключенный по локальной сети (LAN), исправно работал с конфигурацией "1С:Розница 3.0" (где может использоваться печать этикеток и ценников с характеристиками), но внезапно перестал. При попытке выполнить тест подключения в 1С система выдает ошибку "Тест не пройден", а в технологическом журнале или логах драйвера появляются сообщения "Ошибка при получении ответа от сервера" и Property not found: EquipmentType. При этом сам принтер доступен по сети (пингуется) и может печатать из других источников, например, с терминала сбора данных (ТСД) или через фирменную утилиту. Разберем по шагам, как диагностировать и решить эту проблему.
Прежде чем углубляться в настройки 1С, давайте убедимся, что на базовом уровне все в порядке. Даже если вы уверены в своей сети, повторная проверка помогает исключить случайные сбои.
Win+R, ввести cmd, нажать Enter) и выполним команду ping IP_АДРЕС_ПРИНТЕРА. Если пакеты проходят, сетевой уровень в порядке. Также стоит исключить физические проблемы: попробуйте подключить принтер другим, заведомо исправным патч-кордом и в другой порт коммутатора.В рассматриваемом случае принтер реагировал на тест подключения из 1С морганием светодиода. Это говорит о том, что пакеты от 1С до принтера доходят, но принтер либо не понимает команду, либо его ответ не устраивает драйвер 1С.
Современные конфигурации 1С используют Библиотеку подключаемого оборудования (БПО), которая управляет драйверами в виде внешних компонент. Иногда эти компоненты могут быть повреждены, некорректно зарегистрированы или конфликтовать с другими версиями. Ошибка Property not found: EquipmentType из лога как раз может указывать на сбой при инициализации компоненты.
Проведем ревизию компоненты драйвера:
НСИ и администрирование → РМК и оборудование → Внешние компоненты. Найдем компоненту, отвечающую за принтеры АТОЛ (в нашем случае это lp_atol1c8x3n), и временно ее отключим (снять флажок). Затем полностью закроем 1С.AppData\Roaming\1C\1cv8\ExtCompT\.Внешние компоненты и перезапустить 1С.Хотя эти действия являются стандартной процедурой при проблемах с оборудованием, в данном конкретном случае они не привели к результату. Это подводит нас к финальному и самому неочевидному шагу.
Проанализируем ситуацию: сеть в порядке, принтер исправен, утилита производителя печатает, а 1С — нет. Это классический признак проблемы совместимости на уровне команд управления. Принтер АТОЛ ТТ42, как и многие другие профессиональные модели, является мультипротокольным. Он может понимать несколько "языков" команд: TSPL (родной для TSC), ZPL и EPL.
Проблема заключается в том, что стандартный драйвер, встроенный в БПО 1С, не является универсальным. Он "запрограммирован" на общение с принтером на одном конкретном языке — в данном случае это TSC (который основан на TSPL).
Если в настройках самого принтера по умолчанию выбран другой язык (например, ZPL), происходит следующее:
Это и есть корень проблемы. Решение — привести настройки принтера в соответствие с ожиданиями драйвера 1С.
Выполним следующие действия:
Таким образом, проблема, которая выглядела как программный сбой 1С или сетевая неисправность, на самом деле оказалась связана с низкоуровневой настройкой самого оборудования. Важно помнить, что при работе с торговым оборудованием необходимо проверять не только настройки в учетной системе (даже если у вас установлен удобный набор примеров макетов ценников и этикеток или печать ценников и этикеток с остатками для УНФ), но и конфигурацию самого устройства.