В процессе эксплуатации контрольно-кассовой техники (ККТ) Атол 55Ф, а также смежных моделей 30Ф и 22ПТК в связке с конфигурациями 1С (Розница 2.2, Управление торговлей 10.3), пользователи часто сталкиваются с критической ошибкой при попытке пробить чек со скидкой или бонусами. Программа выдает сообщение: «Чек не напечатан на устройстве для печати чеков... Недопустимое значение. Скидки не поддерживаются». При этом чеки без скидок печатаются в штатном режиме.
Проанализируем ситуацию: данная проблема чаще всего возникает после обновления прошивки кассового аппарата (например, до версий 4555, 5199, 6059 и выше) для работы с форматом фискальных данных ФФД 1.05. Разберем по шагам, почему это происходит и как настроить корректную работу системы.
Основная причина кроется в изменении логики взаимодействия драйвера и прошивки ККТ. В старых версиях драйверов (серия 8.х) скидка передавалась в кассу отдельным методом DiscountValue. С переходом на ФФД 1.05 требования к передаче данных ужесточились: теперь ККТ ожидает получения готовой цены за единицу товара уже с учетом всех примененных скидок и надбавок.
Если драйвер пытается использовать устаревший метод BeginItem / EndItem с передачей скидки, прошивка блокирует операцию, так как математическое равенство «Цена * Количество = Сумма» в новых форматах должно соблюдаться без внешних корректировок скидками. Рассмотрим подробнее основные способы решения этой задачи.
Как показывает практика и опыт коллег, использование драйверов версии 8.15.03 становится невозможным на новых прошивках при работе со скидками. Рассмотрим алгоритм перехода на актуальное ПО:
Важный нюанс: Специалисты отмечают, что для корректной работы требуется версия 1С:Розница не ниже 2.2.6.33, где реализована полноценная поддержка протоколов 9-й серии драйверов.
Часто кассы подключены к локальным ПК, а 1С работает в терминальной сессии (RDP). При переходе на драйверы 9.х стандартный проброс COM-портов через ресурсы RDP может вызывать значительные задержки (до 30–40 секунд на чек) или ошибки связи. Проанализируем способы ускорения печати:
Использование стороннего ПО для проброса портов по протоколу TCP/IP (например, VSPE или аналоги). Это позволяет 1С на сервере обращаться к кассе напрямую по IP-адресу, минуя механизмы трансляции портов Windows, что сокращает время печати чека до 3–5 секунд.
В современных реализациях ДТО 10 рекомендуется использовать встроенный Web-сервер Атол. Это наиболее стабильный метод для распределенных систем, где касса видна серверу 1С как сетевое устройство.
Если конфигурация доработана или вы используете УТ 10.3, можно изменить механизм подготовки данных для фискализации. Основная идея — передавать в ККТ цену, которая уже включает скидку, и обнулять поле скидки в структуре данных. Посмотрим на пример кода в процедуре ПодготовитьДанныеДляФискализацииЧека:
// Вместо передачи чистой цены и суммы скидки отдельно,
// рассчитываем цену с учетом скидки программно
СтрокаЧека.Цена = СтрокаТовара.Сумма / СтрокаТовара.Количество;
// Теперь в драйвер уйдет конечная цена, и ФФД 1.05 примет позицию
Для Розницы 2.2 можно применить более детальную проверку округлений, чтобы избежать «расхождения в 1 копейку», которое также приводит к аннулированию чека:
Разница = ТекущаяПозиция.Сумма / ТекущаяПозиция.Количество;
Если Разница <> ЦенаСоСкидками Тогда
ЗаписьXML.ЗаписатьАтрибут("PriceWithDiscount", XMLСтрока(ТекущаяПозиция.Сумма/ТекущаяПозиция.Количество));
ЗаписьXML.ЗаписатьАтрибут("DiscountSum" , XMLСтрока(0));
Иначе
ЗаписьXML.ЗаписатьАтрибут("PriceWithDiscount", XMLСтрока(ЦенаСоСкидками));
ЗаписьXML.ЗаписатьАтрибут("DiscountSum" , XMLСтрока(ТекущаяПозиция.СуммаСкидок));
КонецЕсли;
Проанализируем еще одну тонкую настройку в параметрах ККТ внутри 1С. В настройках оборудования есть раздел «Параметры ККТ», где присутствует флаг Форматно-логический контроль. Рекомендуется:
0,01 установить 0. Это заставит систему более жестко контролировать математическую точность перед отправкой команды в драйвер, предотвращая попытку пробить некорректно округленный чек, который касса все равно аннулирует.Подводя итог, можно сказать, что проблема со скидками на Атол 55Ф — это системный конфликт старого программного обеспечения 1С (или драйверов) с новыми законодательными требованиями к оформлению чека. Для стабильной работы рекомендуем:
Помните: Любые манипуляции с прошивкой и таблицами ККТ через «Тест драйвера» следует проводить осторожно, предварительно сняв отчет о состоянии расчетов и закрыв смену.