Имя: Пароль:
1C
1С v8
Автогруппировка строк не заполняются поставщик и покупатель
0 Босечка
 
05.03.15
19:12
Есть 3 уровня группировки: Поставщик, покупатель и номенклатура
Как сделать чтобы заполнялись поставщик и покупатель. Вся иерархия выводится, но поля пост. и покуп. пустые. Пробовала поразному неполучается никак. Номенклатура выводится.


Результат = Запрос.Выполнить();
ТабДок.НачатьАвтогруппировкуСтрок();
ВыборкаИтоги =
    РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
ВыборкаИтоги.Следующий();
Выборка = ВыборкаИтоги.Выбрать(ОбходРезультатаЗапроса.Прямой);


        Пока Выборка.Следующий() Цикл
            Область = Макет.ПолучитьОбласть("Строка");
            Область.Параметры.Номенклатура =
            Выборка.НоменклатураПродажи;
            Область.Параметры.Количество = Выборка.Количество;
            Область.Параметры.Сумма = Выборка.Сумма;
            Область.Параметры.СуммаПоступления = Выборка.СуммаПост;
            ТабДок.Вывести(Область, Выборка.Уровень());
        КонецЦикла;
1 mehfk
 
05.03.15
19:18
Воспользуйтесь конструктором запроса с обработкой результата "вывод в табличный документ".
2 Остап Сулейманович
 
05.03.15
19:22
(0) Все таки где же заполнение полей "пост. и покуп." в приведенном коде?
3 Остап Сулейманович
 
05.03.15
19:23
+(2) И причем здесь автогруппировка?
4 Босечка
 
05.03.15
19:36
Пока Выборка.Следующий() Цикл
    ОбластьПоставщик = Макет.ПолучитьОбласть("Поставщик");
    ОбластьПоставщик.Параметры.Поставщик = Выборка.КонтрагентПоступление;
    ОбластьПоставщик.Параметры.Количество = Выборка.Количество;
    ОбластьПоставщик.Параметры.Сумма = Выборка.Сумма;
    ОбластьПоставщик.Параметры.СуммаПоступления = Выборка.СуммаПост;
    ТабДок.Вывести(ОбластьПоставщик,1);
    
    Пока Выборка.Следующий() Цикл
        ОбластьПокупатель = Макет.ПолучитьОбласть("Покупатель");
        Сообщить(Выборка.Покупатель);
        ОбластьПокупатель.Параметры.Покупатель = Выборка.Покупатель;
        ОбластьПокупатель.Параметры.Количество = Выборка.Количество;
        ОбластьПокупатель.Параметры.Сумма = Выборка.Сумма;
        ОбластьПокупатель.Параметры.СуммаПоступления = Выборка.СуммаПост;
        ТабДок.Вывести(ОбластьПокупатель,2);
        
        
        Пока Выборка.Следующий() Цикл
            Область = Макет.ПолучитьОбласть("Строка");
            Область.Параметры.Номенклатура =
            Выборка.НоменклатураПродажи;
            Область.Параметры.Количество = Выборка.Количество;
            Область.Параметры.Сумма = Выборка.Сумма;
            Область.Параметры.СуммаПоступления = Выборка.СуммаПост;
            ТабДок.Вывести(Область, Выборка.Уровень());
        КонецЦикла;
    КонецЦикла;
КонецЦикла;


но так не работает, выдает одного поставщика и одного покупателя
5 Остап Сулейманович
 
