|
|
Подскажите как рассчитать значения по группировкам в СКД |
☑ |
|
0
Knight1C
20.07.16
✎
08:35
|
Приветствую, Коллеги.
Есть у меня задача - выполнить расчет по группировкам как на скриншоте по ссылке:
Колонка-ресурс называется "КонечныйДолг".
Получается корректно рассчитать до уровня "способ выдачи бонуса", а на участнике уже спотыкается и задваивает значения, выводя -20.
Для способа выдачи бонуса пишу так:
Сумма((вычислитьВыражениеСГруппировкойМассив("Максимум(КонечныйДолг)","ДокументДвижения")))
Для Участника пишу так:
Сумма((вычислитьВыражениеСГруппировкойМассив("Сумма(КонечныйДолг)","СпособВыдачиБонуса")))
Подскажите, где ошибаюсь.
|
|
|
1
Горогуля
20.07.16
✎
08:46
|
на участнике и ниже считать максимум, выше - сумму?
|
|
|
2
aleks_default
20.07.16
✎
09:11
|
(1)+1 и без всяких ВычислитьВыпажениеСГруппировкойМассив
|
|
|
3
Knight1C
20.07.16
✎
13:22
|
(2) не получится. Итоги не корректные.
(1) Не получилось.
По логике, мой вариант должен работать, так как на уровне "способ выдачи бонуса" результат корректный, но для участника почему-то считает не правильно, хотя группировку по которой считать указал явно.
|
|
|
4
aleks_default
20.07.16
✎
14:52
|
По примеру(как ты хочешь получить) у тебя все до уровня и включая уровень Участник - это простой Максимум.
А все что выше - это сумма Максимумов.
Ты для Участника считаешь Сумму Сумм - вот у тебя и получается 20. Зачем ты так делаешь, я не понимаю.
|
|
|
5
Knight1C
20.07.16
✎
15:40
|
(4) Так вот я и не понимаю, как это написать в СКД. :)
Мне для участника надо посчитать суммы по группировке "Способ выдачи бонуса".
Способов выдачи бонуса может быть несколько.
Как ты предложил в (2) я попробовал - не работает.
|
|
|
6
aleks_default
20.07.16
✎
16:30
|
Для понимания что делает вычислитьВыражениеСГруппировкойМассив убери слово Сумма в начале. Увидишь что эта функция возвращает массив чисел.
Вот расчет каждого из этих чисел - это если твою плоскую таблицу сгруппировать по группировке "СпособВыдачиБонуса" и просуммировать КонечныйДолг.
Как еще понятнее объяснить.
Я думаю тебе тут тоже нужна сумма максимумов.
|
|