Как отключить расчет ресурсов по нижестоящим группировкам в отчёте на СКД?

1. dklp 42 16.06.17 09:35 Сейчас в теме
Есть трёхуровневая группировка Клиент -> Накладная -> Товар, и есть некий ресурс Оплата, который должен рассчитываться только для группировок Накладная и выше. В нижестоящей группировке Товар в поле Оплата должны быть нули.

Сейчас запрос в Наборе данных выглядит примерно так:
Выбрать 
	РеализацияТоваровУслуг.Ссылка КАК Накладная,
	РеализацияТоваровУслуг.Партнер КАК Клиент,
	РеализацияТоваровУслуг.СуммаПоступления КАК Оплата,
	
	РеализацияТовары.Номенклатура КАК Товар,
	...
ИЗ
	Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг

	ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТовары
	ПО РеализацияТовары.Ссылка = РеализацияТоваровУслуг.Ссылка 
Показать

Здесь Товары - это табличная часть документа РеализацияТоваровУслуг, у Товаров вообще нет
поля Оплата. Оплата - это реквизит Накладной.

На вкладке ресурсов в поле "Рассчитывать по..." указал следующие выражения:
- для группировки Товар - 0;
- для группировки Накладная - Оплата;
- для группировки Клиент - Сумма(Оплата).

В результате, в Товаре выводит по нулям, в Накладной - Оплату, а вот в Клиента вытягивает не сумму Оплаты по Накладным, а сумму всех строк нижестоящих группировок, как будто в Товаре в каждой строке не нули, а тоже Оплата из Накладной.

Ниже приводится картинка для наглядности и пример отчета (в отчете только для простоты вместо поля СуммаПоступления используется СуммаДокумента):

Прикрепленные файлы:
пример.erf
+
Вознаграждение за ответ
Показать полностью
Найденные решения
10. dklp 42 16.06.17 12:11 Сейчас в теме
(9)
я сам только что к похожему варианту пришёл.

Итак, на вкладке Ресурсы 2 раза добавляем в ресурсы поле Оплата и отдельно для каждого из них указываем следующие выражения

для первого:
0
"Рассчитывать по..." -> отмечаем группировку Товар

для второго:
Сумма(ВычислитьВыражениеСГруппировкойМассив("Оплата", "Накладная"))
"Рассчитывать по..." -> отмечаем группировки Накладная, Клиент и Общий итог:

При этом нужно не забыть дать имена группировкам на вкладке Настройка (правой кнопкой по группировке -> Установить имя)
Vida; cameron_rifkin; +2
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Dream_kz 129 16.06.17 09:41 Сейчас в теме
Что-то типо этого:

ВычислитьВыражение("Сумма(Максимум(НужныйРесурс))", "ИмяГруппировки")
+
4. dklp 42 16.06.17 09:51 Сейчас в теме
(2)
хорошо, пробую такой вариант:
ВычислитьВыражение("Сумма(Максимум(Оплата))", "Товар")

пишет, что использование вложенных агрегатных функций не допускается
+
5. Dream_kz 129 16.06.17 09:59 Сейчас в теме
(4) Хм, да, без отчета сказать сложно будет, функция эта, нужно смотреть варианты:

Сумма(ВычислитьВыражение("Максимум(Оплата))", "Товар"))

ВычислитьВыражение("Сумма(Оплата))", "Товар", , "Первая", "Первая")
+
7. dklp 42 16.06.17 10:09 Сейчас в теме
(5)
в первом случае - ничем не отличается от исходного варианта, во втором - наоборот выводит Оплату только в нижестоящей группировке
+
8. dklp 42 16.06.17 10:26 Сейчас в теме
(5)
Прикрепленные файлы:
пример.erf
+
9. Dream_kz 129 16.06.17 12:03 Сейчас в теме +1 $m
(8) Ну как-то так, отчет сразу не заметил)

СУММА(ВычислитьВыражениеСГруппировкойМассив("Максимум(Оплата)"," Накладная"))
Прикрепленные файлы:
пример.erf
+
10. dklp 42 16.06.17 12:11 Сейчас в теме
(9)
я сам только что к похожему варианту пришёл.

Итак, на вкладке Ресурсы 2 раза добавляем в ресурсы поле Оплата и отдельно для каждого из них указываем следующие выражения

для первого:
0
"Рассчитывать по..." -> отмечаем группировку Товар

для второго:
Сумма(ВычислитьВыражениеСГруппировкойМассив("Оплата", "Накладная"))
"Рассчитывать по..." -> отмечаем группировки Накладная, Клиент и Общий итог:

При этом нужно не забыть дать имена группировкам на вкладке Настройка (правой кнопкой по группировке -> Установить имя)
Vida; cameron_rifkin; +2
11. cameron_rifkin 07.08.18 12:02 Сейчас в теме
(10) Спасибо. Долго пытался справиться с этой проблемой. Кстати, удалось даже без имен группировок (может быть потому что группировка простая, с одним полем)
+
3. irinaborisova 16.06.17 09:50 Сейчас в теме
В выбранных полях в нужно группировке развернуть авто-поля и убрать ненужные
+
6. dklp 42 16.06.17 10:00 Сейчас в теме
(3)
не поможет. просто ресурс не будет отображаться для этой группировки, но итоги по ресурсу всё равно неправильные - считаеь как сумму всех нижестоящих строк и переносит Оплату из Накладной в строки группировки Товар (хотя и не отображает их).
+
Внимание! Тема сдана в архив

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