Настройка вывода параметров СКД

1. SantiouS 12.09.19 10:56 Сейчас в теме
Есть отчёт СКД, в котором параметром к запросу выступает ссылка на документ. В выбранном документе есть реквизит "Рейс", который мне нужно так же отобразить после компоновки отчёта, что бы при печати был виден ещё и рейс. Как это сделать?

То есть я хочу получить состав отчёта:
Параметры: Ссылка: ........
Рейс: ........ (Ссылка.Рейс)
(Результат выполнения запроса)

Пытался написать так, как указано на скрине, но СКД так не может :)
Прикрепленные файлы:
По теме из базы знаний
Найденные решения
4. dhurricane 12.09.19 16:31 Сейчас в теме
(3) Возможно не самое изящное решение, но быть может оно Вам подойдет. Оставьте выражение параметра "Маршрут" пустым, включите использование всегда, а в обработчике компоновки результата отчета напишите это:
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
	
	ПараметрСсылки = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("Ссылка");
	ЗначениеСсылки = ПараметрСсылки.Значение;
	
	Если ЗначениеЗаполнено(ПараметрСсылки.ИдентификаторПользовательскойНастройки) Тогда
		ПараметрСсылки = КомпоновщикНастроек.ПользовательскиеНастройки.Элементы.Найти(ПараметрСсылки.ИдентификаторПользовательскойНастройки);
		ЗначениеСсылки = ПараметрСсылки.Значение;
	КонецЕсли;
 
	ПараметрМаршрут = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("Маршрут");
	Если ЗначениеЗаполнено(ЗначениеСсылки) Тогда
		ПараметрМаршрут.Значение = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ЗначениеСсылки, "Маршрут");
	Иначе
		ПараметрМаршрут.Значение = Неопределено;
	КонецЕсли; 
	
КонецПроцедуры
Показать
SantiouS; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. SantiouS 12.09.19 14:03 Сейчас в теме
(2)

Логично :)
Я ошибся в описании, не "Рейс", а "Маршрут". Пишу "&Ссылка.Маршрут" (реквизит "Маршрут" есть у документа по "Ссылка") в "Выражение" и все равно при окончании редактирования получаю ошибку СКД: "Параметр не найден:Ссылка.Маршрут. Продолжить редактирование?"
4. dhurricane 12.09.19 16:31 Сейчас в теме
(3) Возможно не самое изящное решение, но быть может оно Вам подойдет. Оставьте выражение параметра "Маршрут" пустым, включите использование всегда, а в обработчике компоновки результата отчета напишите это:
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
	
	ПараметрСсылки = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("Ссылка");
	ЗначениеСсылки = ПараметрСсылки.Значение;
	
	Если ЗначениеЗаполнено(ПараметрСсылки.ИдентификаторПользовательскойНастройки) Тогда
		ПараметрСсылки = КомпоновщикНастроек.ПользовательскиеНастройки.Элементы.Найти(ПараметрСсылки.ИдентификаторПользовательскойНастройки);
		ЗначениеСсылки = ПараметрСсылки.Значение;
	КонецЕсли;
 
	ПараметрМаршрут = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("Маршрут");
	Если ЗначениеЗаполнено(ЗначениеСсылки) Тогда
		ПараметрМаршрут.Значение = ОбщегоНазначения.ЗначениеРеквизитаОбъекта(ЗначениеСсылки, "Маршрут");
	Иначе
		ПараметрМаршрут.Значение = Неопределено;
	КонецЕсли; 
	
КонецПроцедуры
Показать
SantiouS; +1 Ответить
5. SantiouS 12.09.19 19:39 Сейчас в теме
(4) Я немного по другому решил свою задачу, но отмечу Ваш вариант как лучший за его развернутость. Спасибо!
Оставьте свое сообщение

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