Добрый день!
Есть вычисляемое поле Недостаток: Выражение = Вычислить("Среднее(КоличествоНеделя)-Сумма(Количество)","Номенклатура","Группировка").
Может кто подскажет как в СКД 8.1 сделать такую сортировку по этому полю в настройке СКД для группировки Номенклатура?

Выдает ошибку:
Ошибка компоновки данных
по причине:
Ошибка получения данных
по причине:
Выражение не может быть вычислено "Среднее(НаборДанных1.КоличествоНеделя) - Сумма(НаборДанных1.Количество)"

Убился уже с этим(
---
zaxarovsky,

```1c
    ВЫБРАТЬ РАЗЛИЧНЫЕ
    ИтоговаяОстатки.Номенклатура,
    ИтоговаяОстатки.СерийныйНомер,
    ИтоговаяОстатки.Ячейка,
    Среднее(ЕСТЬNULL(ИтоговаяОстатки.Количество, 0)) КАК Количество,
    Сумма(ЕСТЬNULL(ТаблицаОтборовНоменклатура.Количество, 0))/Количество(Различные Ячейка) КАК КоличествоНеделя
    ПОМЕСТИТЬ ИтоговаяТаблица
    ИЗ
    ИтоговаяОстатки КАК ИтоговаяОстатки
    ЛЕВОЕ СОЕДИНЕНИЕ ТаблицаОтборовНоменклатураНеделя КАК ТаблицаОтборовНоменклатура
    ПО ИтоговаяОстатки.Номенклатура = ТаблицаОтборовНоменклатура.Номенклатура

    Сгруппировать по
    ИтоговаяОстатки.Номенклатура,
    ИтоговаяОстатки.СерийныйНомер,
    ИтоговаяОстатки.Ячейка

    ;

    X
    ВЫБРАТЬ
    ИтоговаяТаблица.Номенклатура,
    СУММА(ИтоговаяТаблица.Количество) КАК Количество,
    СРЕДНЕЕ(ИтоговаяТаблица.КоличествоНеделя) КАК КоличествоНеделя
    ПОМЕСТИТЬ ТаблицаНедостатка
    ИЗ
    ИтоговаяТаблица КАК ИтоговаяТаблица

    СГРУППИРОВАТЬ ПО
    ИтоговаяТаблица.Номенклатура
    ;

    X
    ВЫБРАТЬ
    ИтоговаяТаблица.Номенклатура,
    ИтоговаяТаблица.СерийныйНомер,
    ИтоговаяТаблица.Ячейка,
    ИтоговаяТаблица.Количество,
    ИтоговаяТаблица.КоличествоНеделя,
    ТаблицаНедостатка.КоличествоНеделя - ТаблицаНедостатка.Количество КАК Недостаток
    ИЗ
    ИтоговаяТаблица КАК ИтоговаяТаблица
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ ТаблицаНедостатка КАК ТаблицаНедостатка
    ПО ИтоговаяТаблица.Номенклатура = ТаблицаНедостатка.Номенклатура
```
---
zaxarovsky, вычисляемое поле или всетаки пользовательское?
---
zaxarovsky, я бы на твоем месте считал это поле через ресурсы - те. сам недостаток делаешь нулевым полем запроса и загоняешь его в ресурс в выражении пишешь Среднее(КоличествоНеделя)-Сумма(Количество) расчитывать ставишь по номенклатуре - проблем ни каких а с "Вычислить" у меня как то не сложилось не догоняю я как она работает.
---
Восьмой, это поле и в Ресурсах есть.
Здесь в вычисляемом поле сначала вычисляются Итоги по нужной мне группировке.
А затем в Ресурсах эти результататы еще раз суммируются.
---
zaxarovsky, ок а в самом запросе почем не сгруппируешь и не посчитаешь?
---
Восьмой,
не группируется в запросе так как надо.
---
zaxarovsky, покажи запрос
---
Восьмой, финальный запрос такой

```1c
    ВЫБРАТЬ РАЗЛИЧНЫЕ
    ИтоговаяОстатки.Номенклатура,
    ИтоговаяОстатки.СерийныйНомер,
    ИтоговаяОстатки.Ячейка,
    Среднее(ЕСТЬNULL(ИтоговаяОстатки.Количество, 0)) КАК Количество,
    Сумма(ЕСТЬNULL(ТаблицаОтборовНоменклатура.Количество, 0))/Количество(Различные Ячейка) КАК КоличествоНеделя

    ИЗ
    ИтоговаяОстатки КАК ИтоговаяОстатки
    ЛЕВОЕ СОЕДИНЕНИЕ ТаблицаОтборовНоменклатураНеделя КАК ТаблицаОтборовНоменклатура
    ПО ИтоговаяОстатки.Номенклатура = ТаблицаОтборовНоменклатура.Номенклатура

    Сгруппировать по
    ИтоговаяОстатки.Номенклатура,
    ИтоговаяОстатки.СерийныйНомер,
    ИтоговаяОстатки.Ячейка
```
---
zaxarovsky,

```1c
    ВЫБРАТЬ РАЗЛИЧНЫЕ
    ИтоговаяОстатки.Номенклатура,
    ИтоговаяОстатки.СерийныйНомер,
    ИтоговаяОстатки.Ячейка,
    Среднее(ЕСТЬNULL(ИтоговаяОстатки.Количество, 0)) КАК Количество,
    Сумма(ЕСТЬNULL(ТаблицаОтборовНоменклатура.Количество, 0))/Количество(Различные Ячейка) КАК КоличествоНеделя
    ПОМЕСТИТЬ ИтоговаяТаблица
    ИЗ
    ИтоговаяОстатки КАК ИтоговаяОстатки
    ЛЕВОЕ СОЕДИНЕНИЕ ТаблицаОтборовНоменклатураНеделя КАК ТаблицаОтборовНоменклатура
    ПО ИтоговаяОстатки.Номенклатура = ТаблицаОтборовНоменклатура.Номенклатура

    Сгруппировать по
    ИтоговаяОстатки.Номенклатура,
    ИтоговаяОстатки.СерийныйНомер,
    ИтоговаяОстатки.Ячейка

    ;

    X
    ВЫБРАТЬ
    ИтоговаяТаблица.Номенклатура,
    СУММА(ИтоговаяТаблица.Количество) КАК Количество,
    СРЕДНЕЕ(ИтоговаяТаблица.КоличествоНеделя) КАК КоличествоНеделя
    ПОМЕСТИТЬ ТаблицаНедостатка
    ИЗ
    ИтоговаяТаблица КАК ИтоговаяТаблица

    СГРУППИРОВАТЬ ПО
    ИтоговаяТаблица.Номенклатура
    ;

    X
    ВЫБРАТЬ
    ИтоговаяТаблица.Номенклатура,
    ИтоговаяТаблица.СерийныйНомер,
    ИтоговаяТаблица.Ячейка,
    ИтоговаяТаблица.Количество,
    ИтоговаяТаблица.КоличествоНеделя,
    ТаблицаНедостатка.КоличествоНеделя - ТаблицаНедостатка.Количество КАК Недостаток
    ИЗ
    ИтоговаяТаблица КАК ИтоговаяТаблица
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ ТаблицаНедостатка КАК ТаблицаНедостатка
    ПО ИтоговаяТаблица.Номенклатура = ТаблицаНедостатка.Номенклатура
```
---
Восьмой, ээээээээ это надо проверить:)
отпишусь...
---
Восьмой,
Ура!!! Спасибо! Изменение запроса помогло решить проблему! ))))
Однако, все же так решу: поскольку вопрос ставился по настройкам СКД, то если сегодня до 24:00 кто-то предложит решение именно через использование настроек СКД, то большая часть гонорара уйдет ему.
Иначе, все получит Восьмой!
---
zaxarovsky, через пользовательские поля как вариант)))но как по мне - мне бы нормальное объяснение с примерами увидить по вот этим "Функциям языка выражений СКД"

