Имя: Пароль:
1C
 
Запрос: как выбрать всех контрагентов не входящих в документы реализации?
0 worker-good
 
10.09.14
12:59
как выбрать всех контрагентов не входящих в документы реализации записанных после определенной даты? Составил следующий запрос, но не выходит каменный цветок:
ВЫБРАТЬ РАЗЛИЧНЫЕ
     |    Контрагенты.Наименование
     |ИЗ
     |    Справочник.Контрагенты КАК Контрагенты
     |        ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
     |        ПО (РеализацияТоваровУслуг.Контрагент <> Контрагенты.Ссылка)
     |ГДЕ
     |    РеализацияТоваровУслуг.Дата >= &Дата
     |    И Контрагенты.ОсновнойДоговорКонтрагента.ВидДоговора = &ВидДоговора
1 Любопытная
 
10.09.14
13:01
Я бы предложила пойти от обратного - выбрать сначала всех контрагентов в реализациях, а потом уже из справочника выбрать только тех, кого нет в первом списке
2 worker-good
 
10.09.14
13:02
А как это технически реализовать "из справочника выбрать только тех, кого нет в первом списке"?
3 13_Mult
 
10.09.14
13:04
А что именно не выходит? ))
4 worker-good
 
10.09.14
13:05
(3) Выдает всех контрагентов, в том числе и которые есть в реализации
5 GreatOne
 
10.09.14
13:05
Как вариантВЫБРАТЬ
    Контрагенты.Ссылка,
    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ РеализацияТоваровУслуг.Ссылка) КАК Ссылка1
ПОМЕСТИТЬ ВТ_Контры
ИЗ
    Справочник.Контрагенты КАК Контрагенты
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
        ПО Контрагенты.Ссылка = РеализацияТоваровУслуг.Контрагент

СГРУППИРОВАТЬ ПО
    Контрагенты.Ссылка
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТ_Контры.Ссылка
ИЗ
    ВТ_Контры КАК ВТ_Контры
ГДЕ
    ВТ_Контры.Ссылка1 = 0
;

////////////////////////////////////////////////////////////////////////////////
УНИЧТОЖИТЬ ВТ_контры
6 Любопытная
 
10.09.14
13:05
выбрать контрагенты.ссылка из справочник.контрагенты как контрагенты где не контрагенты.ссылка в (выбрать документ.контрагент из документ.РеализацияТоваровУслуг как документ где документ.дата >= &дата)
7 AlexITGround
 
10.09.14
13:05
(2) "НЕ В ()"
8 Любопытная
 
10.09.14
13:07
(4) потому что левое справочника к документу. Так не получится
9 Ёпрст
 
гуру
10.09.14
13:09
(0)


ВЫБРАТЬ
    Контрагенты.Наименование
ИЗ
    Справочник.Контрагенты КАК Контрагенты
ГДЕ
    (НЕ Контрагенты.Ссылка В
                (ВЫБРАТЬ
                    РеализацияТоваровУслуг.Контрагент
                ИЗ
                    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
                ГДЕ
                    РеализацияТоваровУслуг.Дата >= &Дата))
    И Контрагенты.ОсновнойДоговорКонтрагента.ВидДоговора = &ВидДоговора
10 Любопытная
 
10.09.14
13:12
Ну мне лень форматировать было :)
11 worker-good
 
10.09.14
13:33
(6) (9) Спасибо за оперативность))
12 John83
 
10.09.14
13:38
(6) (9) ну я бы еще РАЗЛИЧНЫЕ вставил бы ;)
13 Любопытная
 
10.09.14
13:41
(12)и РАЗРЕШЕННЫЕ, чтобы уж совсем наверняка :)
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.