вторник, 13 сентября 2016 г.

Внешняя печатная форма на СКД


 Внешняя печатная форма, формируемая на основании СКД.

 
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
 
 СтандартнаяОбработка = ложь;
 
 Печать(ДокументРезультат, ДанныеРасшифровки);
 
КонецПроцедуры

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

Функция ПечатьНаПринтер() Экспорт
 
 ПроверитьЗаполнение();
 
 ДокументРезультат = Новый ТабличныйДокумент;
 ДокументРезультат.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ПечатьСКД";
 
 Возврат Печать(ДокументРезультат);
 
КонецФункции