|
Зависает при выполнении запроса( | ☑ | ||
---|---|---|---|---|
0
Droning1C
15.07.19
✎
15:51
|
Доброго времени суток! Подскажите, пожалуйста, в чем беда? при выполнении запроса программа зависает...
ВЫБРАТЬ РАЗЛИЧНЫЕ РеализацияТоваровУслуг.Сделка КАК Ссылка ИЗ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг ГДЕ ВЫБОР КОГДА &ЗаказПокупателя = ЗНАЧЕНИЕ(Документ.ЗаказПокупателя.ПустаяСсылка) ТОГДА РеализацияТоваровУслуг.Сделка В (ВЫБРАТЬ РАЗЛИЧНЫЕ РеализацияТоваровУслуг.Сделка КАК Ссылка ИЗ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг ГДЕ РеализацияТоваровУслуг.Дата > &НачалоПериода И РеализацияТоваровУслуг.Сделка.Дата МЕЖДУ ДОБАВИТЬКДАТЕ(&НачалоПериода, ДЕНЬ, -365) И &НачалоПериода) ИНАЧЕ РеализацияТоваровУслуг.Сделка = &ЗаказПокупателя КОНЕЦ СГРУППИРОВАТЬ ПО РеализацияТоваровУслуг.Сделка ОБЪЕДИНИТЬ ВЫБРАТЬ РАЗЛИЧНЫЕ ОтчетПроизводстваЗаСменуПродукция.ЗаказРезерв.Ссылка ИЗ Документ.ОтчетПроизводстваЗаСмену.Продукция КАК ОтчетПроизводстваЗаСменуПродукция ГДЕ ВЫБОР КОГДА &ЗаказПокупателя = ЗНАЧЕНИЕ(Документ.ЗаказПокупателя.ПустаяСсылка) ТОГДА ОтчетПроизводстваЗаСменуПродукция.ЗаказРезерв.Ссылка В (ВЫБРАТЬ РАЗЛИЧНЫЕ ОтчетПроизводстваЗаСменуПродукция.ЗаказРезерв.Ссылка ИЗ Документ.ОтчетПроизводстваЗаСмену.Продукция КАК ОтчетПроизводстваЗаСменуПродукция ГДЕ ОтчетПроизводстваЗаСменуПродукция.Ссылка.Дата > &НачалоПериода И ОтчетПроизводстваЗаСменуПродукция.ЗаказРезерв.Дата МЕЖДУ ДОБАВИТЬКДАТЕ(&НачалоПериода, ДЕНЬ, -365) И &НачалоПериода) ИНАЧЕ ОтчетПроизводстваЗаСменуПродукция.ЗаказРезерв.Ссылка = &ЗаказПокупателя КОНЕЦ СГРУППИРОВАТЬ ПО ОтчетПроизводстваЗаСменуПродукция.ЗаказРезерв.Ссылка |
|||
1
RomaH
naïve
15.07.19
✎
15:52
|
вложеных запросов быть не должно - используйте временные таблицы
|
|||
2
RomaH
naïve
15.07.19
✎
15:54
|
ВЫБРАТЬ РАЗЛИЧНЫЕ
ОтчетПроизводстваЗаСменуПродукция.ЗаказРезерв.Ссылка ИЗ Документ.ОтчетПроизводстваЗаСмену.Продукция КАК ОтчетПроизводстваЗаСменуПродукция ГДЕ ВЫБОР КОГДА &ЗаказПокупателя = ЗНАЧЕНИЕ(Документ.ЗаказПокупателя.ПустаяСсылка) ТОГДА ОтчетПроизводстваЗаСменуПродукция.ЗаказРезерв.Ссылка В (ВЫБРАТЬ РАЗЛИЧНЫЕ ОтчетПроизводстваЗаСменуПродукция.ЗаказРезерв.Ссылка ИЗ Документ.ОтчетПроизводстваЗаСмену.Продукция КАК ОтчетПроизводстваЗаСменуПродукция ГДЕ ОтчетПроизводстваЗаСменуПродукция.Ссылка.Дата > &НачалоПериода И ОтчетПроизводстваЗаСменуПродукция.ЗаказРезерв.Дата МЕЖДУ ДОБАВИТЬКДАТЕ(&НачалоПериода, ДЕНЬ, -365) И &НачалоПериода) ИНАЧЕ ОтчетПроизводстваЗаСменуПродукция.ЗаказРезерв.Ссылка = &ЗаказПокупателя КОНЕЦ вот это по сути ИЛИ переделать на ОБЪЕДИНИТЬ первая таблица - внутренним соединением |
|||
3
RomaH
naïve
15.07.19
✎
15:55
|
т.е. тут 4 таблицы к объединению
и таблицы из ГДЕ убрать в СОЕДИНЕНИЕ |
|||
4
Droning1C
15.07.19
✎
16:15
|
(3) честно говоря пока плохо понятно... мне нужно выбрать заказы из ОтчетаПроизводстваЗаСмену и из РеализацийТУ по условию на дату. Но, если на форме обработки заполнен реквизит "ЗаказПокупателя", то в результат запроса должен попадать только этот заказ. В результате выполнения запроса хочется видеть либо один заказ, либо одноколоночную таблицу с перечнем неповторяющихся заказов с отбором по периоду
|
|||
5
Droning1C
15.07.19
✎
16:16
|
(3) не могу понять зачем мне внутреннее соединение
|
|||
6
vicof
15.07.19
✎
16:18
|
(0) .Ссылка везде убери
|
|||
7
Droning1C
15.07.19
✎
16:25
|
ВЫБРАТЬ РАЗЛИЧНЫЕ
РеализацияТоваровУслуг.Сделка КАК Заказ ПОМЕСТИТЬ втРеализации ИЗ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг ГДЕ РеализацияТоваровУслуг.Дата > &НачалоПериода И РеализацияТоваровУслуг.Сделка.Дата МЕЖДУ ДОБАВИТЬКДАТЕ(&НачалоПериода, ДЕНЬ, -365) И &НачалоПериода ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ РАЗЛИЧНЫЕ ОтчетПроизводстваЗаСменуПродукция.ЗаказРезерв КАК Заказ ПОМЕСТИТЬ втОтчетПрЗаСмену ИЗ Документ.ОтчетПроизводстваЗаСмену.Продукция КАК ОтчетПроизводстваЗаСменуПродукция ГДЕ ОтчетПроизводстваЗаСменуПродукция.Ссылка.Дата > &НачалоПериода И ОтчетПроизводстваЗаСменуПродукция.ЗаказРезерв.Дата МЕЖДУ ДОБАВИТЬКДАТЕ(&НачалоПериода, ДЕНЬ, -365) И &НачалоПериода ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ втРеализации.Заказ ИЗ втРеализации КАК втРеализации ОБЪЕДИНИТЬ ВЫБРАТЬ РАЗЛИЧНЫЕ втОтчетПрЗаСмену.Заказ ИЗ втОтчетПрЗаСмену КАК втОтчетПрЗаСмену |
|||
8
Droning1C
15.07.19
✎
16:26
|
вот запрос с объединением, но без условия на заполненность реквизита ЗаказПокупателя. Как это условие лучше оформить в запросе?
|
|||
9
Droning1C
15.07.19
✎
16:30
|
(6) Убрал .Ссылка - все так же виснет
|
|||
10
Droning1C
15.07.19
✎
16:32
|
(6) Ан нет, стал выполняться... Но , видимо, мой подход все равно не верен
|
|||
11
xXeNoNx
15.07.19
✎
16:33
|
что такое ЗаказРезерв?
|
|||
12
xXeNoNx
15.07.19
✎
16:33
|
а где проверка на проведение..., удаление?
|
|||
13
xXeNoNx
15.07.19
✎
16:34
|
а данные лучше собирать по регистрам
|
|||
14
xXeNoNx
15.07.19
✎
16:36
|
О.., так тыж тож из Рамы...
|
|||
15
Droning1C
15.07.19
✎
16:39
|
(14) дада, приуэт!
|
|||
16
xXeNoNx
15.07.19
✎
16:40
|
случаем ОтчетПроизводстваЗаСменуПродукция.ЗаказРезерв не составного типа?
|
|||
17
Droning1C
15.07.19
✎
16:41
|
(14) Знаю, что лучше по регистрам, но в данной ситуации надо и по непроведенным тоже обрабатывать... Заказ резерв это реквизит табличной части Продукция документа ОтчетПроизводстваЗаСмену. Тип составной, да.
|
|||
18
Droning1C
15.07.19
✎
16:42
|
(16) ДокументСсылка.ЗаказНаПроизводство, ДокументСсылка.ЗаказПокупателя, ДокументСсылка.ВнутреннийЗаказ
|
|||
19
xXeNoNx
15.07.19
✎
16:43
|
||||
20
xXeNoNx
15.07.19
✎
16:45
|
если коротко, то нельзя получать данные от составного типа..., точнее можно, но...
|
|||
21
Droning1C
15.07.19
✎
16:50
|
(20) спс. щаща, разбираюсь, читаю)
|
|||
22
Droning1C
15.07.19
✎
16:57
|
(20) чет я нагородил эеробору какую-то видимо.... Зависло...
ВЫБРАТЬ РАЗЛИЧНЫЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Сделка КАК Документ.ЗаказПокупателя) КАК ЗаказРезерв ИЗ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг ГДЕ ВЫБОР КОГДА &ЗаказПокупателя = ЗНАЧЕНИЕ(Документ.ЗаказПокупателя.ПустаяСсылка) ТОГДА ВЫРАЗИТЬ(РеализацияТоваровУслуг.Сделка КАК Документ.ЗаказПокупателя) В (ВЫБРАТЬ РАЗЛИЧНЫЕ ВЫРАЗИТЬ(РеализацияТоваровУслуг.Сделка КАК Документ.ЗаказПокупателя) КАК Ссылка ИЗ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг ГДЕ РеализацияТоваровУслуг.Дата > &НачалоПериода И ВЫРАЗИТЬ(РеализацияТоваровУслуг.Сделка КАК Документ.ЗаказПокупателя).Дата МЕЖДУ ДОБАВИТЬКДАТЕ(&НачалоПериода, ДЕНЬ, -365) И &НачалоПериода) ИНАЧЕ (ВЫРАЗИТЬ(РеализацияТоваровУслуг.Сделка КАК Документ.ЗаказПокупателя)) = &ЗаказПокупателя КОНЕЦ СГРУППИРОВАТЬ ПО ВЫРАЗИТЬ(РеализацияТоваровУслуг.Сделка КАК Документ.ЗаказПокупателя) ОБЪЕДИНИТЬ ВЫБРАТЬ РАЗЛИЧНЫЕ ВЫРАЗИТЬ(ОтчетПроизводстваЗаСменуПродукция.ЗаказРезерв КАК Документ.ЗаказПокупателя) ИЗ Документ.ОтчетПроизводстваЗаСмену.Продукция КАК ОтчетПроизводстваЗаСменуПродукция ГДЕ ВЫБОР КОГДА &ЗаказПокупателя = ЗНАЧЕНИЕ(Документ.ЗаказПокупателя.ПустаяСсылка) ТОГДА ВЫРАЗИТЬ(ОтчетПроизводстваЗаСменуПродукция.ЗаказРезерв КАК Документ.ЗаказПокупателя) В (ВЫБРАТЬ РАЗЛИЧНЫЕ ВЫРАЗИТЬ(ОтчетПроизводстваЗаСменуПродукция.ЗаказРезерв КАК Документ.ЗаказПокупателя) ИЗ Документ.ОтчетПроизводстваЗаСмену.Продукция КАК ОтчетПроизводстваЗаСменуПродукция ГДЕ ОтчетПроизводстваЗаСменуПродукция.Ссылка.Дата > &НачалоПериода И ВЫРАЗИТЬ(ОтчетПроизводстваЗаСменуПродукция.ЗаказРезерв КАК Документ.ЗаказПокупателя).Дата МЕЖДУ ДОБАВИТЬКДАТЕ(&НачалоПериода, ДЕНЬ, -365) И &НачалоПериода) ИНАЧЕ (ВЫРАЗИТЬ(ОтчетПроизводстваЗаСменуПродукция.ЗаказРезерв КАК Документ.ЗаказПокупателя)) = &ЗаказПокупателя КОНЕЦ СГРУППИРОВАТЬ ПО ВЫРАЗИТЬ(ОтчетПроизводстваЗаСменуПродукция.ЗаказРезерв КАК Документ.ЗаказПокупателя) |
|||
23
ptiz
15.07.19
✎
16:59
|
(0)
1) Вместо жуткого ГДЕ сделай объединение из двух вариантов: когда &ЗаказПокупателя - пустой, и когда - непустой. 2) Вместо ДОБАВИТЬКДАТЕ(&НачалоПериода, ДЕНЬ, -365) - передавай посчитанную дату. |
|||
24
Droning1C
15.07.19
✎
17:02
|
(20) ну как? опозорил Раменское я?)))
|
|||
25
Droning1C
15.07.19
✎
17:03
|
(23) пробую
|
|||
26
xXeNoNx
15.07.19
✎
17:07
|
(24) да хз.., я не от туда)
|
|||
27
Droning1C
15.07.19
✎
17:08
|
(26) О.., так тыж тож из Рамы... А кто тогда?)
|
|||
28
ptiz
15.07.19
✎
17:08
|
(25) И убери нафиг условие "РеализацияТоваровУслуг.Сделка В "
|
|||
29
xXeNoNx
15.07.19
✎
17:12
|
(22) предыдущий запрос мне нравился больше...
(23) >> Вместо ДОБАВИТЬКДАТЕ(&НачалоПериода, ДЕНЬ, -365) - передавай посчитанную дату. - много ли это даст прироста... В первую очередь исправь обращение через точку от составного типа... |
|||
30
xXeNoNx
15.07.19
✎
17:13
|
(28) так убрал же в (22)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |