Имя: Пароль:
1C
1С v8
v8: Как в одном запросе выбрать документы вместе с подчиненными
0 micha
 
16.05.12
08:23
В продолжение темы v8: Как в одном запросе найти подчиненные документы

Задача в одном запросе выбрать документы реализация и подчиненные возвраты. Как это можно сделать красиво в одном запросе?

ВЫБРАТЬ
   РеализацияТоваровУслуг.Ссылка,
   РеализацияТоваровУслуг.СуммаДокумента,
   СвязанныеДокументы.Ссылка КАК Ссылка1
ИЗ
   Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
       ПОЛНОЕ СОЕДИНЕНИЕ КритерийОтбора.СвязанныеДокументы(&Реализация) КАК СвязанныеДокументы
       ПО (&Реализация = РеализацияТоваровУслуг.Ссылка)
ГДЕ
   РеализацияТоваровУслуг.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&Дата1, ДЕНЬ) И КОНЕЦПЕРИОДА(&Дата2, ДЕНЬ)
   И РеализацияТоваровУслуг.Проведен = ИСТИНА
   И РеализацияТоваровУслуг.Склад = &Склад
1 shuhard
 
16.05.12
08:24
(0)красиво - через критерий
не красиво через Объединить ВСЕ
2 andrewks
 
16.05.12
08:25
ПО (&Реализация = РеализацияТоваровУслуг.Ссылка)

хрень какая-то
3 andrewks
 
16.05.12
08:25
и соединение достаточно левое
4 micha
 
16.05.12
08:27
1) как это должно выглядеть?
5 andrewks
 
16.05.12
08:29
что в &Реализация?
6 shuhard
 
16.05.12
08:31
(4) бла-бла-бла
Объединить ВСЕ
бла-бла-бла
7 micha
 
16.05.12
08:34
&Реализация - параметр КритерийОтбора.СвязанныеДокументы, я пытался его присвоить.
8 shuhard
 
16.05.12
08:49
(7) а так:
ВЫБРАТЬ
   &РТиУ,
   СвязанныеДокументы.Ссылка КАК Возврат
ИЗ
   КритерийОтбора.СвязанныеДокументы(&РТиУ) КАК СвязанныеДокументы
ГДЕ
   ТИПЗНАЧЕНИЯ(СвязанныеДокументы.Ссылка) = ТИП(Документ.ВозвратТоваровОтПокупателя)
9 micha
 
16.05.12
09:11
(8) ГДЕ
   ТИПЗНАЧЕНИЯ(СвязанныеДокументы.Ссылка) = ТИП(Документ.ВозвратТоваровОтПокупателя)

С этим нет проблем. у меня проблема передать параметр из одного запроса в другой.
идет перебор документов реализации и левым соединение должен быть перебор по таблице
КритерийОтбора.СвязанныеДокументы(&Реализация) КАК СвязанныеДокументы
10 micha
 
16.05.12
09:12
я реально куча форумов перечитал
(6) как параметр в  КритерийОтбора.СвязанныеДокументы(&Реализация) КАК СвязанныеДокументы будет передоваться
11 shuhard
 
16.05.12
09:13
(9)
(10)
ошибка в первом действии:
в критерий нельзя передать больше одной ссылки
12 micha
 
16.05.12
09:14
(11) тогда другой вопрос можно ли вывести доки в месте с починенными в одном запросе
13 shuhard
 
16.05.12
09:16
(12) смотря что понимать под подчинёнными
если у возврата в ТЧ есть РТиУ
то нет проблем:

                 ВЫБРАТЬ
   ВозвратТоваровОтПокупателяТовары.Ссылка КАК Возврат,
   ВозвратТоваровОтПокупателяТовары.ДокументПартии КАК РТиУ
ИЗ
   Документ.ВозвратТоваровОтПокупателя.Товары КАК ВозвратТоваровОтПокупателяТовары
14 micha
 
16.05.12
09:20
(13) ДокументПартии  не всегда корректен. Самое лучшее просматривать через подчиненные доки. если писать 2 запроса перебирая реализацию а потом возвраты  - затратно по времени.
15 micha
 
16.05.12
09:26
(6) мне вот все таки интересно как это должно выглядеть
бла-бла-бла
Объединить ВСЕ
бла-бла-бла

ВЫБРАТЬ
   РеализацияТоваровУслуг.Ссылка КАК Реализация
ИЗ
   Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
ГДЕ
   РеализацияТоваровУслуг.Склад = &Склад
   И РеализацияТоваровУслуг.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&Дата1, ДЕНЬ) И КОНЕЦПЕРИОДА(&Дата2, ДЕНЬ)

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
   СвязанныеДокументы.Ссылка
ИЗ
   КритерийОтбора.СвязанныеДокументы КАК СвязанныеДокументы
16 shuhard
 
16.05.12
09:31
(14)[ДокументПартии  не всегда корректен]
между РТиУ и Возвратом нет ни какой другой связи
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс