В розничной торговле при использовании нефискальных принтеров чеков (например, Xprinter) многие клиенты отказываются от бумажного чека. В целях экономии кассовой ленты возникает задача: документ продажи в программе должен проводиться и фиксироваться в учете, но физическая печать чека на принтере должна происходить только по отдельному запросу покупателя.
Проанализируем архитектурные особенности конфигураций на обычных формах (таких как «1С:Розница 1.0» и «1С:Управление торговлей 10.3») и разберем практические способы реализации выборочной печати.
Разберем, почему в типовых решениях старых редакций нет встроенного переключателя для отмены печати:
ЧекККМ «Пробит» и формирование движений по регистрам продаж жестко завязаны на вызов процедур подсистемы торгового оборудования (модуль ТОСервер). Программа считает продажу завершенной только тогда, когда драйвер торгового оборудования вернул успешный результат выполнения команды печати чека.ЧекККМ обязательно должен создаваться и проводиться в базе данных, так как в конце смены на основании проведенных чеков формируется итоговый документ ОтчетОРозничныхПродажах.Рассмотрим наиболее гибкий способ решения задачи через добавление управляющего флага на форму рабочего места кассира (РМК).
Ложь).ПробитьЧек модифицируем условие передачи данных в торговое оборудование:
Если ПечататьБумажныйЧек Тогда
// Выполняем типовой вызов торгового оборудования
Результат = ТОСервер.ПечатьЧека(ФискальныйРегистратор, ПараметрыЧека);
Иначе
// Пропускаем отправку команд в принтер, фиксируя статус пробития
ДокументОбъект.Пробит = Истина;
ДокументОбъект.Записать(РежимЗаписиДокумента.Проведение);
Результат = Истина;
КонецЕсли;
При таком подходе продажа регистрируется мгновенно без обращения к принтеру, а движения по регистрам формируются в штатном режиме.
Если требуется оставить типовую конфигурацию без изменений и снятия с поддержки, изменим логику работы внешней обработки обслуживания (например, FR_Rarus_POSPrinter_v104.epf).
ПечатьЧека или ПечататьСтроки).Результат = Истина), но фактически не отправлять ESC/POS-команды в порт принтера.Преимущество метода: Конфигурация остается полностью типовой, кассовая смена открывается и закрывается без ошибок, документы проводятся штатно.
Проанализируем вариант работы без использования принтера чеков в качестве подключенного торгового оборудования:
ЧекККМ проводится моментально без отправки сигналов на печать.Выбор конкретного варианта зависит от требований к сохранению типовой конфигурации и формата работы кассира на торговой точке.