Wie man die besten 10 Verkäufe in SSRS 2012 erhält

7

Ich nehme die Top 10 des Verkaufsvolumens nach Produktkategorien in SSRS 2012 ein. Ich brauche die Summe dieser Top 10, aber es zeigt die komplette Summe. Ich kann das nicht auf Datensatzebene tun, da ich den vollständigen Datensatz für andere Teile im Bericht benötige. Ich habe versucht, die Lösung wie in MSDNlink , aber das half auch nicht. Vielen Dank im Voraus.

    
KrazzyNefarious 24.06.2013, 12:14
quelle

3 Antworten

15

Diese Art von Ansatz funktioniert tatsächlich sehr gut.

Sie haben keine Vorstellung davon, wie Ihre Daten / Metadaten sind, aber die Konzepte können mit einem einfachen Beispiel erklärt werden. Berücksichtigen Sie die folgenden Daten:

Wir werden basierend darauf einen einfachen Bericht erstellen, gruppiert nach der Spalte grp :

Sortieren Sie die Gruppen nach dem Gesamtwert, vom höchsten zum niedrigsten Wert:

Um den laufenden Rang und die laufende Summe zu erhalten, verwenden wir RunningValue Funktion.

Um den Gruppenrang zu erhalten, benutze:

%Vor%

Um den laufenden Gesamtwert zu erhalten, verwenden Sie:

%Vor%

Schließlich müssen wir eine Summe für die Top N Werte anzeigen; In diesem Fall zeige ich die Top 2 an.

Verwenden Sie für die zweite Gruppendetailzeile den folgenden Zeilensichtbarkeit -Ausdruck:

%Vor%

Dies bedeutet, dass diese Zeile nur angezeigt wird, wenn zwei Gruppen vorhanden waren, d. h. oben 2. Sie können den Wert nach Bedarf ändern.

Dies zeigt uns eine Gesamtzeile nach Bedarf:

Sie müssen diese Konzepte auf Ihre Daten anwenden. Wenn Sie immer noch Probleme haben, schlage ich vor, dass Sie versuchen, meine Ergebnisse mit den oben genannten Daten / Code zu replizieren, um sicherzustellen, dass Sie alle beteiligten Konzepte verstehen.

Nach dem Kommentar bearbeiten:

Für Situationen, in denen weniger als N Gruppen vorhanden sind, Sie aber dennoch die letzte Summe anzeigen möchten, müssen Sie dem Zeilensichtbarkeit -Element der obersten N Zeile eine zusätzliche Überprüfung hinzufügen, beispielsweise:

%Vor%

Nun wird der Ausdruck für die zehnte Zeile angezeigt, oder wenn die Gesamtzahl der Gruppen im Datensatz kleiner als 10 ist, wird er für die letzte Gruppenzeile angezeigt.

Es ist ein bisschen komplizierter, aber es hat für mich in der Vergangenheit funktioniert; Abhängig von Ihren Einstellungen für Daten und Berichte müssen Sie möglicherweise etwas mit Scope herumspielen, damit es in Ihrer Umgebung funktioniert.

    
Ian Preston 24.06.2013, 13:41
quelle
6

Wenn Sie nur eine Summe für die Top 10 und nicht für eine laufende Summe benötigen, können Sie Ihre Tabelle nach TopN ProductCategory filtern und Ihre ProductCategory-Gruppe nach SalesVolume Z nach A sortieren.

Zum Beispiel habe ich eine Tabelle mit Kundenaufträgen und Zwischensummen. Ich zeige die Top 10 der höchsten Gesamtanzahl

Ich sortiere nach SalesOrderID-Gruppe absteigend nach meinem Wert (TotalDue). Dann habe ich meinen Tisch gefiltert, so dass nur die Top 10 SalesOrderID angezeigt wird.

Wenn Sie viele Daten haben, müssen Sie möglicherweise sehen, wie dies funktioniert, da ich denke, dass der Tabellenfilter zur Laufzeit auftritt.

    
mmarie 24.06.2013 19:44
quelle
0

Ich glaube, ich habe einen einfachen Weg gefunden, das zu tun. Ich hatte viele "Summen" in meinem Bericht und ich konnte nicht verstehen, wie Sie geantwortet haben. Der Weg, den ich gefunden habe, war, eine Elterngruppe der Gruppe Details zu erstellen und eine Gesamtzeile außerhalb der Details hinzuzufügen. Dann versteckte ich die Detais-Gruppe und die gesamte Gruppe tat einfach die Summen und in den Gruppeneigenschaften musste nur die letzte Summe der obersten N Reihen gefiltert werden und nach Z nach A der Summe sortiert werden. All dies hat gut funktioniert und wurde in den Konzernimmobilien gemacht! In den tablix-Eigenschaften zeigten nur 3 oder 4 Zeilen ...

    
ALourenço 20.10.2015 13:39
quelle