|
Здравствуйте
При открытий динамического списка мне нужно знать какой остаток по взаиморасчетам с контрагентом и сколько денег в совокупности он заплатил по договору указанному в документе из списка, первый набросок запроса выглядит примерно так:
ВЫБРАТЬ
Документбит_ус_ЗаказНаряд.Ссылка,
Документбит_ус_ЗаказНаряд.Номер,
Документбит_ус_ЗаказНаряд.Дата,
Документбит_ус_ЗаказНаряд.Автомобиль,
СУММА(ЕСТЬNULL(ВзаиморасчетыСКонтрагентами.СуммаУпр, 0)) КАК СуммаУпр,
СУММА(ЕСТЬNULL(ВзаиморасчетыСКонтрагентамиОстатки.СуммаУпрОстаток, 0)) КАК СуммаУПРОстаток,
-Документбит_ус_ЗаказНаряд.СуммаДокумента КАК МинусоваяСуммаДокумента
ИЗ
Документ.бит_ус_ЗаказНаряд КАК Документбит_ус_ЗаказНаряд
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ВзаиморасчетыСКонтрагентами КАК ВзаиморасчетыСКонтрагентами
ПО Документбит_ус_ЗаказНаряд.Организация = ВзаиморасчетыСКонтрагентами.Организация
И Документбит_ус_ЗаказНаряд.Плательщик = ВзаиморасчетыСКонтрагентами.Контрагент
И Документбит_ус_ЗаказНаряд.ДоговорПлательщика = ВзаиморасчетыСКонтрагентами.ДоговорКонтрагента
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ВзаиморасчетыСКонтрагентами.Остатки КАК ВзаиморасчетыСКонтрагентамиОстатки
ПО Документбит_ус_ЗаказНаряд.Организация = ВзаиморасчетыСКонтрагентамиОстатки.Организация
И Документбит_ус_ЗаказНаряд.Контрагент = ВзаиморасчетыСКонтрагентамиОстатки.Контрагент
И Документбит_ус_ЗаказНаряд.ДоговорПлательщика = ВзаиморасчетыСКонтрагентамиОстатки.ДоговорКонтрагента
ГДЕ
ВзаиморасчетыСКонтрагентами.ВидДвижения = ЗНАЧЕНИЕ(ВидДвиженияНакопления.Расход)
СГРУППИРОВАТЬ ПО
Документбит_ус_ЗаказНаряд.Номер,
Документбит_ус_ЗаказНаряд.Дата,
Документбит_ус_ЗаказНаряд.Автомобиль,
Документбит_ус_ЗаказНаряд.Ссылка,
-Документбит_ус_ЗаказНаряд.СуммаДокумента
Но вот недостаток если движении по регистру накполнеия ВзаиморасчетыСКонтрагентами не было тогда документы ЗаказНаряд вообще не попадут в список, что не правильно. И так как ВзаиморасчетыСКонтрагентамиОстатки имеет возможность извлечения данных с условием считаю не правильным использовать левое соединение, а как передавать значения документа в условие большой вопрос :-).
1) Как правильно извлечь весь приход денег по договору в документе?
2) Как оптимальны образом извлечь остатки по договору в документе? |
|