Шаблон внешней печатной формы

Lina Dimitrescu 46 2 4
Функция СведенияОВнешнейОбработке() Экспорт
		
	ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке();
	
	ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиПечатнаяФорма();
	
	ПараметрыРегистрации.Вставить("БезопасныйРежим", Ложь);
	//ПараметрыРегистрации.ВерсияБСП = "2.1.3.2";
	ПараметрыРегистрации.Вставить("Версия", "1.0");
	//ПараметрыРегистрации.Вставить("Информация", "");
	
	ПараметрыРегистрации.Назначение.Добавить("Документ.ВедомостьНаВыплатуЗарплатыПеречислением");
	//ПараметрыРегистрации.Назначение.Добавить("Документ.*"); // все документы
	
	НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
	НоваяКоманда.Представление = Метаданные().Представление();   //Синоним
	НоваяКоманда.Идентификатор = Метаданные().ПолноеИмя();   //ПолноеИмя
	НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовСерверногоМетода();
	НоваяКоманда.Модификатор = "ПечатьMXL"; // Обязательно
	
	//НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
	//НоваяКоманда.Представление = Метаданные().Представление();
	//НоваяКоманда.Идентификатор = Метаданные().ПолноеИмя();
	//НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовКлиентскогоМетода();
	//
	//НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
	//НоваяКоманда.Представление = Метаданные().Представление();
	//НоваяКоманда.Идентификатор = Метаданные().ПолноеИмя();
	//НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыОткрытиеФормы();
	
	//Разрешение = РаботаВБезопасномРежиме.РазрешениеНаИспользованиеВнешнейКомпоненты("ОбщийМакет.КомпонентаПечатиШтрихкодов");
  	//ПараметрыРегистрации.Разрешения.Добавить(Разрешение);
	
	Возврат ПараметрыРегистрации;
	
КонецФункции

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

Функция ПечатьСписокПеречислений(МассивОбъектов, ОбъектыПечати)
	
	ТабличныйДокумент = Новый ТабличныйДокумент;
	ТабличныйДокумент.КлючПараметровПечати = Метаданные().ПолноеИмя();

	Макет = ПолучитьМакет("ПФ_MXL_СписокПеречисленийНаЛицевыеСчета"); 
	
	// получаем данные для печати
	ВыборкаШапок = ВыборкаДляПечатиШапки(МассивОбъектов);
	ВыборкаСтрок = ВыборкаДляПечатиТаблицы(МассивОбъектов);
	
	ПервыйДокумент = Истина;
	
	Возврат ТабличныйДокумент;
	
КонецФункции
2
{62} Переменной Макет присвоено значение, но оно нигде не используется
{65} Переменной ВыборкаШапок присвоено значение, но оно нигде не используется
{66} Переменной ВыборкаСтрок присвоено значение, но оно нигде не используется
{68} Переменной ПервыйДокумент присвоено значение, но оно нигде не используется
Орфографическая ошибка в КомпонентаПечатиШтрихкодов: Штрихкодов

Комментарии

Alex Kost
#1, 05 октября 2020 18:30

было же


FastCode
#2, ред. 06 октября 2020 20:17

Михаил Солдатов добавил комментарий в Telegrаm:

В актуальных решениях неправильно так таблицу команд формировать. Надо использовать функционал БСП.

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

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

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

Ссылка на комментарий https://t.me/FastCodeClub/2077


См. также

Шаблон внешней печатной формы

ПриПолученииСпискаВнешнихПечатныхФорм (БСП)

ПриПолученииВнешнейПечатнойФормы (БСП)

СписокПечатныхФормИзВнешнихИсточников (БСП)

ПечатьПоВнешнемуИсточнику (БСП)

Присоединение печатной формы в виде файла к объекту-основанию

ПередВыполнениемКомандыПечатиВнешнейПечатнойФормы (БСП)

ПриПолученииКомандПечати (БСП)

Модератору