Имя: Пароль:
1C
1С v8
Группировка колонок!?
0 Sasha_H
 
30.10.11
16:29
Здраствуйте. Есть запросик вот не знаю как его переделать, чтобы итоги были в колонках, а именно по Складам.

Чтобы колонки имели такой вид:

Номенклатура   Склад1    Склад2  .... СкладN

вот не знаю как это сделать, чтобы запрос вернул такой результат.


ТекстЗапроса = "ВЫБРАТЬ
   |    Подбор.Номенклатура                                                                КАК Номенклатура,
   |    Подбор.Склад                                                                        КАК Склад,
   |    ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0)
   |                - ЕСТЬNULL(ТоварыКПередачеСоСкладовОстатки.КоличествоОстаток, 0)        КАК ОстатокПоСкладу,
   |    ЕСТЬNULL(ТоварыВРезервеНаСкладахСвод.КоличествоОстаток, 0)
   |                - ЕСТЬNULL(ТоварыВРезервеНаСкладахПоДокументу.КоличествоОстаток, 0)    КАК КоличествоВРезерве,
   |    ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0)
   |                - ЕСТЬNULL(ТоварыКПередачеСоСкладовОстатки.КоличествоОстаток, 0)
   |                - (ЕСТЬNULL(ТоварыВРезервеНаСкладахСвод.КоличествоОстаток, 0)
   |                - ЕСТЬNULL(ТоварыВРезервеНаСкладахПоДокументу.КоличествоОстаток, 0))    КАК КоличествоСвободныйОстаток
   |ИЗ
   |    (ВЫБРАТЬ
   |        СпрНоменклатура.Ссылка КАК Номенклатура,
   |        Склады.Ссылка КАК Склад
   |    ИЗ
   |        Справочник.Номенклатура КАК СпрНоменклатура
   |            ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Склады КАК Склады
   |            ПО (ИСТИНА)
   |    ГДЕ
   |        Склады.Ссылка В(&мСписокСкладовВошедшихВЗапрос)
   |        И СпрНоменклатура.Ссылка В(&ВыбНоменклатура)) КАК Подбор
   |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки(
   |                &Дата,
   |                Склад В (&мСписокСкладовВошедшихВЗапрос)
   |                    И Номенклатура В (&ВыбНоменклатура)
   |                    И Качество = ЗНАЧЕНИЕ(Справочник.Качество.Новый)) КАК ТоварыНаСкладахОстатки
   |        ПО Подбор.Номенклатура = ТоварыНаСкладахОстатки.Номенклатура
   |            И Подбор.Склад = ТоварыНаСкладахОстатки.Склад
   |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыКПередачеСоСкладов.Остатки(
   |                &Дата,
   |                Склад В (&мСписокСкладовВошедшихВЗапрос)
   |                    И Номенклатура В (&ВыбНоменклатура)) КАК ТоварыКПередачеСоСкладовОстатки
   |        ПО Подбор.Номенклатура = ТоварыКПередачеСоСкладовОстатки.Номенклатура
   |            И Подбор.Склад = ТоварыКПередачеСоСкладовОстатки.Склад
   |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыВРезервеНаСкладах.Остатки(
   |                &Дата,
   |                Склад В (&мСписокСкладовВошедшихВЗапрос)
   |                    И Номенклатура В (&ВыбНоменклатура)) КАК ТоварыВРезервеНаСкладахСвод
   |        ПО Подбор.Номенклатура = ТоварыВРезервеНаСкладахСвод.Номенклатура
   |            И Подбор.Склад = ТоварыВРезервеНаСкладахСвод.Склад
   |        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыВРезервеНаСкладах.Остатки(
   |                &Дата,
   |                Склад В (&мСписокСкладовВошедшихВЗапрос)
   |                    И Номенклатура В (&ВыбНоменклатура)
   |                    И ДокументРезерва = &ДокЗаказПокупателя) КАК ТоварыВРезервеНаСкладахПоДокументу
   |        ПО Подбор.Номенклатура = ТоварыВРезервеНаСкладахПоДокументу.Номенклатура
   |            И Подбор.Склад = ТоварыВРезервеНаСкладахПоДокументу.Склад
   |ИТОГИ
   |    СУММА(ОстатокПоСкладу),
   |    СУММА(КоличествоВРезерве),
   |    СУММА(КоличествоСвободныйОстаток)
   |ПО
   |    Номенклатура
   |";
1 Wobland
 
30.10.11
16:33
глянул мельком. группировка нужна
2 Sasha_H
 
30.10.11
16:35
а куда? дело в том, что имя колонки должно быть именем склада, когда-то видел пример, а щас найтить не могу.
3 shuhard
 
30.10.11
16:36
(2) если это нужно именно в запросе, а не в отчете,
то лепи N подзапросов и связвывай  на лево
4 Sasha_H
 
30.10.11
16:51
думаю быстродействие тогда пострадает. быстрее будет уже результат запроса обойти и сделать самому колонки?!
5 davlen
 
30.10.11
17:51
(4) да
6 Amiralnar
 
30.10.11
17:56
|ИТОГИ
   |    СУММА(ОстатокПоСкладу),
   |    СУММА(КоличествоВРезерве),
   |    СУММА(КоличествоСвободныйОстаток)
   |ПО
   |    Номенклатура, Склад
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс