Имя: Пароль:
1C
1С v8
Проблема с параметром запроса
0 vanyshan
 
19.10.11
22:43
Добрый всем вечер!
Есть такой запрос

Запрос=Новый Запрос("ВЫБРАТЬ
   |УсловияПоставокПоДоговорамКонтрагентовПоНоменклатуреСрезПоследних.Номенклатура
   |ИЗ
   |РегистрСведений.УсловияПоставокПоДоговорамКонтрагентовПоНоменклатуре.СрезПоследних(&Период, ДоговорКонтрагента = &Договор) КАК УсловияПоставокПоДоговорамКонтрагентовПоНоменклатуреСрезПоследних
   |ГДЕ УсловияПоставокПоДоговорамКонтрагентовПоНоменклатуреСрезПоследних.Регистратор = &Регистратор");
       Запрос.УстановитьПараметр("Период", Дата);
       Запрос.УстановитьПараметр("Договор", ДоговорКонтрагента);
       Запрос.УстановитьПараметр("Регистратор", "?");

А вот с регистратором проблемка. В документе есть реквизит ДоговорКонтрагента, тип справ.ссылка.договор. В табличной части этого справочника "ДокументыУсловияДоговора" и спрятан мой регистратор. Подскажите как к нему обратиться задать?
1 GROOVY
 
19.10.11
22:45
Ну все просто! Обратись к табличной части этого справочника и наложи отбор по регистратору.
2 GROOVY
 
19.10.11
22:46
Как к нему обратиться... Телепортирую: Может "Бронхопульмонолог"?
3 GROOVY
 
19.10.11
22:50
Серьезно: Строк много? На какую строку отбор ставить? На все? тогда вложенный запрос. На одну, тогда определись на какую....
4 KUBIK
 
19.10.11
22:52
(0) Вложенный запрос рулит - возможно в в тч до дури регистраторов
5 KUBIK
 
19.10.11
22:53
(3) ой, Павел, сорри - опоздал
6 vanyshan
 
19.10.11
22:54
Да, в табличной части много регистраторов, но мне нужен ближайший к сегодняшней дате. Значит вложенный запрос говорите?
7 KUBIK
 
19.10.11
22:58
(6) А юзер может рабочуую дату менять? во будет фишка - к ближайшей дате
8 Explorer1c
 
19.10.11
22:59
(0)Даже боюсь что-то говорить,после (1) мастер класс... я бы сделал отбор по документам "условия договоров" с отбором по конкретному договору,но щас понял,что это будет раз в 100 дольше.
9 vanyshan
 
19.10.11
22:59
Срез последних, думаю так будет понятней
10 GROOVY
 
19.10.11
22:59
И как в ТЧ дата зафиксирована?
11 GROOVY
 
19.10.11
23:00
Мда...
12 Explorer1c
 
19.10.11
23:04
(0)Вообще не пойму цели запроса-регистратор должен интерактивно задаваться при таком подходе,помоему)))
13 vanyshan
 
19.10.11
23:12
Если регистратора явно не указывать, то данные попадают не только с последнего регистратора, а мне нужна номенклатура из регистратор срез последних
14 Explorer1c
 
19.10.11
23:15
(13)тогда после "где" ДоговорКонтрагента=&Договор напиши и попробуй
15 vanyshan
 
19.10.11
23:17
Я пробовал в консоле - все работает, не знаю как сам параметр задать.
16 Explorer1c
 
19.10.11
23:20
(0)Так задавать регистратор и не надо,мне кажется ,просто выбираешь последнюю зписиь,смотришь какой там регистратор и перебираешь номенклатуру этого регистратора
17 Explorer1c
 
19.10.11
23:21
(16)* задав параметр *Договор,конечно.(Правда я не знаю,что о таком приеме зкажет Groovy,хотелось бы услышать)
18 Explorer1c
 
19.10.11
23:48
(0)Ну че,как решил задачу?)
19 gniknik
 
19.10.11
23:54
Может условие представить так:
|ГДЕ УсловияПоставокПоДоговорамКонтрагентовПоНоменклатуреСрезПоследних.Регистратор В (&Регистратор)");
а как значения параметра Регистратор передать массив из нужных значений табличной части элемента справочника.
20 vanyshan
 
20.10.11
00:12
Чесно говоря уже голова плохо соображает, если кто что еще может посоветовать, буду очень признателен. У меня перекур