|
Запрос | ☑ | ||
---|---|---|---|---|
0
Arutynov
18.06.13
✎
13:59
|
Здравствуйте!Имеется запрос, не могу организовать отбор по папке, по элементу справочника элементарно отрабатывает, а если это папка то нет. При это множественный выбор должен работать.
КонтрагентСп= Новый СписокЗначений; Массив = Контрагент.ВыгрузитьКолонку("Контрагент"); КонтрагентСп.ЗагрузитьЗначения(Массив); Номен= Новый СписокЗначений; Массив1 = Номенклатура.ВыгрузитьКолонку("Номенклатура"); Номен.ЗагрузитьЗначения(Массив1); //Номен.ВыбратьЭлемент(); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ВложенныйЗапрос.Документ, | ВложенныйЗапрос.Контрагент, | ВложенныйЗапрос.Дата, | ВложенныйЗапрос.Товар, | ВложенныйЗапрос.тонаж, | ВложенныйЗапрос.ЕдИз, | ВложенныйЗапрос.БазЕдИз, | ВложенныйЗапрос.КоэффициентКор, | ВложенныйЗапрос.КоэффициентШт, | ВложенныйЗапрос.сумма |ИЗ | (ВЫБРАТЬ | ВозвратТоваровОтПокупателя.Ссылка КАК Документ, | ВозвратТоваровОтПокупателя.Контрагент КАК Контрагент, | ВозвратТоваровОтПокупателя.Дата КАК Дата, | ВозвратТоваровОтПокупателяТовары.Номенклатура КАК Товар, | ВозвратТоваровОтПокупателяТовары.Количество КАК тонаж, | ВозвратТоваровОтПокупателяТовары.ЕдиницаИзмерения.Наименование КАК ЕдИз, | ВозвратТоваровОтПокупателяТовары.Номенклатура.БазоваяЕдиницаИзмерения.Наименование КАК БазЕдИз, | ВозвратТоваровОтПокупателяТовары.ЕдиницаИзмерения.Коэффициент КАК КоэффициентКор, | ВозвратТоваровОтПокупателяТовары.Номенклатура.ЕдиницаДляОтчетов.Коэффициент КАК КоэффициентШт, | ВозвратТоваровОтПокупателяТовары.Сумма КАК сумма | ИЗ | Документ.ВозвратТоваровОтПокупателя.Товары КАК ВозвратТоваровОтПокупателяТовары | ЛЕВОЕ СОЕДИНЕНИЕ Документ.ВозвратТоваровОтПокупателя КАК ВозвратТоваровОтПокупателя | ПО ВозвратТоваровОтПокупателяТовары.Ссылка = ВозвратТоваровОтПокупателя.Ссылка | ГДЕ | ВозвратТоваровОтПокупателя.Проведен = ИСТИНА | | ОБЪЕДИНИТЬ | | ВЫБРАТЬ | РеализацияТоваровУслуг.Ссылка, | РеализацияТоваровУслуг.Контрагент, | РеализацияТоваровУслуг.Дата, | РеализацияТоваровУслугТовары.Номенклатура, | РеализацияТоваровУслугТовары.Количество, | РеализацияТоваровУслугТовары.ЕдиницаИзмерения.Наименование, | РеализацияТоваровУслугТовары.Номенклатура.БазоваяЕдиницаИзмерения.Наименование, | РеализацияТоваровУслугТовары.ЕдиницаИзмерения.Коэффициент, | РеализацияТоваровУслугТовары.Номенклатура.ЕдиницаДляОтчетов.Коэффициент, | РеализацияТоваровУслугТовары.Сумма | ИЗ | Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары | ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг | ПО РеализацияТоваровУслугТовары.Ссылка = РеализацияТоваровУслуг.Ссылка | ГДЕ | РеализацияТоваровУслуг.Проведен = ИСТИНА) КАК ВложенныйЗапрос |ГДЕ | ВложенныйЗапрос.Дата МЕЖДУ &Дат И &Дат1 | и ВложенныйЗапрос.Контрагент в(&Контрагент) | и ВложенныйЗапрос.Товар в(&Номенклатура) |УПОРЯДОЧИТЬ ПО | ВложенныйЗапрос.Дата"; Запрос.УстановитьПараметр("Дат",НачалоПериода); Запрос.УстановитьПараметр("Дат1",КонецДня(КонецПериода)); Запрос.УстановитьПараметр("Контрагент",КонтрагентСп); Запрос.УстановитьПараметр("Номенклатура",Номен); |
|||
1
PR
18.06.13
✎
14:00
|
В ИЕРАРХИИ
|
|||
2
zak555
18.06.13
✎
14:02
|
ВозвратТоваровОтПокупателяТовары.Ссылка.Контрагент
ВозвратТоваровОтПокупателяТовары.Ссылка.Дата |
|||
3
zak555
18.06.13
✎
14:03
|
РеализацияТоваровУслугТовары.Ссылка.Контрагент
РеализацияТоваровУслугТовары.Ссылка.Дата |
|||
4
palpetrovich
18.06.13
✎
14:03
|
(2) +1 зачем тут ЛЕВОЕ СОЕДИНЕНИЕ?
|
|||
5
Arutynov
18.06.13
✎
14:03
|
(1) Спасибо. Не знал. Помоголо
|
|||
6
Arutynov
18.06.13
✎
14:04
|
(4) а чем тебе оно не нравится?
|
|||
7
GROOVY
18.06.13
✎
14:05
|
Писец, а не запросю
|
|||
8
Arutynov
18.06.13
✎
14:07
|
(7) а как правильнее?
|
|||
9
palpetrovich
18.06.13
✎
14:07
|
(8) так симпотичней
ВЫБРАТЬ ВозвратТоваровОтПокупателяТовары.Ссылка КАК Документ, ВозвратТоваровОтПокупателяТовары.Сумма КАК сумма ИЗ Документ.ВозвратТоваровОтПокупателя.Товары КАК ВозвратТоваровОтПокупателяТовары ОБЪЕДИНИТЬ ВЫБРАТЬ РеализацияТоваровУслугТовары.Ссылка, РеализацияТоваровУслугТовары.Сумма ИЗ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары |
|||
10
GROOVY
18.06.13
✎
14:09
|
(8) Хотя бы условие на интервал выборки во вложенные запросы перенести. Хотя я еще не очень понял зачем там соединения...
|
|||
11
Arutynov
18.06.13
✎
14:11
|
(10)чем это ускорит запрос?
|
|||
12
palpetrovich
18.06.13
✎
14:14
|
(10) а зачем там вложенный вообще?
|
|||
13
GROOVY
18.06.13
✎
14:14
|
(11) Я думаю тем, что не будет выбирать ВСЕ документы, а потом фильтровать по интервалу. Думаю при большой истории в базе это на пару порядков увеличит скорость выполнения запроса.
|
|||
14
GROOVY
18.06.13
✎
14:15
|
(12) Это мне тоже не понятно.
|
|||
15
GROOVY
18.06.13
✎
14:16
|
+13 Да и с другими условиями та же фигня.
|
|||
16
Arutynov
18.06.13
✎
14:17
|
(10) попробую! А как без вложенного?
|
|||
17
palpetrovich
18.06.13
✎
14:19
|
(16) без вложенного - в (9), но там будет не сильно упорядоченная куча, а как надо - зависит от задачи, от того что надо получить в итоге
|
|||
18
magicSan
18.06.13
✎
14:19
|
| и ВложенныйЗапрос.Товар в(&Номенклатура)
заменить на | и ВложенныйЗапрос.Товар в иерархии(&Номенклатура) |
|||
19
palpetrovich
18.06.13
✎
14:22
|
(18) на оленях ехал? :)
|
|||
20
Arutynov
18.06.13
✎
14:24
|
(15) гораздо быстрее, благодарю!
|
|||
21
magicSan
18.06.13
✎
14:25
|
(19) чо такое? )
|
|||
22
palpetrovich
18.06.13
✎
14:26
|
(21) см (1) :)
|
|||
23
Arutynov
18.06.13
✎
14:26
|
(18) Спасибо, мне это уже подсказали))
|
|||
24
magicSan
18.06.13
✎
14:27
|
(22) )))))) точно на оленях )))
|
|||
25
palpetrovich
18.06.13
✎
14:28
|
(0) а вообще, эти 2 документа, наверняка двигают какой-то регистр в разных направлениях - вот к нему-то и надо делать запрос!
|
|||
26
magicSan
18.06.13
✎
14:28
|
(25) ага например продажи ))
|
|||
27
magicSan
18.06.13
✎
14:29
|
(23) а что на рте таблицы что в объединениях религия не позволяет накладывать условия?
|
|||
28
Arutynov
18.06.13
✎
14:30
|
уже наложил.....
|
|||
29
palpetrovich
18.06.13
✎
14:32
|
+(25) к примеру так:
ВЫБРАТЬ ПродажиОбороты.Регистратор, ПродажиОбороты.Номенклатура, ПродажиОбороты.КоличествоОборот, ПродажиОбороты.СтоимостьОборот, ПродажиОбороты.Период КАК Период ИЗ РегистрНакопления.Продажи.Обороты( &ДатаНач, &ДатаНач, Регистратор, Контрагент В ИЕРАРХИИ (&Контрагент) И Номенклатура В ИЕРАРХИИ (&Номенклатура)) КАК ПродажиОбороты УПОРЯДОЧИТЬ ПО Период |
|||
30
magicSan
18.06.13
✎
14:32
|
(28) а теперь оп совету (25) всё это стереть и через "ссылка"(по двум докам) сделать запрос к виртуальной таблице регистра продажи )))
|
|||
31
Arutynov
18.06.13
✎
14:35
|
Что-то я про регистр не подумал...Попробую.
|
|||
32
Arutynov
18.06.13
✎
14:35
|
Спасибо за подсказку
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |