К списку форумов К списку тем
Регистрация    Правила    Главная форума    Поиск   
Имя: Пароль:
Рекомендовать в новости

Не отрабатывает запрос !!!

Гость
0 - 07.02.2014 - 16:43
БП 3.0.26.9

Есть запрос, кот. выбирает доки Реализация товаров, услуг, содержащих в табл. части "Агентские услуги" номенклатуру из массива МассивНоменклатуры. Результат- пустой запрос.
Запрос = Новый Запрос ;
Запрос.УстановитьПараметр("ДатаНачало",НачалоДня(О бъект.ДатаНачала));
Запрос.УстановитьПараметр("ДатаКонец",КонецДня(Объ ект.ДатаКонца));
Запрос.УстановитьПараметр("Организация",Объект.Орг анизация);
Запрос.УстановитьПараметр("МассивНоменклатуры",Мас сивНоменклатуры);

ТекстЗапроса = "
|ВЫБРАТЬ

| ДокументУслуги.Ссылка.Организация ,
| ДокументУслуги.Ссылка.Номер ,
| ДокументУслуги.Ссылка КАК Док,
| ДокументУслуги.Ссылка.Дата ,
| ДокументУслуги.Ссылка.Контрагент КАК Контрагент,
| ДокументУслуги.Ссылка.ДоговорКонтрагента КАК ДоговорКонтрагента,
| ДокументУслуги.Ссылка.СуммаВключаетНДС,
| ДокументУслуги.Номенклатура КАК Номенклатура,
| ДокументУслуги.Сумма КАК Сумма,
| ДокументУслуги.СуммаНДС КАК СуммаНДС
|ИЗ
| Документ.РеализацияТоваровУслуг.АгентскиеУслуги Как ДокументУслуги
|
|ГДЕ (ДокументУслуги.Ссылка.Дата >=&ДатаНачало И ДокументУслуги.Ссылка.Дата <=&ДатаКонец)

|(ДокументУслуги.Ссылка.Организация = &Организация)

|(ДокументУслуги.Номенклатура В (&МассивНоменклатуры))
|ИТОГИ
|СУММА(Сумма),
|СУММА(СуммаНДС)
|ПО
|Док

|";

При этом запрос отрабатывает, если
|(ДокументУслуги.Номенклатура В (&МассивНоменклатуры))
заменить на
|(ДокументУслуги.Номенклатура =&Номенклатура ),
т.е. если выборка по одному элементу, а не из массива или списка(список тоже пробовал).



