fbpx
  • slide 1C cloud 3
  • slide microsft
  • slide aida64
  • Adobe Creative Suite 6
  • Бесплатные звонки с VIBER
  • Dj TRO  vs Dj Celeron - Atomix Wars [2003]
  • Скрипт для выгрузки базы 1С в DT
  • Завершение процессов на удаленном компьютере Windows
  • Движок Unreal Engine 4 переедет на HTML5
  • Супер Wi-Fi на iPhone 5 :)
  • Apple лишает работоспособности iPhone и iPad после неофициального ремонта
  • Звездочки
  • Динамическая толщина бумаги
  • Мягкий жесткий диск
  • SDI - все драйвера в одном пакете
  • Перенос контактов с WinMobile на Android и не только
  • У iPhone больше уязвимостей, чем у всех остальных.
  • Оптимизация запуска приложений в Linux
  • Медленная скорость Интернет/RDP соединения Windows
  • Сюжетный трейлер Mortal Kombat X
  • День системного администратора
  • Создаем свой караоке-видео
  • Падение сервера 1С после переименования компьютера
  • Российская Госдума приняла закон о блокировке сайтов с пиратскими фильмами
  • Как обжимать витую пару (8P8C)
  • С Днем Программиста 2012
  • Зачем нужна кнопка
  • Огромное облачное хранилище Yunpan 360 на 36Тб
  • Как отключить легкую установку (easy install) в VMWare Workstation
  • Тест супер-кулера Noctua NH-D14
мая23

Печать табличного документа через общую форму печати в УНФ

Троцкий Юрий

Печать табличного документа через общую форму печати в УНФ

Применение встроенного механизма печати в 1С УНФ для печати своего табличного документа.

тонкий клиент

 

 

1. На форме, где должны быть кнопка печати, создаем группу типа "Подменю" (или командную группу) где будет размещаться кнпка печати.

2. Создаем программно кнопку, по нажатию которой должен печататься Табличный документ в модуле формы ПриСозданииНаСервере

 &НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	УправлениеПечатью.ПриСозданииНаСервере(ЭтаФорма, Элементы.КомандыПечать);	
КонецПроцедуры 

3. МодульФормы документа. Обработчик нажатия программно созданной кнопки

&НаКлиенте
Процедура Подключаемый_ВыполнитьКомандуПечати(Команда)
	УправлениеПечатьюКлиент.ВыполнитьПодключаемуюКомандуПечати(Команда, ЭтотОбъект, Объект);
КонецПроцедуры

4. Модуль менеджера документа.

Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт
// Расшифровка платежа
КомандаПечати = КомандыПечати.Добавить();
КомандаПечати.Идентификатор = "МакетРасшифровкаПлатежа";
КомандаПечати.Представление = НСтр("ru = 'Расшифровка платежа'");
КомандаПечати.СписокФорм = "ФормаДокумента,ФормаСписка";
КомандаПечати.ПроверкаПроведенияПередПечатью = Ложь;
КомандаПечати.ПереопределитьПользовательскиеНастройкиКоличества = Истина;
КомандаПечати.МестоРазмещения = "КомандыПечать";
КомандаПечати.Порядок = 1;			
КонецПроцедуры
Процедура Печать(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
	
ПараметрыВывода.ДоступнаПечатьПоКомплектно = Ложь;

Если УправлениеПечатью.НужноПечататьМакет(КоллекцияПечатныхФорм, "МакетРасшифровкаПлатежа") Тогда		
		УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "МакетРасшифровкаПлатежа", "Расшифровка платежа", ПечатнаяФорма(МассивОбъектов, ОбъектыПечати, "МакетРасшифровкаПлатежа"));
КонецЕсли;
	
//Параметры отправки печатных форм по электронной почте
УправлениеНебольшойФирмойСервер.ЗаполнитьПараметрыОтправки(ПараметрыВывода.ПараметрыОтправки, МассивОбъектов, КоллекцияПечатныхФорм);
КонецПроцедуры
Функция ПечатнаяФорма(МассивОбъектов, ОбъектыПечати, ИмяМакета)
Если ИмяМакета = "МакетРасшифровкаПлатежа" Тогда		
		Возврат ПечатьРасшифровкаПлатежа(МассивОбъектов, ОбъектыПечати, ИмяМакета);
КонецЕсли;
КонецФункции
Функция ПечатьРасшифровкаПлатежа(МассивОбъектов,ОбъектыПечати,ИмяМакета) Экспорт 
	
	ПервыйДокумент		=	Истина;
	ТабличныйДокумент	=	Новый ТабличныйДокумент;
	Макет	=	ПолучитьМакет("МакетРасшифровкаПлатежа");
	
	Для Каждого Документ из МассивОбъектов Цикл 
	
	//Текст формирования табличного документа	
	
	ПервыйДокумент	= Ложь;
КонецЦикла;


ТабличныйДокумент.АвтоМасштаб = Истина;
Возврат ТабличныйДокумент;	

КонецФункции

Оставить комментарий

Пожалуйста, войдите, чтобы комментировать.