Ich verwende benutzerdefinierten Code, um Untersummen zu berechnen. Die Untersummen sind laufende Summen nach unten.Reporting Services Berechnung von Untersummen mit benutzerdefiniertem Code Problem
Der unten stehende benutzerdefinierte Code funktioniert gut, wenn ich den Bericht für 1 Periode ausführen.
Custom Code
Public Shared Dim SortCodeTotal as Decimal
Public Shared Function Initialize()
SortCodeTotal = 0
End Function
Public Function AddTotal(ByVal b as Decimal) as Decimal
SortCodeTotal = SortCodeTotal + b
return b
End Function
Public Function DisplayTotal(ByVal b as Decimal) as Decimal
Dim ret as Decimal = 0
ret = SortCodeTotal + b
SortCodeTotal = ret
return ret
End Function
Details Linie enthalten Dieser Ausdruck
=Code.AddTotal(Sum(Fields!Activity_Amt.Value))
Zusammenfassung Total diesen Ausdruck
=Code.DisplayTotal(0)
enthält
Der Bericht verwendet eine Matrix. Der benutzerdefinierte Code wird nicht korrekt ausgeführt, wenn er mit mehr als 1 Periode ausgeführt wird. Wie ändere ich den benutzerdefinierten Code, um an allen Perioden in einer Matrix zu arbeiten.
Die Untersummen funktionieren wie eine laufende Summe.
Beispiel
Detail 1 $50
Detail 1 $50
Sub Total **$100**
Detail 2 $40
Detail 2 $40
Sub Total **$180**
Detail 3 -$50
Detail 3 $50
Sub Total **$180**
Detail 4 $20
Detail 4 $50
Sub Total **$250**
Die Höhe auf den vorherigen Unter insgesamt + die nächsten Detaillinien
Click this to see how the report looks
Click this to review the report verwandten
Können Sie einen Screenshot der Matrix hinzufügen Angabe der Zelle aus Sie den Aufruf der benutzerdefinierte Code Auch das erwartete Ergebnis könnte nützlich sein. –
können Sie die Funktion RunningValue() im ssrs-Bericht verwenden. – Kostya
Der runningValue() scheint nicht zu funktionieren. Ich könnte es falsch gebrauchen. –