Имя: Пароль:
1C
1С v8
8.3 СКД Передать параметр в запрос
0 AlexAl-77
 
05.04.16
19:39
Всем доброе время суток. Столкнулся с проблемой. Создал отчет на СКД с параметром. Передаю туда праметр так

Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
    
    
    
    
    
     СтандартнаяОбработка = Ложь;
    КомпоновщикМакет = Новый КомпоновщикМакетаКомпоновкиДанных;
    
        
    
    Параметр = ЭтотОбъект.КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("МассивАктивныеПользователи"));
    Параметр.Значение = ПолучениеСпискаАктивныхПользователей();
    Параметр.Использование = Истина;
    
    
    Макет = КомпоновщикМакет.Выполнить(СхемаКомпоновкиДанных, ЭтотОбъект.КомпоновщикНастроек.Настройки, ДанныеРасшифровки);
    ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
    ПроцессорКомпоновки.Инициализировать(Макет, , ДанныеРасшифровки);
    ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
    ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
    ПроцессорВывода.Вывести(ПроцессорКомпоновки);
    
    
КонецПроцедуры


Но теперь не работают отборы которые на форме пользовательские, как это исправить?
1 Defender aka LINN
 
05.04.16
20:00
Рекомендую изучить методы Компоновщика
2 Cyberhawk
 
05.04.16
20:02
ПриКомпоновкеРезультата - это обработчик в модуле отчета, он про твою форму и что там у тебя в ней уже ничего не знает
Почитай для интереса: СКД в последних типовых: давно "ПриКомпоновкеРезультата" не используется?
3 EvgeniuXP
 
06.04.16
00:01
ПолучитьНастройки или ПолучитьПользовательскиеНастройки

И лучше изучай через отладчик - многое в книжках не сказано
4 Web00001
 
06.04.16
06:28
Так вроде это, не надо же полностью самому выводить отчет, достаточно просто указать параметры в этой процедуре и оставить стандартную обработку или не? Я не помню просто но вроде как работало именно так. И еще можно создать форму и там заполнять параметры СКД при открытии формы или при изменении контрола, тогда все будет работать.
5 Mankubus
 
06.04.16
07:10
(0) это код только для передачи параметра?
тогда ищи в СП УстановитьЗначениеПараметра
6 AlexAl-77
 
06.04.16
12:55
(4)  Большое тебе человеческое спасибо, я даже и не догадался так попробовать. Всем спасибо за участие, хорошего дня.
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн