Имя: Пароль:
1C
1С v8
Параметры в построителе отчета
0 McArt
 
01.02.13
14:26
Помогите, пожалуйста понять, почему в запросе в построителе отчета не срабатывает параметр.
Вот кусок текста запроса:

   |ИЗ
   |    РегистрНакопления.ВзаиморасчетыСКонтрагентами.ОстаткиИОбороты(&ДатаНач, &ДатаКон, Запись {(&Периодичность)}, Движения, ДоговорКонтрагента.ВестиПоДокументамРасчетовСКонтрагентом = ЛОЖЬ {(ДоговорКонтрагента).*, (Сделка).*, (Контрагент).*, (Организация).*}) КАК РегВзаиморасчеты
   |ГДЕ
   |        РегВзаиморасчеты.Регистратор.Автор = &Автор
   |{ГДЕ
   |    РегВзаиморасчеты.Регистратор.* КАК Регистратор,

Далее добавляю такую строку:
УниверсальныйОтчет.ПостроительОтчета.Параметры.Вставить("Автор", ПараметрыСеанса.ТекущийПользователь);

В консоли запросов фильтруются по автору данные, а в построителе отчёта - нет, выводит все данные.
1 SherifSP
 
01.02.13
14:36
(0) Типы совпадают Регистратор.Автор и ПараметрыСеанса.ТекущийПользователь?
2 McArt
 
01.02.13
14:54
(1) Да, Справочник.Пользователи.
3 McArt
 
01.02.13
20:11
Протрассировал отчёт, нигде параметры не скидываются.
4 DrShad
 
01.02.13
20:12
а почему вставить? а не присвоить?
5 McArt
 
01.02.13
20:13
(4) Потому что параметры имеют тип Структура.
6 DrShad
 
01.02.13
20:14
(5) понятно
7 McArt
 
01.02.13
21:48
Пробовал через отбор, тоже не взлетает.
Запрос:

   |ИЗ
   |    РегистрНакопления.ВзаиморасчетыСКонтрагентами.ОстаткиИОбороты(&ДатаНач, &ДатаКон, Запись {(&Периодичность)}, Движения, ДоговорКонтрагента.ВестиПоДокументамРасчетовСКонтрагентом = ЛОЖЬ {(ДоговорКонтрагента).*, (Сделка).*, (Контрагент).*, (Организация).*}) КАК РегВзаиморасчеты
   |{ГДЕ
   |    РегВзаиморасчеты.Регистратор.Автор.* КАК Автор,

Затем добавил:

   ОтборПоАвтору = УниверсальныйОтчет.ПостроительОтчета.Отбор.Добавить("Автор");
   ОтборПоАвтору.Использование = Истина;
   ОтборПоАвтору.ВидСравнения = ВидСравнения.Равно;
   ОтборПоАвтору.Значение = ПараметрыСеанса.ТекущийПользователь;

Причём на форме настроек отбор отображается, что он якобы есть, а на самом деле отбора снова не происходит.
8 Михаил Козлов
 
01.02.13
21:55
В отладчике посмотрите Постороитель.ПолучитьЗапрос().Текст;
9 McArt
 
01.02.13
22:13
(8) Похоже что именно сюда копать и нужно, из запроса пропала моя констукция
|ГДЕ
   |        РегВзаиморасчеты.Регистратор.Автор = &Автор
10 McArt
 
02.02.13
10:34
(8) Спасибо, Вы очень помогли.
Основная теорема систематики: Новые системы плодят новые проблемы.