podkljuchenie_vneshnej_pechatnoj_formi_v_1s_tonkij_klient

Подключение внешней печатной форми в 1С (тонкий клиент)

  1. Создаем внешнюю обработку
  2. Добавляем макет
  3. В МодульОбекта вставляем описание
Функция СведенияОВнешнейОбработке() Экспорт
	
	//сообщим платформе, что перед ней печатная форма
	ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("1.0.0.0");
	ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиПечатнаяФорма();
	
	//сообщаем, что печатная форма предназначается для определенного документа
	МасНазначений = Новый Массив;
	МасНазначений.Добавить("Документ.РеализацияТоваровУслуг");
	ПараметрыРегистрации.Назначение = МасНазначений;
	
	//определяем наименование, версию и режим безопасности
	ПараметрыРегистрации.Наименование = "WA Печать заказа";
	ПараметрыРегистрации.Версия = "1.00";
	ПараметрыРегистрации.БезопасныйРежим = Ложь;
	
	// добавляем команду
	НоваяКоманда 						=	ПараметрыРегистрации.Команды.Добавить();
	НоваяКоманда.Представление 			=	НСтр("ru = 'WA Печать заказа'; uk = 'WA Друк замовлення'");
	НоваяКоманда.Идентификатор 			=	"ШаблонМакетаВнешнейПечатнойФормы";
	НоваяКоманда.Использование 			=	ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовСерверногоМетода();
	НоваяКоманда.ПоказыватьОповещение	=	Истина;
	НоваяКоманда.Модификатор 			=	"ПечатьMXL";
	
	Возврат ПараметрыРегистрации;
	
КонецФункции

Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
	УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "ШаблонМакетаВнешнейПечатнойФормы", "WA Печать заказа", СформироватьПечатнуюФорму(МассивОбъектов[0], ОбъектыПечати, ПараметрыВывода));
КонецПроцедуры

Функция СформироватьПечатнуюФорму(СсылкаНаДокумент, ОбъектыПечати, ПараметрыВывода)
	
	//создаем новый табличный документ, задаем его параметры и выбираем созданный нами макет
	Табдок = новый ТабличныйДокумент;
	Табдок.ИмяПараметровПечати 	= "ПараметрыПечати";
	ТабДок.ОриентацияСтраницы 	= ОриентацияСтраницы.Портрет;
	ТабДок.АвтоМасштаб 			= Истина;
	
	//Формируем макет
	МакетОбработки = ПолучитьМакет("ШаблонМакетаВнешнейПечатнойФормы");
	
	Если ТипЗнч(ПараметрыВывода)=Тип("Структура") И ПараметрыВывода.Свойство("КодЯзыкаДляМногоязычныхПечатныхФорм") Тогда 
		КодЯзыкаПечать = ПараметрыВывода.КодЯзыкаДляМногоязычныхПечатныхФорм;
	Иначе 
		КодЯзыкаПечать = "uk";
	КонецЕсли;	
	МакетОбработки.КодЯзыка = КодЯзыкаПечать;
	
	//выводим области - область макета и заполняем все параметры
	ОбластьШапка = МакетОбработки.ПолучитьОбласть("Шапка");
	//ОбластьШапка.Параметры.Дата = Формат(ДанныеДляПечатиПоШапке.Дата,"ДФ=dd.MM.yyyy");
	Табдок.Вывести(ОбластьШапка);
	
	Возврат табдок;
	
КонецФункции
	

Пример внешней печатной формы

  • /sites/data/pages/podkljuchenie_vneshnej_pechatnoj_formi_v_1s_tonkij_klient.txt
  • Последнее изменение: 2026/02/11 15:13
  • tro