Суммирование значений SSRS из нескольких наборов данных и вложенных отчетов - PullRequest
0 голосов
/ 05 декабря 2018

У меня есть два набора данных и подчиненный отчет в моем основном отчете SSRS.

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

Это будет выглядеть так (для начала)

enter image description here

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

=ReportItems!tps_actual4.Value + ReportItems!Textbox1230.Value

tps_actual4 происходит из одного набора данных.Textbox1230 происходит из другого набора данных.

первая ошибка, которая появляется, гласит:

"The value for the DataSetName property is missing"

если я изменю свой код на что-то вроде этого

=First(ReportItems!tps_actual4.Value, "Master_Data_Set") + First(ReportItems!Textbox1230.Value, "Secondary_Data")

я получу еще одну ошибку, которая гласит:

The value expression for the textrun ''.. uses an aggregate function on a report item. Aggregate functions can be used only on report items contained in page headers and footers. 

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

Второй вопрос в случае Textbox1230, он возвращается 6 раз, поскольку имеется шесть строк данных.Как мне указать в моей логике оператор case, когда добавить Textbox1230

, наконец, я даже не уверен, как ссылаться на подотчет, так как нам нужен также доступ к двум полям из подотчета.,

спасибо.

Grand Total         column1 column2  
Dataset1 Values        a      x  
Dataset2 Values        b      y       … and so on
Subreport Values       c      x  
Grand Total Sums    a+b+c   x+y+z    

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

1 Ответ

0 голосов
/ 10 декабря 2018

Единственное, что вы можете сделать, это собрать все суммы из разных табликсов и суммировать эти значения в отдельной таблице.Но вы не можете извлечь значения из подотчета, это работает только с наборами данных, которые есть в реальном отчете.Если вы хотите также суммировать значения подотчета, я рекомендую использовать решение @ junketsu.

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

'Tablix 1 total
=Sum(Fields!TestValue.Value, "Dataset1")  'This expression is in Textbox1

'Tablix 2 total
=Sum(Fields!TestValue2.Value, "Dataset2")  'This expression is in Textbox2

Теперь добавьте третий табликс.Запишите в первом текстовом поле следующее выражение:

=ReportItems!Textbox1.Value  

Во втором текстовом поле:

=ReportItems!Textbox2.Value 

И в третьем текстовом поле:

=ReportItems!Textbox1.Value + ReportItems!Textbox2.Value

Результат длятриликс будет выглядеть так:

Dataset1 Total Value     11111
Dataset2 Total Value     22222
Overall Total            33333
...