Процедура ПриОткрытии() Макет = ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); Для каждого вариант из макет.ВариантыНастроек Цикл ЭлементыФормы.Варианты.СписокВыбора.Добавить(вариант.Представление); КонецЦикла; Варианты = ЭлементыФормы.Варианты.СписокВыбора[0].значение; КонецПроцедуры Процедура ВариантыПриИзменении(Элемент) Макет = ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных"); настройки=ОпределитьНастройки(макет, элемент.значение); КомпоновщикНастроек.ЗагрузитьНастройки(настройки); ЭлементыФормы.Результат.Очистить(); СкомпоноватьРезультат(ЭлементыФормы.Результат,ДанныеРасшифровки); КонецПроцедуры Функция ОпределитьНастройки(Макет, представлениеМакета) Для каждого вариант из макет.ВариантыНастроек Цикл если вариант.Представление=представлениеМакета тогда настройки=вариант.настройки; КонецЕсли; КонецЦикла; Возврат настройки; КонецФункции
2 Коммент.
Оставить комментарий
Для отправки комментария вам необходимо авторизоваться.

Вы неверно формируете список макетов. Есть два способа:
1. Ручной. Вы вручную составляете список макетов и заганяете его в поле списка
2. Обойти все макеты отчета/обработки программно – с помощью Метаданные.Обработки..Макеты Или
Метаданные.Отчеты..Макеты.
Тгда в процедуре “ВариантыПриИзменении(Элемент)” будет следующее –
Макет = ПолучитьМакет(Элемент.Значение);
В данном случае вы формируете не список “вариантов отчета” (кстати немного не понял что это), список вариантов настроек – то есть, варианты настроек, которые находятся на вкладке “Настройки” вашей схемы компоновки данных с именем “ОсновнаяСхемаКомпоновкиДанных”.
Если же вы этого и хотите, то все полностью работает, проверьте поле “Представление” возможно у вас многоязыковый интерфейс и вы не ввели имена для других языков. Отсюда и заполняются пустые строки.