Как при компоновки результата заполнить параметр программно?

1. Airat116 16.06.21 09:14 Сейчас в теме
Здравствуйте, подскажите пожалуйста как заполнить параметр программно в скд?

Такое условие в запросе
ВЫБОР
		КОГДА СКАНИЯ_СогласованиеДоговоровССамозанятымСотрудником.ТипСамозанятости = ЗНАЧЕНИЕ(Перечисление.СКАНИЯ_ТипыСамозанятости.СтороннийСамозанятый)
			ТОГДА СКАНИЯ_СогласованиеДоговоровССамозанятымСотрудником.Руководитель
		ИНАЧЕ &Руководитель
	КОНЕЦ КАК Руководитель


Пытаюсь добавить в параметр одного пользователя, никогда раньше такого не делал(

Написал:
СтандартнаяОбработка = Ложь;
	Параметры = КомпоновщикНастроек.Настройки.ПараметрыДанных;
По теме из базы знаний
Найденные решения
4. Matveev_VS 160 16.06.21 09:53 Сейчас в теме
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
	
	СтандартнаяОбработка = Ложь;
	
	ВывестиСКДВТабличныйДокумент(СхемаКомпоновкиДанных, ДокументРезультат, КомпоновщикНастроек);
		
КонецПроцедуры

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

	ПараметрДанных = НастройкиВлОбъектаКД.Настройки.ПараметрыДанных.Элементы.Найти("Специалисты");
	ПараметрДанных.Значение = Справочники.Категории.НайтиПоКоду("000000002");
	ПараметрДанных.Использование = Истина;
		
	Настройки = КомпоновщикНастроек.ПолучитьНастройки();
	
	КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
	
	МакетКомпоновки = КомпоновщикМакета.Выполнить(МакетСКД, Настройки);
	
	ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
	ПроцессорКомпоновки.Инициализировать(МакетКомпоновки);
	
	ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
	ПроцессорВывода.УстановитьДокумент(ТабличныйДокумент);
	
	ПроцессорВывода.Вывести(ПроцессорКомпоновки);	
	
КонецПроцедуры
Показать
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Matveev_VS 160 16.06.21 09:27 Сейчас в теме
Настройка = КомпоновщикНастроек.ПолучитьНастройки();

А потом можно добавить.
3. Airat116 16.06.21 09:29 Сейчас в теме
(2)
Хорошо, а далее как это выводить?
4. Matveev_VS 160 16.06.21 09:53 Сейчас в теме
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
	
	СтандартнаяОбработка = Ложь;
	
	ВывестиСКДВТабличныйДокумент(СхемаКомпоновкиДанных, ДокументРезультат, КомпоновщикНастроек);
		
КонецПроцедуры

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

	ПараметрДанных = НастройкиВлОбъектаКД.Настройки.ПараметрыДанных.Элементы.Найти("Специалисты");
	ПараметрДанных.Значение = Справочники.Категории.НайтиПоКоду("000000002");
	ПараметрДанных.Использование = Истина;
		
	Настройки = КомпоновщикНастроек.ПолучитьНастройки();
	
	КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
	
	МакетКомпоновки = КомпоновщикМакета.Выполнить(МакетСКД, Настройки);
	
	ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
	ПроцессорКомпоновки.Инициализировать(МакетКомпоновки);
	
	ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
	ПроцессорВывода.УстановитьДокумент(ТабличныйДокумент);
	
	ПроцессорВывода.Вывести(ПроцессорКомпоновки);	
	
КонецПроцедуры
Показать
5. Airat116 16.06.21 10:01 Сейчас в теме
Оставьте свое сообщение

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