СКД. Разность группировок одного уровня в верхнюю группировку. Как? #765688


#0 by NastiaVlasenko
Добрый день. Как на СКД можно получить итог по группировке для ресурса как разность итогов по другой группировке. Т.е. есть приход денежных средств, есть расход, в верхнюю группировку хочу получить приход минус расход. Через функции общего модуля не нравится, т.к. потом проблемы по Общим итогам. Думаю, что поможет выражение в ресурсе, но не получается прописать. На скрине все гораздо понятней, чем я смогла описать в тексте.
#1 by asady
в вычисляемые поля добавь поле и формулу
#2 by also
Не очень понял, куда этот результат нужно запихнуть? На вышестоящую группировку?
#3 by NastiaVlasenko
Да
#4 by NastiaVlasenko
В формуле у меня проблема, не получается ее написать
#5 by also
Приход/Расход - это одна группировка?
#6 by NastiaVlasenko
Да
#7 by also
Конечно не знаю Вашу структуру и как у вас приход от расхода отличается, но попробуйте примерно так:
#8 by NastiaVlasenko
Пробую, пока не вышло, и не ругается и не считает, постараюсь понять, что нужно поменять для меня.
#9 by also
ну третий параметр надо сделать корректный. Там надо указать корректный отбор записей.
#10 by NastiaVlasenko
"ПриходРасход = ""Приход""" - значит, что вычисляем выражение для всех группировок "ПриходРасход" с наименованием "Приход"? если так, то все правильно
#11 by also
Нет, это я просто из головы взял условие отбора. А Вам нужно реальное условие для того, чтобы отобобрать все записи с типом Приход. Я не знаю, что у Вас такое ПриходРасход (какого типа). Может перечисление, может еще чего
#12 by asady
1. в вычисляемых полях добавляй поле "Дельта" 2 в ресурсах добавь поле дельта и формулу к Сумма("Приход") - Сумма("Расход")
#13 by NastiaVlasenko
Сумма(ВычислитьВыражениеСГруппировкойМассив("Сумма(План)", "ПриходРасход", "ПриходРасход = "ЗНАЧЕНИЕ(Перечисление.ВидыДвиженийПриходРасход.Расход)")) , пробую так, но ругается на использование агрегатных функций
#14 by also
ну если у тебя простая сумма в формулах, то реально проще сделать как . А так ЗНАЧЕНИЕ(Перечисление.ВидыДвиженийПриходРасход.Приход) нельзя писать. Можно сделать параметр &Приход недоступный для пользователя и заполнять его значением перечисления. и написать "ПриходРасход = &Приход"
#15 by NastiaVlasenko
Получилось вот так, огромное спасибо, надо разбираться мне с Вычислить выражение с группировкой массив...
#16 by also
эээ.. ну значит можно ;)
#17 by NastiaVlasenko
я выше просто "ЗНАЧЕНИЕ..." в ковычки брала, из-за этого видимо.., спасибо Вам большое..
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С