Вход | Регистрация

1С:Предприятие ::

Метки: 

как правильно перебирать запрос с итогами ?

Я
   Trotter
 
06.09.18 - 07:43
Привет. Есть такой запрос:
ВЫБРАТЬ
    Продажи.Период КАК Период,
    Продажи.Регистратор КАК Регистратор,
    Продажи.НомерСтроки КАК НомерСтроки,
    Продажи.Активность КАК Активность,
    Продажи.УправленческийУчет КАК УправленческийУчет,
    Продажи.ПодразделениеКомпании КАК ПодразделениеКомпании,
    Продажи.Номенклатура КАК Номенклатура,
    Продажи.Поставщик КАК Поставщик,
    Продажи.Покупатель КАК Покупатель,
    Продажи.СтатусПартии КАК СтатусПартии,
    Продажи.ХозОперация КАК ХозОперация,
    Продажи.ДоговорВзаиморасчетов КАК ДоговорВзаиморасчетов,
    Продажи.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    Продажи.СкладКомпании КАК СкладКомпании,
    Продажи.Рецептура КАК Рецептура,
    Продажи.СтавкаНДС КАК СтавкаНДС,
    Продажи.Партия КАК Партия,
    Продажи.Проект КАК Проект,
    СУММА(Продажи.Количество) КАК Количество,
    СУММА(Продажи.Сумма) КАК Сумма,
    СУММА(Продажи.СуммаНДС) КАК СуммаНДС,
    СУММА(Продажи.СуммаСкидки) КАК СуммаСкидки,
    СУММА(Продажи.СуммаУпр) КАК СуммаУпр,
    СУММА(Продажи.КоличествоКомплексныхОбедов) КАК КоличествоКомплексныхОбедов,
    СУММА(Продажи.СебестоимостьУпр) КАК СебестоимостьУпр,
    СУММА(Продажи.Себестоимость) КАК Себестоимость,
    СУММА(Продажи.СуммаНДСВходящий) КАК СуммаНДСВходящий
ИЗ
    РегистрНакопления.Продажи КАК Продажи
ГДЕ
    Продажи.Период МЕЖДУ &нДата И &кДата

СГРУППИРОВАТЬ ПО
    Продажи.Регистратор,
    Продажи.Период,
    Продажи.НомерСтроки,
    Продажи.Активность,
    Продажи.УправленческийУчет,
    Продажи.ПодразделениеКомпании,
    Продажи.Номенклатура,
    Продажи.Поставщик,
    Продажи.Покупатель,
    Продажи.СтатусПартии,
    Продажи.ХозОперация,
    Продажи.ДоговорВзаиморасчетов,
    Продажи.ХарактеристикаНоменклатуры,
    Продажи.СкладКомпании,
    Продажи.Рецептура,
    Продажи.СтавкаНДС,
    Продажи.Партия,
    Продажи.Проект
ИТОГИ
    СУММА(Количество),
    СУММА(Сумма),
    СУММА(СуммаНДС),
    СУММА(СуммаСкидки),
    СУММА(СуммаУпр),
    СУММА(КоличествоКомплексныхОбедов),
    СУММА(СебестоимостьУпр),
    СУММА(Себестоимость),
    СУММА(СуммаНДСВходящий)
ПО
    Регистратор

И всё меня в нём устраивает, вроде как.
Но когда я начинаю перебирать результат сталкиваюсь с проблемой.
Первом делом я хочу передать номенклатуру в функцию, НО первой строчкой в результате идёт ИТОГ по регистратору и Номенклатура = NULL
И Как тут лучше быть ?
 
 
   Zmich
 
1 - 06.09.18 - 07:50
(0).
ВыборкаРегистраторов = Запрос.Выполнить.Выбрать(ОбъодРезультатаЗапроса.ПоГруппировкам, "Регистратор");
Пока ВыборкаРегистраторов.Следующий() Цикл
  // тут Номенклатура будет Null

  Выборка = ВыборкаРегистраторов.Выбрать();
  Пока Выборка.Следующий() Цикл
    Номенклатура = Выборка.Номенклатура;// а тут уже не Null

  КонецЦикла;
КонецЦикла;
   Trotter
 
2 - 06.09.18 - 07:56
(1) Спасибо, сейчас затестирую, как - то я об этом даже и не подумал.
   Trotter
 
3 - 06.09.18 - 08:21
всё. спасибо. то что нужно.
Мб тут подскажете как в итогах высчитать средние значения того или иного поля ?
   catena
 
4 - 06.09.18 - 08:31
(3)Использовать агрегатную функцию СРЕДНЕЕ, не?
   ILM
 
5 - 06.09.18 - 08:38
Как бы включив телепатию в отчете нужны средняя цена продажи и одновременно итоги продаж. Что-то типа набора полей: сумма, количество, цена мин, цена макс, цена средняя, кол-во контрагентов, кол-во продаж, среднее кол-во. Но вот что с этим потом делать непонятно)))
   Trotter
 
