Сводка групповых строк в службах Reporting Services - PullRequest
0 голосов
/ 20 марта 2012

У меня серьезная проблема с службами отчетов SQL Server (SSRS) 2005:

Затем у меня есть группа.Эта группа включает, например, 30 строк.Все эти строки имеют специальный столбец ID, который имеет значения от 1 до 10 (1-10, 1-10, 1-10).Заголовок группы также имеет 10 строк.

Моя проблема в том, что мне нужно вычислить СУММ для всех строк, включенных в эту группу, но я должен сделать это очень странным образом - моя первая ячейка в столбце заголовка группы должна иметь сводку для всех строк втот же столбец (и та же группа), где поле идентификатора равно 1. Вторая ячейка в этом столбце заголовка группы должна содержать сводку всех строк в той же группе, где поле идентификатора = 2 и т. д.

В некоторыхпсевдоязыка выглядит следующим образом:

Первая ячейка в заголовке группы:

"select sum(someDataField) from allRowsInGroup where ID = 1"

Вторая ячейка в заголовке группы:

"select sum(someDataField) from allRowsInGroup where ID = 2"` and so on...

Как сделатьЯ делаю это в службах отчетности?

Ответы [ 2 ]

1 голос
/ 20 марта 2012

Звучит так, как будто вы пытаетесь создать эквивалент сводной таблицы в своем отчете.Вы можете сделать это через выражения - что-то вроде:

=sum( iif(Fields!id.Value=1, Fields!someDataField.Value, 0) )

- но SSRS уже включает свою собственную версию сводных таблиц в форме элемента отчета Matrix.

Подробнее о матрицах SSRS можно узнать здесь .

0 голосов
/ 20 марта 2012

Одно из моих предложений заключается в том, что если ваш столбец и строки не являются динамическими, вы можете использовать выражения в службах отчетов SQL Server. Для получения справки см. Использование функций отчета в выражениях (службы Reporting Services) (MSDN).

...