Группировка в СКД. ВычислитьВыражениеСГруппировкойМассив

1. ValeriyZ 19 18.08.21 07:41 Сейчас в теме
Доброго времени суток, коллеги. На рисунке 1 тривиальная задача. На группировке 3 выбрать максимум из детальных записей. На вышестоящих группировках суммировать то, что родилось на группировке 3.
Группировка 3: считаем Максимум(Х1)
Группировка 2: Сумма(ВычислитьВыражениеСГруппировкойМассив("Максимум(Х1)","Группа3"))
Группировка 1: Сумма(ВычислитьВыражениеСГруппировкойМассив("Максимум(Х1)","Группа1,Группа2"))

Это все понятно, и проблем не вызывает. Но, условия задачи усложнились, и тут буксую - никак не выхожу на нужный результат.
Если в группе 3 по Х1 ноль - нужно взять сумму по Х2, вышестоящие группировки - как в предыдущем примере.
Группировка 3 - проблем не вызывает:
Выбор когда Максимум(Х1)=0 Тогда Сумма(х2) иначе Максимум(Х1) Конец
А вот вышестоящие группировки никак не могу сообразить.
Прикрепленные файлы:
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
12. toypaul 63 18.08.21 10:38 Сейчас в теме +2 $m
А что тут буксовать? вместо выражения

"Максимум(Х1)" пишешь в ВВГМ свое новое выражение

"Выбор когда Максимум(Х1)=0 Тогда Сумма(х2) иначе Максимум(Х1)"

типа

ВВГМ("Выбор когда Максимум(Х1)=0 Тогда Сумма(х2) иначе Максимум(Х1)", ...)
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. gp42 18.08.21 08:37 Сейчас в теме
Все просто.
В СКД паралельно расчитываешь максимум Х1 и Х2

.... ,
ВЫБОР 
	КОГДА ВТ.МаксХ1=0 ТОГДА ВТ.МаксХ2
	ИНАЧЕ ВТ.Х1
КОНЕЦ КАК результат

ИЗ ВТ КАК ВТ
4. ValeriyZ 19 18.08.21 08:48 Сейчас в теме
(2) На нижней группировке - проблем нет. На верхней это так не работает. Там нужны СУММЫ по нижним, а не выбор максимумов.
3. gp42 18.08.21 08:43 Сейчас в теме
6. ValeriyZ 19 18.08.21 08:56 Сейчас в теме
(3) Набор данных формируется в модуле формы, в ПриКомпоновкеРезультата. Тем несколько этапов сбора. Весь гимор в том, что цифра Х1 формируется не в детальной записи, а на группировке 3. В принципе идея есть как это победить, но, хотелось через выражения.
5. gp42 18.08.21 08:53 Сейчас в теме
в запросе рассчитываются ?

Максимум(Х1) как МаксХ1
Сумма(х2) как СуммаХ2
7. ValeriyZ 19 18.08.21 08:59 Сейчас в теме
(5) Нет, в набор попадает линейная таблица. Х1 дублируется по количеству детальных записей. Потому в группировке тупо беру максимум.
8. Sanya2049 39 18.08.21 09:21 Сейчас в теме
А через "Рассчитать по" в "ресурсах" не пробовал решить вопрос, т.е. Мах считать по полям одной группировки, а сумму по другим полям группировки.
9. ValeriyZ 19 18.08.21 09:26 Сейчас в теме
(8) Это и так через выражения группировок.
Прикрепленные файлы:
10. Sanya2049 39 18.08.21 09:33 Сейчас в теме
не здесь
Прикрепленные файлы:
11. echo77 1887 18.08.21 09:35 Сейчас в теме
(0) А точно нужно максимум из детальных записей? Или нужны конечные остатки? :-)
12. toypaul 63 18.08.21 10:38 Сейчас в теме +2 $m
А что тут буксовать? вместо выражения

"Максимум(Х1)" пишешь в ВВГМ свое новое выражение

"Выбор когда Максимум(Х1)=0 Тогда Сумма(х2) иначе Максимум(Х1)"

типа

ВВГМ("Выбор когда Максимум(Х1)=0 Тогда Сумма(х2) иначе Максимум(Х1)", ...)
13. ValeriyZ 19 18.08.21 13:20 Сейчас в теме
(12) Благодарю! То, что надо. Сравнение вытаскивал за ВВГМ, а то, что его в выражение прописать можно - даже не подумалось.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот