Aggregation / Statistiken

 

Das Aggregieren von Daten erfolgt idealerweise über die Aggregatsfunktionen, z.B. Sum(), Count(), Avg(). Diese verwenden Sie dann in Gruppenfußzeilen oder Fußzeilen und setzen die jeweilige Tabellenobjekt-Eigenschaft "Datenzeilen unterdrücken" auf "True", dadurch werden dann eben nur Fußzeilen/Gruppenfußzeilen angezeigt. Durch diese Option können Sie Summenzeilen ausgeben und dadurch interessante Statistiken erstellen.

Man darf dabei eben nicht die "Darstellungsbedingung" zum Ausblenden der Datenzeilen verwenden, denn dann wird auch nicht summiert oder sonst wie aggregiert. Bei Verwendung von Summenvariablen ist insbesondere die Option "Summierung forcieren" sehr nützlich damit Summen auch dann berechnet werden, wenn eine Datenzeile nicht gedruckt wird.

 

Nehmen wir an, Sie möchten den Umsatz pro Land ausgeben:

image227_195

Abbildung 6.59: Statistiken mit Fußzeilen erstellen

Gehen Sie wie folgt vor:

1.  Erstellen Sie im Berichtscontainer ein neues Element und wählen als Objekttyp "Tabelle".

2.  Im folgenden Dialog wählen Sie nun die Datenquelle aus. Es werden alle zur Verfügung stehenden Tabellen hierarchisch angezeigt, d.h. unter den Tabellen finden Sie die jeweils relational verknüpften Tabellen.

Für eine Umsatzauswertung je Land wählen Sie z.B. die Tabelle "Orders > Order_Details" damit beide Tabellen zur Verfügung stehen. Die Tabelle "Customers" ist 1:1-relational mit der Tabelle "Orders" verknüpft, daher müssen Sie diese nicht auswählen. In der Tabelle "Order_Details" ist der Umsatz gespeichert.

 

image227_196

Abbildung 6.60: Hierarchische Tabellen für Statistiken

3.  In der Tabelle "Orders.Order_Details" erstellen Sie eine Datenzeile mit dem Feld "OrderID". Die Datenzeile wird zwar nicht ausgegeben (da wir sie unterdrücken), aber es wird ein Feld benötigt, damit die Tabelle überhaupt gedruckt wird.

4.  Als Fußzeile definieren Sie die eigentliche Statistik, d.h. in der 1. Spalte den Ländernamen und in der 2. Spalte summieren Sie den Umsatz. Diesen berechnen Sie erneut über die Formel "Sum(Order_Details.Quantity * Order_Details.UnitPrice)".

5.  In der Tabelle "Orders" erstellen Sie eine Datenzeile mit dem Feld "Country" aus der verknüpften Tabelle "Customers". Die Datenzeile wird zwar nicht ausgegeben (da wir sie unterdrücken), aber es wird ein Feld benötigt, damit die Tabelle überhaupt gedruckt wird

6.  Als Fußzeile definieren Sie die Gesamtsumme über alle Länder, d.h. in der 1. Spalte den Text "Gesamt" und in der 2. Spalte summieren Sie erneut den Umsatz.

image227_197

Abbildung 6.61: Fußzeilen für Statistik erstellen

7.  Nun selektieren Sie im Toolfenster "Objekte" die Tabelle "Orders" und setzen die Eigenschaft "Datenzeilen > Datenzeilen unterdrücken" auf "Ja".

8.  Selektieren Sie nun auch die Tabelle "Order_Details" und setzen auch hier die Tabellen-Eigenschaft "Datenzeilen > Datenzeilen unterdrücken" auf "Ja".

 

image227_198

Abbildung 6.62: Datenzeilen unterdrücken für Statistiken

9.  Die Statistik ist fertig (siehe Abbildung 6.59).