SSRS-Code-Variable wird auf neue Seite zurückgesetzt

8

In SSRS 2008 versuche ich, eine SUMME von SUMMEN in einer Gruppe mit benutzerdefiniertem Code zu verwalten. Der Grund ist, dass ich eine Tabelle mit Daten habe, gruppiert und SUMs der Daten zurücksenden. Ich habe einen Filter auf die Gruppe, um Zeilen zu entfernen, wo Gruppensummen Null sind. Alles funktioniert, außer dass ich auf Probleme mit den Gruppensummen stoße - es sollte die sichtbaren Gruppensummen summieren, aber stattdessen den gesamten Datensatz summieren. Es gibt Unmengen von Artikeln darüber, wie man das umgehen kann, normalerweise mit benutzerdefiniertem Code. Ich habe benutzerdefinierte Funktionen und Variablen gemacht, um einen Zähler zu pflegen:

%Vor%

Im Grunde wird CalcMedTotal eine Summe einer Gruppe zugeführt und behält eine laufende Summe dieser Summe bei. Dann gebe ich in der Gruppen-Gesamtlinie ReturnMedSubtotal aus, die mir die akkumulierte Summe geben und sie für die nächste Gruppe zurücksetzen soll. Das funktioniert wirklich großartig, AUSSER - es setzt den GroupMedTotal-Wert bei jedem Seitenwechsel zurück. Ich habe keine explizit festgelegten Seitenumbrüche, es ist nur der natürliche Bruch im SSRS-Viewer. Und wenn ich die Ergebnisse nach Excel exportiere funktioniert alles und sieht korrekt aus.

Wenn ich Code.GroupMedTotal für jede Gruppenzeile ausgabe, sehe ich es korrekt zählen, und wenn eine Gruppe mehrere Seiten auf der nächsten Seite überspannt, wird GroupMedTotal zurückgesetzt und beginnt wieder von Null an zu zählen.

Irgendwelche Hilfe bei dem, was vor sich geht oder wie man das umgehen kann? Danke!

    
Peter Tirrell 06.05.2010, 21:01
quelle

3 Antworten

19

Endlich fand ich die Lösung selbst. Hier ist, fügen Sie Shared den Variablendeklarationen hinzu:

%Vor%     
John Strickler 30.09.2010, 15:56
quelle
5

Das Ändern der Variablen in Shared wird nicht funktionieren. Wenn Sie sie auf "shared" setzen, werden sie beim Export nach PDF / XLS / etc VERDOPPELT (da sie einfach zur vorhandenen Variablen hinzugefügt wird). Sie müssen so etwas tun:

%Vor%     
ScottRFrost 21.05.2013 19:57
quelle
-2

Ich weiß nicht wo du das verwendest. Aber in Ihrem Fall, wenn ich Sie wäre, verwende ich einfach einen einfachen Ausdruck, um die Sichtbarkeit von SUM

zu überprüfen

zum Beispiel würde ich Right Click On Sum Box \ Select Expression \ then use IIF(SUM <> 0, sum. "")

verwenden

Es hat überall funktioniert und wird nicht zurückgesetzt, in Ihrem Fall haben Sie eine Region und Ihr Code wird in jeder Region zurückgesetzt, so dass Sie mit seriosis konfrontiert werden, wenn Sie Ihren Weg nicht ändern.

    
Nasser Hadjloo 09.05.2010 04:46
quelle

Tags und Links