Вычислить
ВычислитьВыражение
ВычислитьВыражениеСГруппировкойМассив
ВычислитьВыражениеСГруппировкойТаблицаЗначений

Сам бы заплатил))))
---
Восьмой, через пользовательские я пробовал уж, та же ошибка
Ошибка компоновки данных
по причине:
Ошибка получения данных
по причине:
Выражение не может быть вычислено "Среднее(НаборДанных1.КоличествоНеделя) - Сумма(НаборДанных1.Количество)"
по
Вычислить
ВычислитьВыражение
ВычислитьВыражениеСГруппировкойМассив
ВычислитьВыражениеСГруппировкойТаблицаЗначений
в принципе не очень сложно нарыть инфу в инете...

однако, у нас тут 8.1 платформа еще... поэтому, например, ВычислитьВыражениеСГруппировкойМассив там нет. вот еще в чем загвоздка)
---
zaxarovsky, да я вот сколько ее ни читаю и не пробую ХЗ понимаю как они работают - просто сам часто сталкиваюсь с нестандартными итогами - поэтому плюнул на это дело и рисую такие вещи запросами. ну или на край рису програмно тЗ как мне надо а потом через объект в скД лью.
---
zaxarovsky, наверно всетакки дело еще и в платформе))
---
Восьмой, лови
http://langslab.com/ebooks/skd/dcs-ch2/dcs-ex17
---
unoDosTres, Братуха спасибки пошел раскуривать тему!!!)))
---
А само выражение у вас нормально считается, если сортировку не ставить по нему?
---
Nelli_A86, Да, в том-то и загадка, что считается нормально, а сортировку не хочет делать.
---
Тема закрыта. Спасибо, Восьмой! :)