Доброго времени суток.
Есть стандартный отчет на СКД "Себестоимость товаров организаций". Необходимо добавить колонку оборачиваемости номенклатуры с иерархической группировкой. Добавляю в Вычисляемые поля выражение типа
```1c
    ВЫБОР
    КОГДА (Показатели.Количество.КоличествоНачальныйОстаток>0 ИЛИ Показатели.Количество.КоличествоКонечныйОстаток>0) И (Показатели.Количество.КоличествоРасход/((Показатели.Количество.КоличествоНачальныйОстаток+Показатели.Количество.КоличествоКонечныйОстаток)/2))>0
    ТОГДА Показатели.Количество.КоличествоРасход/((Показатели.Количество.КоличествоНачальныйОстаток+Показатели.Количество.КоличествоКонечныйОстаток)/2)
    ИНАЧЕ 0
    КОНЕЦ
```

считает оборачиваемость правильно с учетом условия. То, что нужно. Но вот ума не дам, как посчитать оборачиваемость по группе номенклатуры. Самое близкое, что удалось сделать, это добавить ресурс с Выражением
```1c
    ВычислитьВыражениеСгруппировкойМассив("Показатели.Количество.КоличествоРасход/((Показатели.Количество.КоличествоНачальныйОстаток+Показатели.Количество.КоличествоКонечныйОстаток)/2)")
```

эта конструкция дает хоть какой-то результат по группе (выводит массив через запятую), но мне нужно конкретное расчитанное значение по моей формуле. Может, я вообще не в том направлении копаю? Мне кажется, все должно быть гораздо проще...
Помогите, пожалуйста!

1С:ERP Управление предприятием 2 (2.4.13.57)
---
а так?

```1c
    ВЫБОР
    КОГДА (Сумма(Показатели.Количество.КоличествоНачальныйОстаток)>0 ИЛИ Сумма(Показатели.Количество.КоличествоКонечныйОстаток)>0) И (Сумма(Показатели.Количество.КоличествоРасход)/((Сумма(Показатели.Количество.КоличествоНачальныйОстаток)+Сумма(Показатели.Количество.КоличествоКонечныйОстаток))/2))>0
    ТОГДА Сумма(Показатели.Количество.КоличествоРасход)/((Сумма(Показатели.Количество.КоличествоНачальныйОстаток)+Сумма(Показатели.Количество.КоличествоКонечныйОстаток))/2)
    ИНАЧЕ 0
    КОНЕЦ
```
---
а так?

```1c
    ВЫБОР
    КОГДА (Сумма(Показатели.Количество.КоличествоНачальныйОстаток)>0 ИЛИ Сумма(Показатели.Количество.КоличествоКонечныйОстаток)>0) И (Сумма(Показатели.Количество.КоличествоРасход)/((Сумма(Показатели.Количество.КоличествоНачальныйОстаток)+Сумма(Показатели.Количество.КоличествоКонечныйОстаток))/2))>0
    ТОГДА Сумма(Показатели.Количество.КоличествоРасход)/((Сумма(Показатели.Количество.КоличествоНачальныйОстаток)+Сумма(Показатели.Количество.КоличествоКонечныйОстаток))/2)
    ИНАЧЕ 0
    КОНЕЦ
```
---
Да, только что попробовала, работает. Спасибо Огромное!
---
т.е у иерархии нет своих значений НачОстаток, Приход, Расход и КонОстаток. Необходимо посчитать по номенклатуре внутри группы и только потом применять условия и РассчитатьВыражение к суммам. Жесть...

Причем конструкция

```1c
    ВЫБОР
    КОГДА (Сумма(Показатели.Количество.КоличествоНачальныйОстаток)>0 ИЛИ Сумма(Показатели.Количество.КоличествоКонечныйОстаток)>0) И (Сумма(Показатели.Количество.КоличествоРасход)/((Сумма(Показатели.Количество.КоличествоНачальныйОстаток)+Сумма(Показатели.Количество.КоличествоКонечныйОстаток))/2))>0
    ТОГДА Сумма(Показатели.Количество.КоличествоРасход)/((Сумма(Показатели.Количество.КоличествоНачальныйОстаток)+Сумма(Показатели.Количество.КоличествоКонечныйОстаток))/2)
    ИНАЧЕ 0
    КОНЕЦ
```

работает и без ВычислитьВыражение после ТОГДА и с ним.
---
для группы номенклатуры нет данных в регистрах. По этому для группировки просто вычисляется по данным для элементов.
---
не подумала даже об этом. Спасибо!
---
А что, просто СУММА неправильно считает этот ресурс?
```1c
    СУММА(ВЫБОР
    КОГДА (Показатели.Количество.КоличествоНачальныйОстаток>0 ИЛИ Показатели.Количество.КоличествоКонечныйОстаток>0) И (Показатели.Количество.КоличествоРасход/((Показатели.Количество.КоличествоНачальныйОстаток+Показатели.Количество.КоличествоКонечныйОстаток)/2))>0
    ТОГДА Показатели.Количество.КоличествоРасход/((Показатели.Количество.КоличествоНачальныйОстаток+Показатели.Количество.КоличествоКонечныйОстаток)/2)
    ИНАЧЕ 0
    КОНЕЦ)
```
---
мне нужна не сумма всех значений оборачиваемости, а свое значение по группе. Из скриншота, если использовать сумму, тогда получится 10,83, но это значение неверно. Должно получиться 288/((1057+1128)/2) = 0,26