Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Запрос зависает по непонятной причине

Запрос зависает по непонятной причине
Я
   Bobito77
 
17.10.16 - 12:36
ВЫБРАТЬ
    РеализацияТоваровУслуг.ДоговорКонтрагента КАК ДоговорКонтрагента1,
    ПоступлениеНаРасчетныйСчет.ДоговорКонтрагента КАК ДоговорКонтрагента,
    ПоступлениеНаРасчетныйСчет.Номер КАК Номер,
    ПоступлениеНаРасчетныйСчет.Дата КАК Дата,
    РеализацияТоваровУслуг.Номер КАК Номер1,
    РеализацияТоваровУслуг.Дата КАК Дата1,
    РеализацияТоваровУслуг.Ссылка КАК Ссылка,
    ПоступлениеНаРасчетныйСчет.Ссылка КАК Ссылка1,
    СчетФактураВыданный.Ссылка КАК Ссылка2
ИЗ
    Документ.СчетФактураВыданный КАК СчетФактураВыданный
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПоступлениеНаРасчетныйСчет КАК ПоступлениеНаРасчетныйСчет
            ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
            ПО ПоступлениеНаРасчетныйСчет.ДоговорКонтрагента.Наименование = РеализацияТоваровУслуг.ДоговорКонтрагента.Наименование
        ПО СчетФактураВыданный.ДокументОснование <> ПоступлениеНаРасчетныйСчет.Ссылка
ГДЕ
    ДЕНЬГОДА(ПоступлениеНаРасчетныйСчет.Дата) = ДЕНЬГОДА(РеализацияТоваровУслуг.Дата)

УПОРЯДОЧИТЬ ПО
    Дата1
 
 
   H A D G E H O G s
 
1 - 17.10.16 - 12:37
я бы тоже зависнул
   Bobito77
 
2 - 17.10.16 - 12:38
(1) Коллеги пните в нужном направлении
   RomaH
 
3 - 17.10.16 - 12:40
ПО СчетФактураВыданный.ДокументОснование <> ПоступлениеНаРасчетныйСчет.Ссылка
100 поступлений
100 сф
в итоге 10 000 записей
   bootini
 
4 - 17.10.16 - 12:40
(1)
ПоступлениеНаРасчетныйСчет.ДоговорКонтрагента.Наименование = РеализацияТоваровУслуг.ДоговорКонтрагента.Наименование

Тут если у тебя много договоровс наименованием "Основной договор", то всё со всем соединяет
   Naf_kultura
 
5 - 17.10.16 - 12:41
(3) точнее примерно так: 100*100-100
   Господин ПЖ
 
6 - 17.10.16 - 12:41
причина стандартная - рукож.пие
   Fedor-1971
 
7 - 17.10.16 - 12:41
(2) для чего нужен этот запрос?
На вскидку: два вложенных левых соединения по пересекающимся данным

(3) по ходу больше
   RomaH
 
8 - 17.10.16 - 12:42
временные таблицы не стесняйся использовать
   Господин ПЖ
 
9 - 17.10.16 - 12:42
за это 

ПоступлениеНаРасчетныйСчет.ДоговорКонтрагента.Наименование = РеализацияТоваровУслуг.ДоговорКонтрагента.Наименование
        ПО СчетФактураВыданный.ДокументОснование <> ПоступлениеНаРасчетныйСчет.Ссылка

отдельное спасибо передает декарт
   Fedor-1971
 
10 - 17.10.16 - 12:42
7+ ограничь выборки соединений условием ГДЕ
 
 Рекламное место пустует
   RomaH
 
11 - 17.10.16 - 12:43
ПО СчетФактураВыданный.ДокументОснование <> ПоступлениеНаРасчетныйСчет.Ссылка
вот это переводит ЛЕВОЕ соединение во ВНУТРЕННЕЕ
так и пиши сразу ВНУТРЕННЕЕ
   krunm
 
12 - 17.10.16 - 12:43
ПО ПоступлениеНаРасчетныйСчет.ДоговорКонтрагента.Наименование = РеализацияТоваровУслуг.ДоговорКонтрагента.Наименование

при условии что есть договоры у с названием "Без договора" ваще жесть будет твориться
   Bobito77
 
13 - 17.10.16 - 12:44
(7) мне нужны поступления на расчетный счет, где не выписана счет фактура на аванс
   Bobito77
 
14 - 17.10.16 - 12:45
И дата которых совпадает с документом реализации
   SSSSS_AAAAA
 
15 - 17.10.16 - 13:43
(14) и для этого ты сравниваешь "ДЕНЬГОДА(ПоступлениеНаРасчетныйСчет.Дата) = ДЕНЬГОДА(РеализацияТоваровУслуг.Дата)"
Сударь, вы знаете толк в извращениях...
   SSSSS_AAAAA
 
16 - 17.10.16 - 14:09
(0) "        ПО СчетФактураВыданный.ДокументОснование <> ПоступлениеНаРасчетныйСчет.Ссылка
ГДЕ
    ДЕНЬГОДА(ПоступлениеНаРасчетныйСчет.Дата) = ДЕНЬГОДА(РеализацияТоваровУслуг.Дата)
"
Как уже было написано, тут ,в первой строке, получается декартово произведение, на котором, во второй строке, еще и все индексы похерены. И что тут непонятного в тормозах?
   youalex
 
17 - 17.10.16 - 14:51
(13) похоже вместо "СчетФактураВыданный.ДокументОснование <> ПоступлениеНаРасчетныйСчет.Ссылка"
нужно 
ИЗ ПоступлениеНаРасчетныйСчет
ЛС СчетФактураВыданный ПО 
ГДЕ СчетФактураВыданный.Ссылка is null

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует