Имя: Пароль:
1C
1С v8
Запрос
0 vanyshan
 
28.09.11
09:25
Доброе утро! Подскажите пожалуйста с запросом:
ВЫБРАТЬ
   ПоступлениеТоваровУслугТовары.Ссылка.Контрагент.Ссылка,
   ПоступлениеТоваровУслугТовары.Ссылка.Ссылка
ИЗ
   Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
ГДЕ
   ПоступлениеТоваровУслугТовары.Ссылка.Контрагент.Ссылка = &Ссылка

который по выбранному контрагенту выдает все "поступления". Как исправить запрос, чтобы по выбранному контрагенту летели не все "поступления", а только те, на основании которых проведено платежное поручение исходящее?
1 Wobland
 
28.09.11
09:25
соединить с платёжными поручениями и посмотреть, где не NULL
2 Wobland
 
28.09.11
09:26
ГДЕ ПоступлениеТоваровУслугТовары.Ссылка.Контрагент = &Ссылка
будет вполне достаточно
3 banco
 
28.09.11
09:27
а зачем .Ссылка.Ссылка?
4 Wobland
 
28.09.11
09:28
(3) а вдруг с первого раза не сработает ;)
5 Wobland
 
28.09.11
09:30
кстати, зачем обращаться к табличной части?
6 vanyshan
 
28.09.11
09:32
Потому что там присутствует информация которая еще нужна в отчете.
А каким образом соединить с платёжными поручениями и посмотреть, где не NULL, объясни пожалуйста.
7 Wobland
 
28.09.11
09:38
(6) ИЗ Поступлений ЛЕВОЕ СОЕДИНЕНИЕ Платёжки ПО <по чему там? основание? сделка?> ... ГДЕ НЕ Платежка ЕСТЬ NULL
8 vanyshan
 
28.09.11
09:40
Спасибо, сейчас попробую!
9 Wobland
 
28.09.11
09:42
я бы ещё проведённость документов контролировал..
10 vanyshan
 
28.09.11
09:42
А это Каким образом?
11 lxndr
 
28.09.11
09:43
(9) я бы взаиморасчеты смотрел
12 Segate
 
28.09.11
09:44
Левое соединение тебя спасет...
13 Wobland
 
28.09.11
09:45
(11) ну иногда бывает, что запрос надо именно к документам делать
14 Segate
 
28.09.11
09:48
ВЫБРАТЬ
|    ПоступлениеТоваровУслугТовары.Ссылка.Контрагент.Ссылка,
|    ПоступлениеТоваровУслугТовары.Ссылка.Ссылка
|ИЗ
|    Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
|        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПлатежноеПоручение КАК ПлатежноеПоручение
|        ПО ПоступлениеТоваровУслугТовары.Ссылка = ПлатежноеПоручение.ДокументОснование
|ГДЕ
|    ПоступлениеТоваровУслугТовары.Ссылка.Контрагент.Ссылка = &Ссылка

Имхо как то так должно быть... не?
15 Wobland
 
28.09.11
09:50
(14) ГДЕ НЕ ЕСТЬ NULL
16 zak555
 
28.09.11
09:54
ВЫБРАТЬ
   ПоступлениеТоваровУслугТовары.Ссылка.Контрагент КАК Контрагент,
   ПоступлениеТоваровУслугТовары.Ссылка
ИЗ
   Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
ГДЕ
   ПоступлениеТоваровУслугТовары.Контрагент = &Ссылка
17 vanyshan
 
28.09.11
11:25
И все таки конечный вариант отчета:

ВЫБРАТЬ
   ПоступлениеТоваровУслугТовары.Ссылка.Контрагент.Ссылка,
   ПоступлениеТоваровУслугТовары.Ссылка.Ссылка
ИЗ
   Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
       ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПлатежноеПоручениеИсходящее КАК ПлатежноеПоручениеИсходящее
       ПО ПоступлениеТоваровУслугТовары.Ссылка = ПлатежноеПоручениеИсходящее.ДокументОснование
ГДЕ
   ПоступлениеТоваровУслугТовары.Ссылка.Контрагент = &Контрагент
   И ПлатежноеПоручениеИсходящее.Ссылка = НЕ ЕСТЬ NULL
ТАкой?
18 zak555
 
28.09.11
23:48
ВЫБРАТЬ
   ПоступлениеТоваровУслугТовары.Ссылка КАК Документ
ИЗ
   Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
       СОЕДИНЕНИЕ Документ.ПлатежноеПоручениеИсходящее КАК ПлатежноеПоручениеИсходящее
       ПО Документ = ПлатежноеПоручениеИсходящее.ДокументОснование
ГДЕ
   Документ.Контрагент = &Контрагент
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс