Имя: Пароль:
1C
1С v8
Не работает запрос
0 mm1ck
 
25.01.13
09:21
Есть запрос.Кусок кода ниже.В консоли запросов прекрасно все работает.Из документа то же самое выдает пустой результат. Что я делаю не так.
Код
Если ЗначениеЗаполнено(Элемент.Значение) Тогда
       //отберем итоги по складу
       БухРег = РегистрыБухгалтерии.Хозрасчетный;
       ЗапросПо10_0 = Новый Запрос;
       ЗапросПо10_0.Текст = "ВЫБРАТЬ
                            |    ХозрасчетныйОстатки.Счет КАК Счет,
                            |    ХозрасчетныйОстатки.Субконто1 КАК Субконто1,
                            |    ХозрасчетныйОстатки.Субконто2 КАК Субконто2,
                            |    ХозрасчетныйОстатки.Субконто3 КАК Субконто3,
                            |    ХозрасчетныйОстатки.Организация КАК Организация,
                            |    ХозрасчетныйОстатки.СуммаОстатокДт КАК СуммаОстатокДт,
                            |    ХозрасчетныйОстатки.КоличествоОстатокДт КАК КоличествоОстатокДт
                            |ИЗ
                            |    РегистрБухгалтерии.Хозрасчетный.Остатки(&ДатаОстатков, Счет = &Счет10_0, &Субконто10, ) КАК ХозрасчетныйОстатки
                            |ГДЕ
                            |    ХозрасчетныйОстатки.Организация = &Организация
                            |    И ХозрасчетныйОстатки.Счет = &Счет10_0
                            |    И ХозрасчетныйОстатки.Субконто2 = &Склад";
       МассивСубконто = Новый массив;
       МассивСубконто.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Номенклатура);
       МассивСубконто.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.Склады);
       МассивСубконто.Добавить(ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.НазначенияИспользования);
       Счет10_1 = ПланыСчетов.Хозрасчетный.Форменное_обмундир_на_складе;
       ЗапросПо10_1.УстановитьПараметр("Счет10_1",Счет10_1);
       ЗапросПо10_1.УстановитьПараметр("ДатаОстатков",Дата);
       ЗапросПо10_1.УстановитьПараметр("Субконто10",МассивСубконто);
       ЗапросПо10_1.УстановитьПараметр("Склад",Элемент.Значение);
       ЗапросПо10_1.УстановитьПараметр("Организация",Организация);
       РезультатЗапроса = ЗапросПо10_1.Выполнить();
Примерно так. Вставляю  Этот же запрос в консоль запросов.Результат есть.Из документа.РезультатЗапроса.Пустой()=Истина.
1 KUBIK
 
25.01.13
09:24
&Счет10_0
или &Счет10_01 ???
2 KUBIK
 
25.01.13
09:25
тоже самое и: ЗапросПо10_0 или ЗапросПо10_1 ???
3 Шапокляк
 
25.01.13
09:25
&Счет10_0
в отчете, а параметр запроса Счет10_1
4 mm1ck
 
25.01.13
09:26
Везде 10_01
5 mm1ck
 
25.01.13
09:27
В ОСВ тоже остатки есть
6 Шапокляк
 
25.01.13
09:31
Может, Элемент.Значение не того типа. Это об элементе формы речь идет что ли? Отладчик-то что говорит?
7 mm1ck
 
25.01.13
09:34
Элемент.Значение Это склад и субконто у счета тоже склад.Мне одно непонятно почему в обработке "консоль запросов результат есть. (В обработке подставляю ровно те же параметры что и в модуле документа)а из документа пусто получается
8 lEvGl
 
гуру
25.01.13
09:42
жесткий запрос
9 mm1ck
 
25.01.13
09:48
(8) Да в том то и дело что запрос прост как не знамо чего и не работает ни разу.Убился уже отлаживать.
10 Ёпрст
 
гуру
25.01.13
09:51
(9) дык ремь условия по-одному.. делов то..
Делаю ставку на дату запроса
11 lEvGl
 
гуру
25.01.13
10:00
Что то может не понимаю, но все же смущает

ЗапросПо10_0 = Новый Запрос;
ЗапросПо10_0.Текст = "...";

РезультатЗапроса = ЗапросПо10_1.Выполнить();

Текст запроса тоже смущает
Ну и как всегда перепроверить значения устанавливаемых параметров... смущают )
12 dmpl
 
25.01.13
10:06
(0) Кстати, а почему условия в ГДЕ, а не в параметрах виртуальной таблицы?
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан