Имя: Пароль:
1C
1С v8
Помогите с запросом.
0 suvolod
 
24.04.12
15:36
Вроде простой вопрос, а решить не могу. Есть вопрос:

"ВЫБРАТЬ
|    РасходнаяНакладнаяСписокТоваров.Номенклатура,
|    РасходнаяНакладнаяСписокТоваров.Количество,
|    РасходнаяНакладнаяСписокТоваров.Сумма
|ИЗ
|    Документ.РасходнаяНакладная.СписокТоваров КАК РасходнаяНакладнаяСписокТоваров
|ГДЕ
|    РасходнаяНакладнаяСписокТоваров.Ссылка = &Ссылка"


Вопрос:
Как мне к этому запросу прицепить еще одно поле, в котором будет сидеть итог по табличной части? Т.е. мне нужна строка вида:
Номенклатура, КоличествоПоСтроке, СуммаПоСтроке, СуммаПоВсейТЧ
1 butterbean
 
24.04.12
15:40
т.е. в каждой строке в этом поле будет еще и итог по всей тч??
2 Zubek
 
24.04.12
15:40
Посмтори в СП

СГРУППИРОВАТЬ ПО
ЛЕВОЕ СОЕДИНЕНИЕ
СУММА()
3 cViper
 
24.04.12
15:40
(0) Есть несколько вариантов.
Один из них: подзапрос, в котором получается итог по таблице.
В СКД, по-моему, такое можно делать даже без подзапроса.
4 suvolod
 
24.04.12
15:44
(1) Да.
(3) С подзапросом я уже думал. Как-то слишком уж трехэтажно получается. Результирующую таблицу на самом деле определяю как ВремТаб, и получается во ВремТаб подзапрос, да потом еще сама эта ВремТаб тоже в подзапросах участвует. ХОчется простое элегантное решение
5 butterbean
 
24.04.12
15:46
(4) еще парочку временных таблиц сделай
6 SUA
 
24.04.12
15:47
в типовых можно посмотреть
РасходнаяНакладнаяСписокТоваров.Ссылка.СуммаДокумента
если к документу запрос
7 Sancha
 
24.04.12
16:29
Может так? добавить еще одно поле в конструкторе запроса
|    Сумма(РасходнаяНакладнаяСписокТоваров.Сумма) как СуммаПоТаблице
8 fisher
 
24.04.12
16:33
(4) Проще чем с подзапросом не выйдет.
(6) Один ньюанс. Нужно чтобы этот реквизит существовал и хранил итог по табличной части :)
9 cViper
 
24.04.12
16:59
ВЫБРАТЬ
|    РасходнаяНакладнаяСписокТоваров.Номенклатура,


|    РасходнаяНакладнаяСписокТоваров.Количество,

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

|ГДЕ
|    РасходнаяНакладнаяСписокТоваров.Ссылка = &Ссылка"
10 cViper
 
24.04.12
16:59
(2) Чего здесь 3ех-этажного?
11 fisher
 
24.04.12
17:04
(9) В данном случае вместо левого соединения можно просто запятую поставить.
12 cViper
 
24.04.12
17:45
(11) Да