Добавить итоговый столбец в конце таблицы с динамическим числом столбцов - PullRequest
0 голосов
/ 09 марта 2012

Я использую Reporting Services 2008. У меня есть RDL следующим образом ! [Я прошу его напечатать в течение 12 месяцев, чтобы я получил следующее]

янв фев мар апр май июнь июл август сентябрь окт ноябрь итоги
1 --- 1 ---- 1 --- 1 ----- 1 ---- 1 --- 1 --- 1 --- 1 ---- 1 --- 1 --- 1 ---- 12

Теперь, когда я прошу его напечатать в течение 4 месяцев, я получаю следующее! [На 4 месяца]
Ян Фев Мар Апр Итого
1 --- 1 ---- 1 --- 1 ----- 12

Я хочу, чтобы в конце столбца Итоги суммировались только те месяцы, которые были напечатаны. В настоящее время он подводит итоги всех месяцев, так как я поставил следующий код за выражением итогов.

=Sum(Fields!retail1.Value + Fields!retail2.Value + Fields!retail3.Value + Fields!retail4.Value + Fields!retail5.Value + Fields!retail6.Value + Fields!retail7.Value + Fields!retail8.Value + Fields!retail9.Value + Fields!retail10.Value + Fields!retail11.Value + Fields!retail12.Value)

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

=iif(Parameters!StartMonth.Value <= 5 and Parameters!EndMonth.Value >= 5,False,true)

Как отображать итоги только тех месяцев, которые выбраны. И от самого RDL, БЕЗ ИЗМЕНЕНИЯ ЗАПРОСА.

Заранее спасибо.

1 Ответ

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

Ваше общее выражение должно выглядеть так:

=Sum(IIF(Parameters!StartMonth <= 1 And Parameters!EndMonth >= 1, Fields!retail1.Value, 0)) 
+ Sum(IIF(Parameters!StartMonth <= 2 And Parameters!EndMonth >= 2, Fields!retail2.Value, 0))
+ Sum(IIF(Parameters!StartMonth <= 3 And Parameters!EndMonth >= 3, Fields!retail3.Value, 0)) 
+ ... and so on
...