Как убрать старую шапку организации при печати чека ККМ из 1С

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

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

Причина возникновения дублирующей шапки

Проанализируем механизм формирования печатной формы чека. Любой фискальный регистратор (например, семейство Штрих-М, РИТЕЙЛ и аналоги) содержит собственную энергонезависимую память. В ней хранятся внутренние таблицы настроек устройства, включая так называемое аппаратное клише (заголовок чека) и подвал (рекламный текст).

Когда кассир пробивает чек, происходит следующее взаимодействие:

  1. Фискальный регистратор при открытии чека автоматически печатает строки аппаратного клише, зашитые в его памяти (Таблица 4 драйвера).
  2. Далее программа 1С отправляет на печать тело чека, сформированное по шаблону конфигурации, где уже указаны новые реквизиты.

В результате на чековой ленте появляются две шапки: первая — аппаратная со старыми данными, вторая — программная из шаблона 1С. Правка макета в 1С в данном случае не помогает, так как первая шапка формируется на аппаратном уровне кассы.

Пошаговое изменение и очистка клише в драйвере Штрих-М

Для изменения или полного отключения аппаратной шапки нам потребуется штатная сервисная утилита производителя ККТ — Тест драйвера ФР. Рассмотрим процедуру настройки по шагам:

  1. Закроем программу 1С, чтобы освободить COM-порт подключения кассы.
  2. Запустим утилиту Тест драйвера ККТ (Штрих-М).
  3. Перейдем в раздел Настройка свойств, укажем параметры подключения (номер COM-порта или IP-адрес, скорость) и нажмем кнопку Проверка связи. В строке состояния должен отобразиться код модели аппарата.
  4. В правой части окна нажмем кнопку Таблицы.
  5. В открывшемся списке найдем таблицу 4. Текст в чеке и откроем ее двойным кликом.
  6. Посмотрим на содержимое строк. Первые строки (обычно с 1 по 4 или с 1 по 6 в зависимости от прошивки) содержат текст заголовка чека. Заменим текст на актуальные данные новой организации либо полностью сотрем символы, оставив строки пустыми, если шапка формируется средствами 1С.
  7. Нажмем клавишу подтверждения ввода и закроем окно таблицы.
  8. Для проверки перейдем на вкладку Печать и выполним операцию Печать заголовка / Печать клише.

Отключение аппаратного клише через параметры кассы

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

  1. В окне Таблицы утилиты драйвера откроем таблицу 1. Тип и режим кассы.
  2. Найдем поле, отвечающее за печать клише (в разных версиях прошивок параметр может называться Печать заголовка или Автоматическая печать клише).
  3. Установим значение параметра в 0 (отключено).
  4. Сохраним изменения и перезагрузим фискальный регистратор.

Особенности применения шаблонов чеков в 1С:Розница

Рассмотрим, почему при работе с фискальными регистраторами и принтерами чеков (АСПД/ЕНВД) шаблоны ведут себя по-разному:

  1. Фискальный режим (ККТ с передачей данных): 1С передает в кассовый аппарат структурированный пакет данных по протоколу ФФД. Печать фискальной части (наименование товара, ставка НДС, цена, количество, итоговая сумма) целиком контролируется прошивкой кассы. Пользовательский шаблон 1С в данном случае управляет только нефискальными текстовыми блоками до и после основного чека.
  2. Режим принтера чеков (нефискальная печать): Если аппарат используется как принтер документов ЕНВД/патентов (например, Спарк или нефискализированный Штрих), для полного применения визуального шаблона 1С (включая форматирование вида Количество * Цена = Сумма) устройство должно подключаться через универсальный драйвер текстовой печати или Windows-драйвер принтера. В противном случае встроенная микропрограмма кассы будет выводить строки по собственному жестко заданному алгоритму.

Добавление произвольных реквизитов в шаблон чека 1С

Иногда требуется вывести в чек данные, которых нет в стандартном конструкторе шаблонов (например, данные взаиморасчетов, задолженность абонента или произвольные свойства номенклатуры). Штатный конструктор чеков 1С работает только с предопределенным набором полей документа ЧекККМ.

Для добавления произвольных данных рассмотрим доработку через расширение конфигурации. Переопределим процедуру формирования данных для печати чека в общем модуле менеджера оборудования:


// В расширении переопределяем процедуру подготовки данных фискального чека
&Вместо("СформироватьДанныеДляПечатиЧека")
Функция Расш1_СформироватьДанныеДляПечатиЧека(ПараметрыЧека, ОбъектЧека)
    
    // Получаем стандартный результат формирования
    Результат = ПродолжитьВызов(ПараметрыЧека, ОбъектЧека);
    
    // Дополняем структуру собственными параметрами для вывода в нефискальный текст
    Если ЗначениеЗаполнено(ОбъектЧека.Контрагент) Тогда
        Задолженность = ВзаиморасчетыСервер.ПолучитьСальдоАбонента(ОбъектЧека.Контрагент);
        Результат.Вставить("ТекстДополнительно", 
            СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
                "Абонент: %1 | Задолженность: %2 руб.", 
                ОбъектЧека.Контрагент.Наименование, 
                Формат(Задолженность, "ЧДЦ=2; ЧГ=0")
            )
        );
    КонецЕсли;
    
    Возврат Результат;
КонецФункции

После передачи дополнительных текстовых полей в драйвер ККТ они будут успешно распечатаны в составе чека в соответствии с настроенным шаблоном.

← На главную