|
Альтернативная печать чеков для термопринтеров
Процедура Печать(Докум, Устройство=1, КолвоКопий=2) Перем НачПовт, КонПовт; Текст=СоздатьОбъект("Текст"); Текст.КодоваяСтраница(1); Текст.ДобавитьСтроку(симв(27)+"@"); // номердок=число(докум.номердок); датадок=строка(докум.датадок); стр=""; Текст.ДобавитьСтроку(СТр); Текст.ДобавитьСтроку(СТр); Стр=ФиксШаблон("Чек [номердок] от [датадок] "); Текст.ДобавитьСтроку(СТр); //Текст.ДобавитьСтроку(" Чек "); Текст.ДобавитьСтроку(" № Наименование "); Текст.ДобавитьСтроку(" Код количество цена сумма"); Если Докум.Скидка.Выбран()=1 Тогда Врстр="Общ"; процент=Докум.Скидка.Процент*0.01; иначе Врстр="Сумма"; процент=0; КонецЕсли; СчетчикЦикла = 0; // выводим табличную часть Н = 0; Докум.ВыбратьСтроки(); ИтогоСкидка=0; Пока Докум.ПолучитьСтроку() = 1 Цикл Н = Н + 1; скидка=Окр(Докум.Цена*Докум.Количество*процент,2,0); ИтогоСкидка=ИтогоСкидка+скидка; Печкол=Докум.Количество; ПечНаим=СокрЛП(Докум.Номенклатура.Наименование); Печкод= СокрЛП(Докум.Номенклатура.Код); ПечЦена=Докум.Цена; ПечСумма=Докум.Сумма; Если Окр(Печкол)=Печкол тогда Печкол=Окр(Печкол); конецесли; Стр=ФиксШаблон("[Н ] [ПечНаим ] "); Текст.ДобавитьСтроку(СТр); Стр=ФиксШаблон("[ Печкод ] [Печкол] [ПечЦена] [ПечСумма] "); Текст.ДобавитьСтроку(СТр); КонецЦикла; СуммаИтог = Докум.Итог("Сумма"); Стр=ФиксШаблон(" Итого: [ СуммаИтог ] руб."); Текст.ДобавитьСтроку(СТр); Стр=ФиксШаблон(" Итого скидка: [ ИтогоСкидка ] р. "); Текст.ДобавитьСтроку(СТр); Стр=""; Текст.ДобавитьСтроку(СТр); Текст.ДобавитьСтроку(симв(29)+симв(86)+симв(66)+симв(1));//Обрезать чек!!! ИмяФ=КаталогИб()+"Врем"; Текст.Записать(имяФ); ФС.КопироватьФайл(ИмяФ+".txt","com1",1) ; ФС.КопироватьФайл(ИмяФ+".txt","com1",1) ; КонецПроцедуры // Печать()
|
Категория: Проблемы 1C и их решения. | Добавил: Чех (26.05.2009)
|
Просмотров: 1875 | Комментарии: 1
| Рейтинг: 0.0/0 |
Добавлять комментарии могут только зарегистрированные пользователи. [ Регистрация | Вход ]
|
|