6 - 06.09.18 - 08:38
(4) Да это понятно, например есть Сумма и количество, как посчитать цену в запросе дабы потом применить агрегатную функцию СРЕДНЕЕ ?
   Trotter
 
7 - 06.09.18 - 08:38
(5) +))
   catena
 
8 - 06.09.18 - 08:46
(6)Разделить? В чем проблема-то, что не получается?
   Trotter
 
9 - 06.09.18 - 08:47
(8) подготовить это в запросе, ахинея какая - то получается:
ВЫБРАТЬ
    Продажи.Период КАК Период,
    Продажи.Регистратор КАК Регистратор,
    Продажи.НомерСтроки КАК НомерСтроки,
    Продажи.Активность КАК Активность,
    Продажи.УправленческийУчет КАК УправленческийУчет,
    Продажи.ПодразделениеКомпании КАК ПодразделениеКомпании,
    Продажи.Номенклатура КАК Номенклатура,
    Продажи.Поставщик КАК Поставщик,
    Продажи.Покупатель КАК Покупатель,
    Продажи.СтатусПартии КАК СтатусПартии,
    Продажи.ХозОперация КАК ХозОперация,
    Продажи.ДоговорВзаиморасчетов КАК ДоговорВзаиморасчетов,
    Продажи.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    Продажи.СкладКомпании КАК СкладКомпании,
    Продажи.Рецептура КАК Рецептура,
    Продажи.СтавкаНДС КАК СтавкаНДС,
    Продажи.Партия КАК Партия,
    Продажи.Проект КАК Проект,
    СУММА(Продажи.Количество) КАК Количество,
    СУММА(Продажи.Сумма) КАК Сумма,
    СУММА(Продажи.СуммаНДС) КАК СуммаНДС,
    СУММА(Продажи.СуммаСкидки) КАК СуммаСкидки,
    СУММА(Продажи.СуммаУпр) КАК СуммаУпр,
    СУММА(Продажи.КоличествоКомплексныхОбедов) КАК КоличествоКомплексныхОбедов,
    СУММА(Продажи.СебестоимостьУпр) КАК СебестоимостьУпр,
    СУММА(Продажи.Себестоимость) КАК Себестоимость,
    СУММА(Продажи.СуммаНДСВходящий) КАК СуммаНДСВходящий,
    ВЫРАЗИТЬ(Продажи.Количество / Продажи.Сумма КАК ЧИСЛО(15, 2)) КАК Цена
ИЗ
    РегистрНакопления.Продажи КАК Продажи
ГДЕ
    Продажи.Период МЕЖДУ &нДата И &кДата

СГРУППИРОВАТЬ ПО
    Продажи.Регистратор,
    Продажи.Период,
    Продажи.НомерСтроки,
    Продажи.УправленческийУчет,
    Продажи.ПодразделениеКомпании,
    Продажи.Номенклатура,
    Продажи.Поставщик,
    Продажи.Покупатель,
    Продажи.СтатусПартии,
    Продажи.ХозОперация,
    Продажи.ДоговорВзаиморасчетов,
    Продажи.ХарактеристикаНоменклатуры,
    Продажи.СкладКомпании,
    Продажи.Рецептура,
    Продажи.СтавкаНДС,
    Продажи.Партия,
    Продажи.Проект,
    Продажи.Активность,
    ВЫРАЗИТЬ(Продажи.Количество / Продажи.Сумма КАК ЧИСЛО(15, 2))
ИТОГИ
    СУММА(Количество),
    СУММА(Сумма),
    СУММА(СуммаНДС),
    СУММА(СуммаСкидки),
    СУММА(СуммаУпр),
    СУММА(КоличествоКомплексныхОбедов),
    СУММА(СебестоимостьУпр),
    СУММА(Себестоимость),
    СУММА(СуммаНДСВходящий)
ПО
    Регистратор
   Trotter
 
10 - 06.09.18 - 08:48
Продажи.Сумма / Продажи.Количество
 
 Рекламное место пустует
   Trotter
 
11 - 06.09.18 - 08:50
всё разобрался, сейчас я навычисляю всякие вычисления, теперь то ) спасибо
   ILM
 
12 - 06.09.18 - 10:46
(11) Большие знания - большие печали. Сделай тогда сразу и второй отчет сравнить период (месяц, год, квартал) % измения продаж, прибыли и цены динамику, можно даже диаграмму.

У меня есть отчет сделанный "насторону" для военных на СКД ,там около 20 показателей с расшифровкой исходных данных за два периода и динамика - портянка на 40 листов. Им нравятся, а мне нет)))


Список тем форума
Рекламное место пустует Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует