По приходным накладным.
Лучше всего делать запрос не по документам, в УТ10 есть регистр оборотный регистр Закупки.
Самый оптимальный по скорости вариант это делать запрос по нему.
ВЫБРАТЬ
ЗакупкиОбороты.Номенклатура,
ЗакупкиОбороты.ХарактеристикаНоменклатуры,
СУММА(ЗакупкиОбороты.КоличествоОборот) КАК КоличествоОборот,
ВЫБОР
КОГДА СУММА(ЗакупкиОбороты.КоличествоОборот) > 0
ТОГДА СУММА(ЗакупкиОбороты.СтоимостьОборот) / СУММА(ЗакупкиОбороты.КоличествоОборот)
ИНАЧЕ 0
КОНЕЦ КАК СредняяЦена,
СУММА(ЗакупкиОбороты.СтоимостьОборот) КАК СтоимостьОборот
ИЗ
РегистрНакопления.Закупки.Обороты(&НачалоПериода, &КонецПериода, , ) КАК ЗакупкиОбороты
СГРУППИРОВАТЬ ПО
ЗакупкиОбороты.Номенклатура,
ЗакупкиОбороты.ХарактеристикаНоменклатуры
Лучше всего делать запрос не по документам, в УТ10 есть регистр оборотный регистр Закупки.
Самый оптимальный по скорости вариант это делать запрос по нему.
ВЫБРАТЬ
ЗакупкиОбороты.Номенклатура,
ЗакупкиОбороты.ХарактеристикаНоменклатуры,
СУММА(ЗакупкиОбороты.КоличествоОборот) КАК КоличествоОборот,
ВЫБОР
КОГДА СУММА(ЗакупкиОбороты.КоличествоОборот) > 0
ТОГДА СУММА(ЗакупкиОбороты.СтоимостьОборот) / СУММА(ЗакупкиОбороты.КоличествоОборот)
ИНАЧЕ 0
КОНЕЦ КАК СредняяЦена,
СУММА(ЗакупкиОбороты.СтоимостьОборот) КАК СтоимостьОборот
ИЗ
РегистрНакопления.Закупки.Обороты(&НачалоПериода, &КонецПериода, , ) КАК ЗакупкиОбороты
СГРУППИРОВАТЬ ПО
ЗакупкиОбороты.Номенклатура,
ЗакупкиОбороты.ХарактеристикаНоменклатуры