Как подключить драйвер АТОЛ 10-й версии в 1С:Управление торговлей 10.3

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

При работе с торговым оборудованием в устаревших, но все еще популярных конфигурациях, таких как 1С:Управление торговлей 10.3, специалисты часто сталкиваются с проблемой несовместимости новых драйверов. Драйверы АТОЛ версии 10 (DTO 10) значительно отличаются от предыдущих версий (8 и 9) своей архитектурой, кроссплатформенностью и скоростью работы. В этой статье мы подробно разберем, как заставить «старую» конфигурацию работать с актуальным драйвером, рассмотрим методы ручной модификации обработки и выясним, где взять официальные обновления.

Зачем переходить на 10-ю версию драйвера

Рассмотрим основные причины, по которым переход на ДТО 10 является необходимым. Во-первых, это поддержка актуальных требований законодательства (НДС 20%, работа с маркировкой «Честный Знак», ФФД 1.2). Старые драйверы 8-й серии более не развиваются и не гарантируют корректную передачу новых тегов. Во-вторых, 10-я версия использует Native API и JSON-интерфейс, что исключает многие проблемы с регистрацией COM-объектов в системе и повышает общую стабильность связи с ККТ.

Способ 1. Ручная модернизация обработки ATOLkkt.epf

Проанализируем ситуацию: типовая конфигурация УТ 10.3 использует внешние обработки для взаимодействия с оборудованием. Чтобы «подружить» 1С с 10-м драйвером, нам потребуется изменить внутреннее содержимое обработки ATOLkkt.epf. Разберем этот процесс по шагам.

Шаг 1. Подготовка компонентов драйвера

Для начала нам необходимо получить файлы интеграционной компоненты из дистрибутива АТОЛ 10. Обычно они находятся в папке установки драйвера, в подкаталоге 1C. Нам нужен ZIP-архив, содержащий библиотеку (DLL), файл описания info.xml и манифест. Обратите внимание на разрядность: если ваша платформа 1С 32-битная, компонента также должна быть 32-битной.

Шаг 2. Замена макета в обработке

Откроем обработку ATOLkkt.epf в Конфигураторе. Нам нужно найти макет с именем ИнтеграционнаяКомпонента (имя может варьироваться в зависимости от версии обработки, например, ДрайверККТ). Заменим содержимое этого макета на подготовленный нами ZIP-архив от 10-й версии драйвера.

Шаг 3. Изменение программного кода инициализации

Теперь самое важное — нужно изменить код, который создает объект драйвера. В модуле обработки найдем процедуру, отвечающую за подключение компоненты. Проанализируем пример кода, который обычно используется для 9-й версии:


Макет = ПолучитьМакет("ИнтеграционнаяКомпонента");
Адрес = ПоместитьВоВременноеХранилище(Макет);
ПодключитьВнешнююКомпоненту(Адрес, "ИнтеграционнаяКомпонента", ТипВнешнейКомпоненты.Native); 
Драйвер = Новый("AddIn.ИнтеграционнаяКомпонента.ATOL_KKT_1C83_V9");

Выясним причину, по которой 10-я версия не заводится автоматически: у нее другой идентификатор объекта. Нам нужно изменить строку инициализации. Чтобы узнать точное имя объекта, заглянем внутрь файла info.xml из нашего архива. Как правило, для 10-й версии строка будет выглядеть следующим образом:


// Для 10-й версии АТОЛ
Драйвер = Новый("AddIn.ИнтеграционнаяКомпонента.ATOL_KKT_1C83_V10");

После внесения изменений сохраним обработку и проверим ее в режиме «1С:Предприятие». Теперь система должна корректно инициализировать объект драйвера и увидеть версию 10.х.

Способ 2. Использование официального обновления от 1С

Если вы не хотите заниматься «программированием на коленке», существует более цивилизованный путь. Фирма 1С выпустила обновленные версии обработок обслуживания торгового оборудования, которые штатно поддерживают драйвер АТОЛ 10. Рассмотрим, как их применить.

  1. Перейдем на портал поддержки пользователей 1С в раздел обновлений для УТ 10.3 или в раздел «Дополнительные материалы».
  2. Найдем архив с актуальными обработками обслуживания (TradeWareEpf).
  3. Извлечем из архива файл ATOLkkt.epf версии 2.0 или выше.
  4. В самой 1С перейдем в меню «Сервис» -> «Торговое оборудование» -> «Подключение и настройка торгового оборудования».
  5. В справочнике обработок обслуживания добавим новую или обновим существующую, указав путь к скачанному файлу.

В новых релизах УТ 10.3 (начиная с 10.3.50 и выше) эта обработка уже может быть встроена или идти в комплекте поставки. Она корректно работает через XML-пакеты, что является стандартом для современной интеграции ККТ.

Важные технические нюансы работы с АТОЛ 10

Рассмотрим специфику работы, которую важно учитывать при переходе на 10-й драйвер в среде 1C v8.2/8.3 с обычными формами:

Механизм обмена данными: В УТ 10.3 взаимодействие часто строится через общий модуль ПодключаемоеОборудованиеУниверсальныйДрайверКлиент. Этот модуль формирует XML-структуру чека, которую драйвер затем интерпретирует. При использовании 10-й версии крайне важно, чтобы версия обработки соответствовала версии драйвера, иначе возможны ошибки формата XML («Поле не найдено» или «Некорректный тег»).

Служба EoU и EoT: В отличие от 8-й версии, где служба EthernetOverUSB (EoU) настраивалась отдельно, в 10-й версии она интегрирована более плотно. Однако рекомендуется обратить внимание на режим EoT (EthernetOverTransport). В этом режиме передача данных в ОФД идет по тому же каналу, что и команды от 1С. Это избавляет от проблем с занятыми портами и конфликтами служб.

Таймауты и ожидание: При работе с маркированными товарами время фискализации чека увеличивается, так как ККТ должна дождаться ответа от системы «Честный Знак». Проанализируем настройки драйвера: в форме настройки оборудования в 1С обязательно увеличьте Таймаут до 10 000–15 000 мс. Это предотвратит ошибки обрыва связи при длительной обработке чека.

Решение типичных ошибок

Разберем ситуацию, когда даже после замены компоненты 1С выдает ошибку «Объект не найден». Проверьте следующие моменты:

Таким образом, мы видим, что переход на АТОЛ 10 в 1С:УТ 10.3 — задача вполне решаемая как программными методами, так и путем использования официальных обновлений. Второй вариант является предпочтительным, так как обеспечивает долгосрочную поддержку новых требований законодательства.

← На главную