Имя: Пароль:
1C
Юмор
Почему неправильно работает запрос?
0 Масянька
 
10.06.13
10:15
День добрый!
Такая выборка:

мВидНоменклатуры = СоздатьОбъект("СписокЗначений");
   мВидНоменклатуры.ДобавитьЗначение(Перечисление.ВидыНоменклатуры.Право);
   мВидНоменклатуры.ДобавитьЗначение(Перечисление.ВидыНоменклатуры.Работа);
   
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса =
"//{{ЗАПРОС(Сформировать)
|Период с ДатаНачала по ДатаОкончания;
|ДокОснование     = Документ.РеализацияРозница.ТекущийДокумент;
|Контрагент         = Документ.РеализацияРозница.Контрагент;
|Номенклатура     = Документ.РеализацияРозница.Номенклатура;
|ВидНоменклатуры = Документ.РеализацияРозница.Номенклатура.ВидНоменклатуры;
|Единица         = Документ.РеализацияРозница.Единица.ОКЕИ;
|Количество     = Документ.РеализацияРозница.Количество;
|Цена             = Документ.РеализацияРозница.Цена;
|Сумма             = Документ.РеализацияРозница.Сумма;
|СтавкаНДС         = Документ.РеализацияРозница.СтавкаНДС;
|НДС             = Документ.РеализацияРозница.СуммаНДС;
|НомерГТД         = Документ.РеализацияРозница.Номенклатура.НомерГТД;
|Страна             = Документ.РеализацияРозница.Номенклатура.СтранаПроисхождения;
|СтранаК         = Документ.РеализацияРозница.Номенклатура.СтранаПроисхождения.Код;
|СтранаН         = Документ.РеализацияРозница.Номенклатура.СтранаПроисхождения.Наименование;
|Группировка ДокОснование;
|Группировка Номенклатура Упорядочить По Номенклатура.Код без групп;
|Условие(Контрагент = Розница);
|Условие(Номенклатура.ВидНоменклатуры в мВидНоменклатуры);";


Почему в результате выборки - только Право?
Спасибо.
1 KUBIK
 
10.06.13
10:20
За период не попала работа
2 1Сергей
 
10.06.13
10:21
Право на что?
3 1Сергей
 
10.06.13
10:25
|Условие(Контрагент = Розница);

где задаётся Розница?
4 Ёпрст
 
гуру
10.06.13
10:25
всё не смотрел, но вот за такое,
|Условие(Номенклатура.ВидНоменклатуры в мВидНоменклатуры)

надо тапком..
5 Масянька
 
10.06.13
10:30
Все есть - проверено.
(4) А как надо? В типовом, кстати, посмотрела.
Смысл: формируется 2 док-а: в одном услуги, в другом товар и право. Право - это ПО, с видом номенклатуры - Перечисление.ВидыНоменклатуры.Право.
6 Масянька
 
10.06.13
10:31
Нашла - не работа, а прочее.
Но все-таки, как надо с учетом (4)?
7 viktor_vv
 
10.06.13
10:37
(6)У тебя ж переменная объявлена

|ВидНоменклатуры = Документ.РеализацияРозница.Номенклатура.ВидНоменклатуры;


|Условие(ВидНоменклатуры в мВидНоменклатуры)
8 Масянька
 
10.06.13
10:38
(7) И все?
9 viktor_vv
 
10.06.13
10:39
(8) Ну как бы да. Просто в твоем варианте, с обращением через точку в условии, это дополнительные тормоза.
10 Масянька
 
10.06.13
10:43
Спасибо.
11 viktor_vv
 
10.06.13
10:48
И даже если бы такой переменной не было бы объявлено, то ее надо было объявить и использовать в условии, вместо обращения через точку в условии.
12 Масянька
 
10.06.13
10:49
(11) Я поняла. Изначально такое условие и было (без точки). Но - не все попало, начала корежить.
Ёпрст так написал, что мне стыдно стало :((
13 Ёпрст
 
гуру
10.06.13
12:00
(12) зато запомнишь, надеюсь, навсегда :)
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.