Гость
1 - 07.02.2014 - 16:53
Сказки.....
Гость
2 - 07.02.2014 - 17:01
вот именно...Невероятное, но ....очевидное....(((9
Uho
3 - 07.02.2014 - 17:07
не верю
Гость
4 - 07.02.2014 - 17:26
дай угадаю...
МассивНоменклатуры есть как реквизит объекта/формы
Гость
5 - 07.02.2014 - 17:39
(4)не угадал.... происхождение МассивНоменклатуры следующее:

Объект.Услуги.Сортировать("Номенклатура");
ТЗ = Объект.Услуги.Выгрузить(,"Номенклатура");МассивНом енклатуры = ТЗ.ВыгрузитьКолонку("Номенклатура");
т.е. это массив.

Услуги - это табличная часть объекта.Тип - СправочникСсылка.Номенклатура
Гость
6 - 07.02.2014 - 17:52
и содержание этого массива - правильное ... я проверял
Гость
7 - 08.02.2014 - 12:46
(5) а в форме какого Объекта выполняете запрос?
Гость
8 - 08.02.2014 - 13:51
(7)я не автор темы, но у меня была подобная ситуация как и в (0), не помню как я это решал, но решил. Тогда я делал какую то внешнюю обработку.
По подробнее можно на тему "в форме какого Объекта выполняете запрос? "
Гость
9 - 08.02.2014 - 17:58
По подробнее можно на тему "в форме какого Объекта выполняете запрос? " - В форме какого документа или справочника.
+(5)|(ДокументУслуги.Номенклатура =&Номенклатура ) - каким образом присваивали значение параметра Номенклатура?
Гость
10 - 08.02.2014 - 18:14
ГДЕ (ДокументУслуги.Ссылка.Дата >=&ДатаНачало И ДокументУслуги.Ссылка.Дата <=&ДатаКонец)

<= с одной стороны убрать =
Гость
11 - 08.02.2014 - 18:32
(9) примерно как и в (0) только у меня это был список значений
Гость
12 - 10.02.2014 - 12:25
(7) Объект - внешний отчет
(9) параметр Номенклатура - реквизит объекта
(10) не совсем понял, с какой стороны, что и для чего убрать ?
(11) через список пробовал ранее тоже (не только с массивом)... результат - тот же...(((
13 - 10.02.2014 - 13:39
ну значит, у тебя массив пустой
Гость
14 - 10.02.2014 - 13:43
консоль запросов в помощь!
без итогов попробуй

сумма(ДокументУслуги.Сумма) как суммаДока
группировка док, номенклатура
Гость
15 - 10.02.2014 - 13:50
(13) смотри (6)
Гость
16 - 10.02.2014 - 14:03
(4)
Из предложенного кода нельзя сделать вывод, что МассивНоменклатуры - действительно массив.
ТЗ.ВыгрузитьКолонку("Номенклатура") - массив. А вот то, что в МассивНоменклатуры тоже будет массив - не факт.
Чтоб исключить попробуй без промежуточной переменной ... УстановитьПараметр("МассивНоменклатуры",Объект.Усл уги.Выгрузить(,"Номенклатура").ВыгрузитьКолонку("Н оменклатура"))
+ Сообщить(Количество(Объект.Услуги.Выгрузить(,"Номе нклатура").ВыгрузитьКолонку("Номенклатура")))
17 - 10.02.2014 - 14:04
Цитата:
Сообщение от роо Посмотреть сообщение
и содержание этого массива - правильное ... я проверял
что в этом массиве?
элементы, или группы, или вперемешку?
18 - 10.02.2014 - 14:07
а вообще, запрос вполне работающий, при условии правильно заполненного массива и Организации
так что, либо автор врёт, либо он не в состоянии проверить чего пихает в запрос
Гость
19 - 10.02.2014 - 14:31
(17)
Объект.Услуги.Сортировать("Номенклатура");
ТЗ = Объект.Услуги.Выгрузить(,"Номенклатура");
МассивНоменклатуры = ТЗ.ВыгрузитьКолонку("Номенклатура");
т.е. это массив.

Услуги - это табличная часть объекта.Тип - СправочникСсылка.Номенклатура

Тип элементов массива - СправочникСсылка.Номенклатура
Гость
20 - 10.02.2014 - 14:43
19-роо > ещё раз: из твоих вводных следует что ТЗ.ВыгрузитьКолонку("Номенклатура") - массив, но из них не следует что МассивНоменклатуры тоже массив. Проверь. Каким угодно способом. ТипЗНЧ, в конце концов. Или табло.
Гость
21 - 10.02.2014 - 14:49
(20)
1.из Синт-помощника:

Создает массив и копирует в него значения, содержащиеся в колонке таблицы значений.

Доступность:

Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).
Пример:

ТаблицаЗначений.Свернуть("Номенклатура");
Запрос.УстановитьПараметр("МассивНоменклатуры", ТаблицаЗначений.ВыгрузитьКолонку("Номенклатура"));

2.Кроме того уже проверял через ТипЗнч - Массив
22 - 10.02.2014 - 14:55
вставь в свою нетленку перед выполнением запроса следующий цикл:

Для Каждого ЭлементМассива Из МассивНоменклатуры Цикл
Сообщить(СокрЛП(ЭлементМассива))
КонецЦикла;


И скопипасти сюда результат выполнения цикла
Гость
23 - 10.02.2014 - 15:16
(2)
Аренда Места
Аренда недвижимого имущества
Аренда рекламного места
Водоотведение - эксплуатационные услуги
24 - 10.02.2014 - 15:22
ну давай базу, посмотрим на такое чудо
25 - 10.02.2014 - 17:37
ну где этот маленький врунишка?
Гость
26 - 10.02.2014 - 19:21
А если
ДокументУслуги.Номенклатура
заменить на
ДокументУслуги.Номенклатура.Ссылка ?
27 - 11.02.2014 - 12:47
ну что, с концами пропал этот лгунишка?


К списку вопросов






Copyright ©, Все права защищены