При работе с торговым оборудованием в среде 1С:Предприятие часто возникает неприятная ситуация: драйвер в операционной системе установлен, тест связи в утилите производителя проходит успешно, но 1С выдает ошибку: "Установка драйвера 'АТОЛ:ККТ с передачей данных в ОФД' не завершена. На текущем рабочем месте установлен интеграционный компонент к основной поставке драйвера...". Эта проблема особенно характерна для драйверов АТОЛ серии 9.х и 10.х. В этой статье мы подробно разберем, почему это происходит и как по шагам восстановить работоспособность кассы.
Прежде всего, проанализируем архитектуру современных драйверов ККТ. Драйвер АТОЛ состоит из двух частей:
.dll), которая поставляется внутри конфигурации 1С. Её задача — выступать "переводчиком" между программным кодом 1С и самим оборудованием.Ошибка "Установка не завершена" означает, что интеграционный компонент успешно загружен в 1С, но он не может найти в системных путях файлы основной поставки драйвера. Выясним, как это исправить.
Проанализируем самую частую ошибку системных администраторов — несоблюдение разрядности. Зачастую на 64-битную операционную систему устанавливают 64-битный драйвер АТОЛ. Однако, если клиентское приложение 1С является 32-битным (что встречается в 90% случаев), оно просто не сможет "увидеть" 64-битные библиотеки драйвера.
Рассмотрим пошаговый алгоритм действий:
1cv8c.exe или 1cv8.exe. Если рядом с названием процесса стоит пометка *32 — значит, ваша платформа 1С 32-битная.Drivers9-KKT-windows32-setup.exe.Если установка корректной разрядности не помогла, воспользуемся проверенным методом "подкладывания" библиотек напрямую в рабочую директорию 1С. Рассмотрим, как это сделать:
C:\Program Files (x86)\ATOL\Drivers9\KKT\bin)..dll из этой папки.C:\Program Files (x86)\1cv8\8.3.XX.XXXX\bin (где XX.XXXX — номер вашей версии).bin платформы.После копирования файлов перезагрузим компьютер или перезапустим службу сервера 1С, если работа ведется в клиент-серверном варианте. Для регулярного выполнения таких технических процедур по расписанию может использоваться программа для автоматического архивирования и обслуживания баз 1С.
Иногда типовая конфигурация (например, Комплексная автоматизация 2.4) хранит в себе старую версию интеграционной компоненты, которая несовместима с установленным в системе драйвером. Проанализируем ситуацию, когда нужно вручную обновить драйвер в самой базе 1С: кроме того, при переходе на новую версию программы может потребоваться подбор решений для переноса данных в 1С:Комплексную автоматизацию.
ATOL_KKT_9.zip, который находится в папке установленного драйвера (путь по умолчанию: C:\Program Files (x86)\ATOL\Drivers9\KKT\1Cv83).Если вы многократно переустанавливали драйверы разных версий, в кеше 1С могли остаться "хвосты", которые блокируют работу. Проанализируем, как правильно очистить систему:
C:\Users\ИмяПользователя\AppData\Roaming\1C\1cv8\ExtCompT.fptr....C:\Users\ИмяПользователя\AppData\Local\Temp.Рассмотрим ситуацию, когда пользователи вынужденно остаются на драйверах 8.х (например, из-за старой прошивки кассы или работы через RDP). В этом случае часто возникает ошибка: "При передаче скидки для печати запрещена регистрация скидки". Это связано с тем, что новые прошивки ККТ требуют передачи уже рассчитанной цены с учетом скидки, а не суммы скидки отдельно.
Проанализируем пример кода, который помогает решить эту проблему в модуле объекта ЧекККМ (или в соответствующей обработке обслуживания):
// Находим процедуру ПодготовитьДанныеДляФискализацииЧека
// Вносим исправление в расчет цены строки чека
// Было:
// СтрокаЧека.Цена = СтрокаТовара.Цена;
// СтрокаЧека.ЦенаСоСкидками = СтрокаТовара.Сумма / СтрокаТовара.Количество;
// Стало:
СтрокаЧека.Цена = СтрокаТовара.Сумма / СтрокаТовара.Количество;
// Теперь в драйвер передается уже конечная цена, и ККТ не пытается рассчитывать скидку самостоятельно
Этот нехитрый прием позволяет продолжать работу на стабильной 8-й версии драйвера, избегая конфликтов с расчетом налогов и итоговых сумм в чеке.
При переходе на драйверы 9.х или 10.х важно не забыть про службу передачи чеков. Если ваша касса подключена по USB, разберем настройку службы EoU:
C:\Program Files (x86)\ATOL\Drivers9\KKT\bin и найдем файл settings.ini в подпапке EthOverUsb.port=COM4).EthOverUsb и добавим её в автозагрузку Windows.Выполнив эти действия, мы обеспечим стабильную работу кассового аппарата в 1С:Комплексная автоматизация без ошибок регистрации компонентов. Если перед запуском оборудования в эксплуатацию потребуется очистить базу от лишних данных по организациям, можно применить обработку для выборочного удаления организаций.