Подытог в вычисляемом поле в матрице служб Reporting Services - PullRequest
0 голосов
/ 05 марта 2009

У меня есть отчет служб Reporting Services, в котором есть две группы строк: категория и подкатегория. Для столбцов он имеет LastYearDataA, ThisYearDataA, LastYearDataB, ThisYearDataB.

Я добавил два столбца (один для A и один для B), чтобы обработать вычисление выражения (чтобы показать процент, отличный от LastYear до ThisYear для каждого). Это работает Проблема возникает в подытоге для каждой категории. Необработанные числа суммируются правильно. Если SubCat1 имеет 10 // 5 для LastYear / ThisYear A, а SubCat2 имеет 5 // 1, то я получаю 15/5 для итогов. Но я получаю процентную долю в итоговом столбце как "50%", соответствующую SubCat1. Проценты для каждой подкатегории рассчитываются правильно (в любом случае, согласно моей резервной математике). Но промежуточный итог% всегда соответствует первой подкатегории в группе. Разве это невозможно сделать в Reporting Services 2005?

Ответы [ 2 ]

0 голосов
/ 12 марта 2010

Решение - изменить значение поля детализации в матрице. Итак, где у вас есть:

=Fields!FieldName.Value

Измените его на:

=Sum(Fields!FieldName.Value)

Когда оно отображает значение в обычной строке или столбце, я думаю, оно просто суммирует одно значение, поэтому оно не меняет его, но когда оно находится в столбце промежуточных итогов, оно суммирует их так, как вы хотели. Противоинтуитивно я знаю. Мне тоже пришлось искать, чтобы понять это.

0 голосов
/ 10 марта 2009

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

...