Изменение текста чека на принтере чеков. Розница 2.3
Клиент обратился с проблемой. В шаблонах для принтеров чеков нельзя поменять текст. Чеки выходят объемными и громоздкими.
Есть решение, но там целиком замещается текст печати чека. Мне такой подход не нравится, я использую пост-обработку текста.
Расширяю процедуру СформироватьТекстНефискальногоЧека модуля ОборудованиеЧекопечатающиеУстройстваКлиентСервер:
&Вместо("СформироватьТекстНефискальногоЧека") Функция тнфч_СформироватьТекстНефискальногоЧека(ОбщиеПараметры, ШиринаСтроки, ФорматФФД, ПолеПодписи) // Осипов 2024-05-05 Для долгой службы обрабатывем текст после вывода Текст = ПродолжитьВызов(ОбщиеПараметры, ШиринаСтроки, ФорматФФД, ПолеПодписи); Т = Новый ТекстовыйДокумент(); Т.УстановитьТекст(Текст); Стр = 1; НайденоДоброПожаловать = ложь; Пока Стр < Т.КоличествоСтрок() Цикл Строка = Т.ПолучитьСтроку(Стр); Удалить = ложь; Если Найти (Строка, "ДОБРО ПОЖАЛОВАТЬ") <> 0 Тогда НайденоДоброПожаловать = истина; ИначеЕсли ЛЕВ (Строка, 7) = "БЕЗ НДС" ИЛИ ЛЕВ (Строка, 5) = "ТОВАР" ИЛИ ЛЕВ (Строка, 13) = "ПОЛНЫЙ РАСЧЕТ" ИЛИ ЛЕВ (Строка, 4) = "СНО:" ИЛИ ЛЕВ (Строка, 4) = "СНО:" ИЛИ ЛЕВ (Строка, 7) = "КАССИР:" ИЛИ ЛЕВ (Строка, 8) = "ПОДПИСЬ:" ИЛИ Найти (Строка, "СУММА БЕЗ НДС") <> 0 ИЛИ Найти (Строка, "КАССОВЫЙ ЧЕК") <> 0 Тогда Удалить = истина; КонецЕсли; //Удаляем все до добро пожаловать Если НЕ НайденоДоброПожаловать Тогда Удалить = истина; КонецЕсли; Если Удалить Тогда Т.УдалитьСтроку(Стр); Иначе Стр = Стр + 1; КонецЕсли; КонецЦикла; Возврат Т.ПолучитьТекст(); КонецФункции
Исходный текст:
================================================
Общество с ограниченной ответственностью "МОЯ ФИРМА
"
Пушкина
Пушкина Добрый Магазин
ДОБРО ПОЖАЛОВАТЬ!
КАССОВЫЙ ЧЕК
ПРИХОД ИНН 0000000000
ЧЕК №9 05.05.2024 20:34
------------------------------------------------
Товар
1.000 х 20.00=20.00
БЕЗ НДС
ТОВАР
ПОЛНЫЙ РАСЧЕТ
------------------------------------------------
ИТОГ =20.00
------------------------------------------------
ОПЛАТА
НАЛИЧНЫМИ =20.00
СНО: УСН доход
СУММА БЕЗ НДС =20.00
КАССИР: Админ
ПОДПИСЬ:________________________________________
СПАСИБО ЗА ПОКУПКУ!
================================================
Исправленный текст:
ДОБРО ПОЖАЛОВАТЬ!
ПРИХОД ИНН 0000000000
ЧЕК №10 05.05.2024 20:41
------------------------------------------------
Товар
1.000 х 20.00=20.00
------------------------------------------------
ИТОГ =20.00
------------------------------------------------
ОПЛАТА
НАЛИЧНЫМИ =20.00
СПАСИБО ЗА ПОКУПКУ!
================================================
Среда: 2.3.13.30 Объем: 1 час.
Свежие комментарии