как из метаданных получить макет в виде табличного документа?

1. eda76 12.01.21 01:33 Сейчас в теме
как из метаданных получить макет в виде табличного документа
пробую делать так
ОбъектМетаданных = Метаданные.НайтиПоПолномуИмени(ПолноеИмяМетаданные);
		Если ОбъектМетаданных<>Неопределено Тогда 
			Для Каждого текМакет из ОбъектМетаданных.Макеты Цикл
				Если текМакет.Имя=ИмяМакета Тогда
					ТабДок 	= текМакет.Макет;
					Прервать;
				КонецЕсли;
			КонецЦикла;    
		КонецЕсли;
Показать


но ТабДок пустой
По теме из базы знаний
Найденные решения
2. viplelik 34 12.01.21 03:54 Сейчас в теме
Если известно полное имя и имя макета не проще ли сразу его получить.
Документы.КассоваяКнига.ПолучитьМакет("ИмяМакета");


Ну либо тогда так
	ОбъектМетаданных = Метаданные.НайтиПоПолномуИмени(ПолноеИмяМетаданные);
	
	Если ОбъектМетаданных<>Неопределено Тогда 
		Для Каждого текМакет из ОбъектМетаданных.Макеты Цикл
			Если текМакет.Имя=ИмяМакета  Тогда
				Прервать;
			КонецЕсли;
		КонецЦикла;    
		
		
		Если Метаданные.Документы.Содержит(ОбъектМетаданных) Тогда
			ТабДок = Документы[ОбъектМетаданных.Имя].ПолучитьМакет(текМакет.Имя);
			
		ИначеЕсли Метаданные.Справочники.Содержит(ОбъектМетаданных) Тогда
			ТабДок = Справочники[ОбъектМетаданных.Имя].ПолучитьМакет(текМакет.Имя);
			// и т.д.
		КонецЕсли;
		
		
	КонецЕсли;
Показать
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. viplelik 34 12.01.21 03:54 Сейчас в теме
Если известно полное имя и имя макета не проще ли сразу его получить.
Документы.КассоваяКнига.ПолучитьМакет("ИмяМакета");


Ну либо тогда так
	ОбъектМетаданных = Метаданные.НайтиПоПолномуИмени(ПолноеИмяМетаданные);
	
	Если ОбъектМетаданных<>Неопределено Тогда 
		Для Каждого текМакет из ОбъектМетаданных.Макеты Цикл
			Если текМакет.Имя=ИмяМакета  Тогда
				Прервать;
			КонецЕсли;
		КонецЦикла;    
		
		
		Если Метаданные.Документы.Содержит(ОбъектМетаданных) Тогда
			ТабДок = Документы[ОбъектМетаданных.Имя].ПолучитьМакет(текМакет.Имя);
			
		ИначеЕсли Метаданные.Справочники.Содержит(ОбъектМетаданных) Тогда
			ТабДок = Справочники[ОбъектМетаданных.Имя].ПолучитьМакет(текМакет.Имя);
			// и т.д.
		КонецЕсли;
		
		
	КонецЕсли;
Показать
3. viplelik 34 12.01.21 04:23 Сейчас в теме
И еще, в типовой конфигурации есть функция
		// Возвращает макет печатной формы по полному пути к макету.
		ТабДок = УправлениеПечатью.МакетПечатнойФормы("ПолныйПутьКМакету");
//                         "Документ.<ИмяДокумента>.<ИмяМакета>"
//                         "Обработка.<ИмяОбработки>.<ИмяМакета>"
//                         "ОбщийМакет.<ИмяМакета>".

Можно там код посмотреть.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот