Имя: Пароль:
1C
1С v8
Обход результата запроса по групировкам
0 curys
 
03.12.12
16:12
Доброго времени суток. Подскажите как правильно обойти результат по группировкам так чтобы во второй группировке отображался остаток по складам.

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

ВыборкаПоНоменклатуре = Выборка.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Номенклатура");
   Пока ВыборкаПоНоменклатуре.Следующий() Цикл
       // НовСтрока = Результат.Добавить();
       
        ВыборкаСклад = ВыборкаПоНоменклатуре.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Склад", "Общие");
        Пока ВыборкаСклад.Следующий() Цикл
           
        КонецЦикла;
       
   КонецЦикла;


т.е. получается что при выборке по складам в полях не отображается остаток. Подскажи что делаю не так?
1 Feanorko
 
03.12.12
16:14
ИТОГИ
   СУММА(ТоварыНаСкладахОстатки.КоличествоОстаток)
ПО
   ОБЩИЕ...
2 curys
 
03.12.12
16:20
(1)спасибо
Основная теорема систематики: Новые системы плодят новые проблемы.