Переход на требования 54-ФЗ для многих владельцев старых версий 1С стал серьезным испытанием. Часто при попытке пробить чек через кассу Атол из 1С 7.7 «ТиС» мы сталкиваемся с тем, что вместо детального перечня позиций касса печатает только одну строку с итоговой суммой. Рассмотрим по шагам, как выявить причину и исправить настройки обработки обслуживания.
Первым делом проанализируем цикл, в котором происходит регистрация товаров. В старых обработках, таких как fr_comm.ert, часто встречаются ошибки при передаче строковых параметров в объект компоненты. Разберем типичный участок кода и исправим его.
Частой причиной является некорректная работа функции обрезки строки или ошибочная логика присвоения наименования. Посмотрим на этот блок:
// Регистрация товаров
СписокТоваров.ВыбратьСтроки();
Пока СписокТоваров.ПолучитьСтроку() = 1 Цикл
// Проверка наличия колонки НДС
Если НДСесть = 1 Тогда
Объект.Name = ""; // ОШИБКА: Наименование товара не передается в ФР
Иначе
Объект.Name = Eaa(СписокТоваров.ТовНаим, ДлинаНаименования);
КонецЕсли;
Объект.Price = Окр(СписокТоваров.Цена, 2, 1);
Объект.Quantity = СписокТоваров.Количество;
КонецЦикла;
В приведенном коде, если условие НДСесть = 1 истинно, свойство Объект.Name остается пустым. Фискальный регистратор, не получая наименования, может принудительно «схлопывать» чек в одну суммовую позицию. Рекомендуем заменить этот блок на прямое присвоение, чтобы убедиться, что название товара доходит до драйвера:
// Исправленный вариант присвоения наименования
Объект.Name = СокрЛП(СписокТоваров.ТовНаим);
Даже если наименование передается, чек может печататься некорректно из-за неправильно заданных налоговых ставок или признаков предмета расчета. Проанализируем важные аспекты:
TaxTypeNumber соответствует таблице ставок, поддерживаемой вашей версией ФФД (1.05 или 1.2).FprnM1C.dll слишком стара, она может просто не иметь свойств для передачи этих данных.Чтобы понять, виновата ли 1С или сама касса, выполним следующие действия:
Registration или PrintItem).Мы настоятельно советуем проанализировать следующие шаги для приведения системы в соответствие с 54-ФЗ:
DTO 8.16 для современных фискальных накопителей — крайне рискованное решение. Переход на DTO 10.x позволит использовать актуальные механизмы формирования чеков.Работа с 1С 7.7 в связке с современным оборудованием требует пристального внимания к деталям кода. Начните с очистки логики присвоения Объект.Name, исключите принудительное назначение налогов «заглушками» и, если проблема сохранится, рассмотрите возможность обновления внешней компоненты до версии, поддерживающей современные форматы ФФД.