05.03.15
19:46
(4) Обход результата нужно делать таки по группировкам.
Например так :
Обход = ОбходРезультатаЗапроса.ПоГруппировкам;
Поставщики = РезультатЗапроса.Выбрать(Обход, "Поставщик);
Пока Поставщики.Следующий() Цикл
    Область = Макет.ПолучитьОбласть("Поставщик");
    Область.Параметры.Заполнить(Поставщики);
    ТабДок.Вывести(Область, Выборка.Уровень());
    Покупатели = Поставщики.Выбрать(Обход, "Покупатель");
    Пока Покупатели.Следующий() Цикл
       ...
       Номенклатура = Покупатели.Выбрать(Обход, "Номенклатура");
       Пока Номенклатура.Следующий() Цикл
           ...
       КонецЦикла;
    КонецЦикла;
КонецЦикла;
6 Босечка
 
05.03.15
20:10
матерится не номенклатуру, хотя она есть Пишет нето измерение
7 Остап Сулейманович
 
05.03.15
20:13
(6) Не нужно полностью копировать мой код. Я не знаю по каким группировкам у тебя построены итоги. В (5) просто сценарий. Или давай сюда свой запрос. Хотя бы начиная с "ИТОГИ ПО".
8 Босечка
 
05.03.15
20:15
"ВЫБРАТЬ
        |    Продажи.Период КАК Периодпродажи,
        |    Продажи.Регистратор,
        |    Продажи.НомерСтроки,
        |    Продажи.ПодразделениеКомпании,
        |    Продажи.Покупатель КАК Покупатель,
        |    Продажи.Номенклатура КАК НоменклатураПродажи,
        |    Продажи.СтатусПартии КАК СтатусПартииПродажи,
        |    Продажи.ХозОперация,
        |    Продажи.ДоговорВзаиморасчетов,
        |    Продажи.Автомобиль,
        |    Продажи.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатурыПродажи,
        |    Продажи.СкладКомпании КАК СкладКомпанииПродажи,
        |    Продажи.СтавкаНДС,
        |    Продажи.Активность,
        |    Продажи.Партия КАК Партияпродажи,
        |    Продажи.Авторабота,
        |    Продажи.Проект,
        |    Продажи.ГТД,
        |    Продажи.ДокументПродажи,
        |    СУММА(Продажи.Количество) КАК КоличествоПродажи,
        |    Продажи.КоличествоНормочасов,
        |    СУММА(Продажи.Сумма) КАК Сумма,
        |    Продажи.СуммаНДС,
        |    Продажи.СуммаСкидки,
        |    Продажи.СуммаУпр КАК СуммаУпр,
        |    Продажи.СебестоимостьУпр,
        |    Продажи.Себестоимость,
        |    Продажи.СуммаНДСВходящий,
        |    ПартииТоваровКомпании.Период КАК Период1,
        |    ПартииТоваровКомпании.Регистратор КАК Регистратор1,
        |    Продажи.Поставщик КАК Поставщик,
        |    ПартииТоваровКомпании.НомерСтроки КАК НомерСтроки1,
        |    ПартииТоваровКомпании.Активность КАК Активность1,
        |    ПартииТоваровКомпании.ВидДвижения,
        |    ПартииТоваровКомпании.СкладКомпании,
        |    ПартииТоваровКомпании.Регистратор.Контрагент КАК КонтрагентПоступление,
        |    ПартииТоваровКомпании.Номенклатура КАК НоменклатураПост,
        |    ПартииТоваровКомпании.ХарактеристикаНоменклатуры,
        |    ПартииТоваровКомпании.СтатусПартии,
        |    ПартииТоваровКомпании.Партия,
        |    СУММА(ПартииТоваровКомпании.Количество) КАК Количество,
        |    СУММА(ПартииТоваровКомпании.Сумма) КАК СуммаПост,
        |    ПартииТоваровКомпании.СуммаУпр КАК СуммаУпр1,
        |    ПартииТоваровКомпании.СуммаНДС КАК СуммаНДС1,
        |    ПартииТоваровКомпании.ХозОперация КАК ХозОперация1,
        |    ПартииТоваровКомпании.СтавкаНДС КАК СтавкаНДС1,
        |    ПартииТоваровКомпании.Проект КАК Проект1,
        |    ПартииТоваровКомпании.ДокументПродажи КАК ДокументПродажи1
        |ИЗ
        |    РегистрНакопления.ПартииТоваровКомпании КАК ПартииТоваровКомпании
        |        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи КАК Продажи
        |        ПО ПартииТоваровКомпании.Номенклатура = Продажи.Номенклатура
        |ГДЕ
        |    Продажи.Период >= &Дата1
        |    И Продажи.Период <= &Дата2
        |
        |СГРУППИРОВАТЬ ПО
        |    ПартииТоваровКомпании.Регистратор.Контрагент,
        |    Продажи.Покупатель,
        |    Продажи.Номенклатура,
        |    Продажи.Период,
        |    Продажи.Регистратор,
        |    Продажи.НомерСтроки,
        |    Продажи.ПодразделениеКомпании,
        |    Продажи.СтатусПартии,
        |    Продажи.ХозОперация,
        |    Продажи.ДоговорВзаиморасчетов,
        |    Продажи.Автомобиль,
        |    Продажи.ХарактеристикаНоменклатуры,
        |    Продажи.СкладКомпании,
        |    Продажи.СтавкаНДС,
        |    Продажи.Активность,
        |    Продажи.Партия,
        |    Продажи.Авторабота,
        |    Продажи.Проект,
        |    Продажи.ГТД,
        |    Продажи.ДокументПродажи,
        |    Продажи.КоличествоНормочасов,
        |    Продажи.СуммаНДС,
        |    Продажи.СуммаСкидки,
        |    Продажи.СуммаУпр,
        |    Продажи.СебестоимостьУпр,
        |    Продажи.Себестоимость,
        |    Продажи.СуммаНДСВходящий,
        |    ПартииТоваровКомпании.Период,
        |    ПартииТоваровКомпании.Регистратор,
        |    Продажи.Поставщик,
        |    ПартииТоваровКомпании.НомерСтроки,
        |    ПартииТоваровКомпании.Активность,
        |    ПартииТоваровКомпании.ВидДвижения,
        |    ПартииТоваровКомпании.СкладКомпании,
        |    ПартииТоваровКомпании.Номенклатура,
        |    ПартииТоваровКомпании.ХарактеристикаНоменклатуры,
        |    ПартииТоваровКомпании.СтатусПартии,
        |    ПартииТоваровКомпании.Партия,
        |    ПартииТоваровКомпании.СуммаУпр,
        |    ПартииТоваровКомпании.СуммаНДС,
        |    ПартииТоваровКомпании.ХозОперация,
        |    ПартииТоваровКомпании.СтавкаНДС,
        |    ПартииТоваровКомпании.Проект,
        |    ПартииТоваровКомпании.ДокументПродажи
        |
        |УПОРЯДОЧИТЬ ПО
        |    Периодпродажи
        |ИТОГИ
        |    СУММА(Сумма),
        |    СУММА(Количество),
        |    СУММА(СуммаПост)
        |ПО
        |    ОБЩИЕ,
        |    КонтрагентПоступление,
        |    Покупатель";
9 Босечка
 
05.03.15
20:15
Я указала номенклатураПродажи, все равно не работает
10 Остап Сулейманович
 
05.03.15
20:19
(9) В запросе у тебя указаны группировки "ОБЩИЕ,КонтрагентПоступление И Покупатель" Вот по ним и делай обход. Если нужна и Номенклатура - добавь ее в ИТОГИ.
11 Босечка
 
05.03.15
20:22
мне итоги по номенклатуре не нужны, мне надо просто вывести для каждого покупателя
12 Остап Сулейманович
 
05.03.15
20:22
+ (10) Группировки при обходе - это не то, что указано в запросе "СГРУППИРОВАТЬ ПО", а то что указано в
"ИТОГИ
...,
...,
...
ПО
   ИмяГруппировки1
   ИмяГруппировки2
   ....
"
В том числе и "ОБЩИЕ" - тоже группировка.
13 Босечка
 
05.03.15
20:26
А НачатьАвтоГруппировкуСтроку уже не надо писать?
14 Босечка
 
05.03.15
20:28
Большое вам спасибо!!! Все наконец получилось и я все поняла.