Как подключить онлайн-кассу к старой конфигурации 1С:Управление торговлей 10.3 без обновления

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

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

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

Теоретическая возможность и базовый подход

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

Для подключения ККТ к старой УТ 10.3 нам понадобятся:

  1. Специализированная внешняя обработка обслуживания, поддерживающая актуальные стандарты ККТ.
  2. Драйвер торгового оборудования от производителя ККТ, установленный на рабочем компьютере.
  3. Внешняя компонента (DLL-библиотека), которая будет осуществлять связь между 1С и драйвером.

Рассмотрим по шагам ключевые аспекты и сложности, с которыми мы неизбежно столкнемся при реализации этой схемы на практике.

1. Эволюция драйверов АТОЛ: Переход с ДТО 9 на ДТО 10

Во времена создания старых релизов УТ 10.3 основным стандартом взаимодействия был драйвер АТОЛ версии 9 (ДТО 9) и более ранний ДТО 8. На сегодняшний день поддержка этих драйверов производителем полностью прекращена. Современные кассовые аппараты и их прошивки физически не способны работать со старым программным обеспечением.

Для успешной интеграции нам потребуется использовать актуальный Драйвер АТОЛ 10.х (DTO 10). Старые обработки обслуживания, поставляемые с УТ 10.3.18.3, его не поддерживают. Нам необходимо найти или адаптировать внешнюю обработку (например, современную версию ATOLkkt.epf), написанную под стандарт NativeAPI для работы с 10-й версией драйвера.

Проанализируем пример кода, который инициализирует подключение к ККТ через ДТО 10 в среде 1С:


// Пример инициализации драйвера АТОЛ 10 через NativeAPI
Попытка
    ПодключитьВнешнююКомпоненту("ОбщийМакет.ДрайверАтолККТ10", "AtolDrivers10", ТипВнешнейКомпоненты.Native);
    ДрайверККТ = Новый ("AddIn.AtolDrivers10.Fptr10");
Исключение
    Предупреждение("Не удалось загрузить внешнюю компоненту драйвера АТОЛ 10!");
    Возврат;
КонецПопытки;

Если в вашей конфигурации нет общего макета с новым драйвером (а в релизе 10.3.18.3 его точно нет), внешняя обработка должна уметь загружать библиотеку из внешнего файла (например, fptr10.dll), зарегистрированного в операционной системе, либо поставлять интеграционную компоненту внутри себя.

2. Маркировка товаров и требования ФФД 1.2

Если на предприятии планируется продажа маркированного товара (обувь, одежда, табак, парфюмерия, молочная продукция и т.д.), задача существенно усложняется. Согласно законодательству, продажа таких товаров должна осуществляться по формату фискальных данных ФФД 1.2.

Выясним причину, почему простая внешняя обработка здесь не решит проблему «из коробки»:

Как решить проблему маркировки без обновления конфигурации?

Для этого придется внедрить локальные изменения в конфигурацию (или воспользоваться платными специализированными расширениями/модулями интеграции от сторонних разработчиков). Эти решения работают следующим образом: они перехватывают табличную часть документа продажи, запрашивают сканирование кодов маркировки через кастомные формы ввода, самостоятельно формируют XML-пакет для драйвера АТОЛ 10 в соответствии с требованиями ФФД 1.2 и передают его на ККТ.

3. Требования к платформе 1С:Предприятие

На старых форумах можно встретить утверждения, что внешние обработки для ККТ совместимы с платформами 8.1 и 8.2. В современных реалиях это не так.

Для работы современных версий NativeAPI-компонент драйверов АТОЛ 10 требуется актуальная платформа 1С:Предприятие 8.3. Если ваша база УТ 10.3 все еще запускается под управлением старых версий платформы (8.1 или 8.2), вам потребуется в обязательном порядке перевести работу базы на платформу 8.3 (при этом сама конфигурация УТ 10.3 может оставаться неизменной и работать в режиме совместимости).

Разберем по шагам, как подготовить базу к переходу на платформу 8.3:

  1. Установите актуальную версию технологической платформы 1С:Предприятие 8.3 на рабочий компьютер или сервер.
  2. Пропишите в настройках запуска информационной базы использование версии платформы 8.3.
  3. При первом запуске разрешите конвертацию базы данных (для файлового варианта обязательно сделайте резервную копию 1Cv8.1CD!).
  4. Проверьте работу всех внешних обработок торгового оборудования в новом режиме совместимости.

4. Настройка работы ККТ в терминальном режиме (RDP)

Часто база 1С:Управление торговлей развернута на удаленном сервере, а кассовый аппарат физически подключен к локальному компьютеру кассира по USB. Передача сигналов COM-порта через стандартный проброс портов в RDP-клиенте часто работает крайне нестабильно, приводя к зависаниям печати чека на 10–20 секунд.

Рассмотрим более современное и стабильное решение, которое предоставляет драйвер АТОЛ 10:

  1. На локальном компьютере, к которому подключена касса, устанавливаем драйвер АТОЛ 10 и запускаем службу «Прокси-служба драйвера ККТ» (EthOverUsb) или настраиваем службу удаленного подключения в самом драйвере.
  2. В настройках внешней обработки обслуживания в 1С на удаленном сервере вместо локального COM-порта выбираем тип подключения TCP/IP.
  3. Указываем IP-адрес локального компьютера кассира и порт (по умолчанию для АТОЛ это обычно порт 6220).

При такой схеме пакеты данных чека передаются напрямую по сетевому протоколу, что гарантирует моментальный отклик и мгновенное пробитие чека без задержек.

Резюме

Подключение современной онлайн-кассы к старой конфигурации «1С:Управление торговлей 10.3» без глобального обновления конфигурации вполне реально. Для этого потребуется перевести базу на платформу 1С 8.3, использовать драйвер АТОЛ 10-й версии и найти адаптированную под данный драйвер внешнюю обработку обслуживания. Однако, если ваша деятельность связана с продажей подконтрольных и маркированных товаров, вам все же придется внедрить локальные изменения в код конфигурации или приобрести готовый интеграционный модуль для поддержки стандартов ФФД 1.2.

← На главную