Имя: Пароль:
1C
1С v8
Запрос. Сломал голову
0 Альбатрос
 
01.11.12
12:45
В консоле запрос отрабатывает и результат не пустой. а в коде пустой. В чем может быть проблема?



Функция СравнитьРегистры(ЗаказПокупателя)
   
   Запрос = Новый Запрос;
   Запрос.УстановитьПараметр("ЗаказПокупателя", ЗаказПокупателя);
   Запрос.Текст = "ВЫБРАТЬ
                   |ЗаказыПокупателейОстатки.Номенклатура,
                   |ЕСТЬNULL(ЗаказыПокупателейОстатки.КоличествоОстаток, 0) - ЕСТЬNULL(ВнутренниеЗаказыОстатки.КоличествоОстаток, 0) КАК Разность
                   |ПОМЕСТИТЬ ЗаказыПокупатеяНеВошедшиеВоВнутреннийЗаказ
                   |ИЗ
                   |РегистрНакопления.ЗаказыПокупателей.Остатки(
                   |,
                   |ЗаказПокупателя.Ссылка = &ЗаказПокупателя
                   |И ЗаказПокупателя.СкладГруппа.СкладОтдела
                   |И НЕ Номенклатура В
                   |(ВЫБРАТЬ
                   |ЗаказыПокупателейОстатки.Номенклатура
                   |ИЗ
                   |РегистрНакопления.ЗаказыПокупателей.Остатки(, ЗаказПокупателя.Ссылка = &ЗаказПокупателя
                   |И ЗаказПокупателя.СкладГруппа.СкладОтдела) КАК ЗаказыПокупателейОстатки ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.ВнутренниеЗаказы.Остатки(, ВнутреннийЗаказ.ДокументОснование.Ссылка = &ЗаказПокупателя
                   |И ВнутреннийЗаказ.ДокументОснование.СкладГруппа.СкладОтдела) КАК ВнутренниеЗаказыОстатки
                   |ПО
                   |ЗаказыПокупателейОстатки.ЗаказПокупателя = ВнутренниеЗаказыОстатки.ВнутреннийЗаказ.ДокументОснование
                   |И ЗаказыПокупателейОстатки.Номенклатура = ВнутренниеЗаказыОстатки.Номенклатура
                   |И ЗаказыПокупателейОстатки.КоличествоОстаток = ВнутренниеЗаказыОстатки.КоличествоОстаток)) КАК ЗаказыПокупателейОстатки
                   |ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ВнутренниеЗаказы.Остатки(
                   |,
                   |ВнутреннийЗаказ.ДокументОснование.Ссылка = &ЗаказПокупателя
                   |И ВнутреннийЗаказ.ДокументОснование.СкладГруппа.СкладОтдела) КАК ВнутренниеЗаказыОстатки
                   |ПО ЗаказыПокупателейОстатки.ЗаказПокупателя = ВнутренниеЗаказыОстатки.ВнутреннийЗаказ.ДокументОснование
                   |И ЗаказыПокупателейОстатки.Номенклатура = ВнутренниеЗаказыОстатки.Номенклатура
                   |;
                   |
                   |////////////////////////////////////////////////////////////////////////////////
                   |ВЫБРАТЬ
                   |ЗПнеВошедшиеВВЗ.Номенклатура,
                   |ЗПнеВошедшиеВВЗ.Разность
                   |ИЗ
                   |ЗаказыПокупатеяНеВошедшиеВоВнутреннийЗаказ КАК ЗПнеВошедшиеВВЗ
                   |ГДЕ
                   |ЗПнеВошедшиеВВЗ.Разность > 0
                   |;
                   |
                   |////////////////////////////////////////////////////////////////////////////////
                   |УНИЧТОЖИТЬ ЗаказыПокупатеяНеВошедшиеВоВнутреннийЗаказ";
   
               
                       
   
   
   Возврат     Запрос.Выполнить().Пустой();
       
КонецФункции
1 hhhh
 
01.11.12
12:48
наверно в ЗаказПокупателя какой-то бред передаете
2 Альбатрос
 
01.11.12
12:49
(1) Нет. Проверил. Ссылка на документ
3 Reset
 
01.11.12
12:50
Ну, еще раз проверь
4 shuhard
 
01.11.12
12:50
(2) будь мужиком, убери из запроса все кроме:
(ВЫБРАТЬ
                   |ЗаказыПокупателейОстатки.Номенклатура
                   |ИЗ
                   |РегистрНакопления.ЗаказыПокупателей.Остатки(, ЗаказПокупателя.Ссылка = &ЗаказПокупателя
                   |И ЗаказПокупателя.СкладГруппа.СкладОтдела)
5 Альбатрос
 
01.11.12
12:50
+(2) Регистры вручную перекопал по конкретному доку, не должен быть пустым
6 ptiz
 
01.11.12
12:51
(5) Значит пустой в момент выполнения запроса.
7 Альбатрос
 
01.11.12
12:53
(3) Так можно до бесконечности проверять. Ссылка там, нормальная ссылка
8 Альбатрос
 
01.11.12
12:54
(6) тоже нет
9 zak555
 
01.11.12
12:54
что за фуйня ?

|ЗаказПокупателя.Ссылка = &ЗаказПокупателя
                   |И ЗаказПокупателя.СкладГруппа.СкладОтдела


в документе ЗаказПокупателя СкладОтдела - реквизит табличной части СкладГруппа ?
10 Альбатрос
 
01.11.12
12:55
(4) хм... не пустой...
11 Альбатрос
 
01.11.12
12:55
(9) это галка
12 Альбатрос
 
01.11.12
12:56
СкладГруппа не тч
13 kimarle
 
01.11.12
12:57
Попробуй возвращать переменную, а не результат метода
14 shuhard
 
01.11.12
12:57
(10) что-то мешает последовательно вернуться к исходному запросу и определить баг ?
15 zak555
 
01.11.12
12:57
(12) тогда на куя двойное условие к шапке ?
16 drcrasher
 
01.11.12
12:58
офф:
РегистрНакопления.ЗаказыПокупателей.Остатки(, <= на какой момент снимет остатки?
17 Альбатрос
 
01.11.12
12:59
Уважаемые, спасибо за ответы, бежать надо, тему завтра подниму
(14) Этим завтра и займусь
18 х86
 
01.11.12
13:04
вот это убери и будет щастье ГДЕ ЗПнеВошедшиеВВЗ.Разность > 0
19 х86
 
01.11.12
13:06
(18)+ и это ...  СГРУППИРОВАТЬ поможет
20 эцп
 
01.11.12
14:55
(0) Пробовал убрать запрос с "УНИЧТОЖИТЬ"?
21 Альбатрос
 
02.11.12
05:35
(18) Вы оказались правы
22 Альбатрос
 
02.11.12
05:44
+(21) Только вопрос: Почему в консоле запросов отрабатывает, а в коде нет?