| 
    
 | 
        Программно получить результат отчета СКД в таблицу значений         | 
☑ | 
    
        | 
    0
    
        ac13    
       
    
    04.09.19 
            ✎
    12:13 
 | 
         
        Есть отчет на СКД, где у нескольких параметров установлен флажок - Ограничение доступности
 и в выражении этих параметров определены подобные значения: "Справочники.Пользователи.НайтиПоКоду("00001")"
 
 Нужно программно получить результат такого отчета.
 
 СхемаКомпоновкиДанных = ОтчетОбъект.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
 ВариантНастройки = СхемаКомпоновкиДанных.ВариантыНастроек.Найти("Основной");
 Настройки = ВариантНастройки.Настройки;
 Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("... // заполняю параметры
 
 КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;    
 Макет = КомпоновщикМакетаОСКД.Выполнить(СхемаКомпоновкиДанных, Настройки, , , Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));
 ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
 ПроцессорКомпоновки.Инициализировать(Макет);
     
 ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
 ТаблицаЗначений = Новый ТаблицаЗначений;
 ПроцессорВывода.УстановитьОбъект(ТаблицаЗначений);
 ПроцессорВывода.Вывести(ПроцессорКомпоновки);
 
 При инициализации выдает ошибку о том, что такие параметры не найдены (с флагом ограничения доступности), либо синтаксическую ошибку на выражение таких параметров: Справочники.Пользователи.НайтиПоКоду("00001")
 
 Как получить результат в таблицу значений подобного отчета?     
         | 
 | 
    
    
        | 
    1
    
        Вафель    
       
    
    04.09.19 
            ✎
    12:15 
 | 
         
        очевидно что параметры заполняешь как то не так     
         | 
 | 
    
    
        | 
    2
    
        ac13    
       
    
    04.09.19 
            ✎
    12:17 
 | 
         
        (1) как заполнять такие параметры?     
         | 
 | 
    
    
        | 
    3
    
        ac13    
       
    
    04.09.19 
            ✎
    12:27 
 | 
         
        Пользователь = Настройки.ПараметрыДанных.Элементы.Найти("Пользователь");
     Пользователь.Значение = Справочники.Пользователи.НайтиПоКоду("ПП0987");
     Пользователь.Использование = Истина;
     
     при этом в СКД для этого параметра задано выражение "Справочники.Пользователи.НайтиПоКоду("ПП0987")" и получаю ошибку:
     Ошибка при вызове метода контекста (Инициализировать) Синтаксическая ошибка "Справочники.Пользователи.НайтиПоКоду"     
         | 
 | 
    
    
        | 
    4
    
        ac13    
       
    
    04.09.19 
            ✎
    12:34 
 | 
         
        все оказалось просто: ПроцессорКомпоновки.Инициализировать(Макет,,,Истина)     
         | 
 | 
    
    
        | 
    5
    
        aleks_default    
       
    
    04.09.19 
            ✎
    12:37 
 | 
         
        Да там внешние функции нужно включать     
         | 
 | 
    
    
        | 
    6
    
        GGDots    
       
    
    04.09.19 
            ✎
    12:39 
 | 
        
         | 
 |