Reporting Services (2005, 아마도 2008)도 집계의 집계를 직접 지원하지 않습니다.
값을 직접 집계 할 수있는 사용자 지정 보고서 어셈블리, 코드 참조 및 명명 된 개체 (보고서 속성, 참조)를 사용하십시오.
코드는 다음과 같을 수 있습니다 :
Public Sub New()
m_valueTable = New DataTable(tableName:="DoubleValueList")
'Type reference to System.Double
Dim doubleType = Type.GetType(typeName:="System.Double")
' Add a single Double column to hold values
m_valueTable.Columns.Add(columnName:="Value", type:=doubleType)
' Add aggregation column
m_sumColumn = m_valueTable.Columns.Add(columnName:="Sum", type:=doubleType, expression:="Sum(Value)")
End Sub
Public Function Aggregate(ByVal value As Double) As Double
' Appends a row using a 1-element object array.
' If there will be more than 1 column, more values need to be supplied respectively.
m_valueTable.Rows.Add(value)
Aggregate = value
End Function
Public ReadOnly Property Sum() As Double
Get
If 0 = m_valueTable.Rows.Count Then
Sum = 0
Else
Sum = CDbl(m_valueTable.Rows(0)(m_sumColumn))
End If
End Get
End Property
이름은 예를 DoubleAggregator에 대한 참조. 그런 다음 그룹 식을 "Code.DoubleAggregator.Aggregate (Avg (Fields! Column2.Value))"로 바꾸고 Total의 식을 "Code.DoubleAggregator.Sum()"으로 바꿉니다.
테스트를 해보지 않았지만 재미있을 수 있습니다. 귀하의 답변을 주셔서 감사합니다, 나는 더 나은 솔루션이 나타날 때까지 권장대로 넣어. – Auron
요약 계산은 표가 처리되기 전에 정적으로 계산되므로 요약 계산을 표 바닥 글에 배치 할 수 없습니다. 요약을위한 정적 행만있는 유사한 스타일의 다른 테이블을 사용하는 것이 좋습니다. – user33675
@henbo -이 방법이 효과가 있습니까? 아마도 나는 당신의 의견을 이해하지 못합니다. – NTDLS