André Minhorst, Duisburg
Berichte sind das letzte Glied in der Kette von Prozessen, die sich von der Eingabe von Daten über die Verarbeitung bis hin zur mundgerechten Aufbereitung für die Ausgabe auf dem Drucker erstreckt. Damit die Daten auch den erwünschten Nährwert haben, müssen Sie sinnvoll sortiert und/oder gruppiert werden. Im vorliegenden Beitrag erfahren Sie, wie Sie einem Bericht Sortierungen und Gruppierungen hinzufügen. Als Beispiel dient dabei die Ausgabe einer Einnahme-überschussrechnung.
Berichte sortieren und Berichte gruppieren sind zwei wichtige Funktionen für die Darstellung und Auswertung von Daten. Während Sortierungen sich auf die Reihenfolge von Daten auswirken, können Sie mit Gruppierungen bestimmte Daten zusammenfassen, um beispielsweise Berechnungen von Summen oder Mittelwerten durchzuführen.
Sortieren in Berichten
Sie können die Daten eines Berichts nach bis zu zehn Kriterien sortieren. Dabei werden eventuell in der zugrunde liegenden Tabelle oder Abfrage festgelegte Sortierungen übergangen.
Gruppieren in Berichten
Gruppierungen sorgen sowohl für eine optische als auch für eine funktionelle Zusammenfassung von Daten. Gruppierte Daten werden innerhalb des Berichtes zusammenhängend dargestellt und können als Grundlage für die unterschiedlichsten Berechnungen dienen. Es können maximal zehn Gruppierungsebenen verwendet werden.
Hinweis
Als Beispieldatenbank dient die Musterlösung zum Beitrag Einnahme-überschussrechnung mit Access in der vorliegenden Ausgabe von Access im Unternehmen. Sie finden die Datenbank auf der beiliegenden Heft-CD für Access 97 (Einnahme-überschussrechnung97.mdb) und Access 2000 (Einnahme-überschussrechnung2000.mdb).
Hinweis
Die Datenbank enthält eine Tabelle namens tblGeschaeftsvorfaelle, die ausreichend Möglichkeiten für den Einsatz von Sortierungen und Gruppierungen bietet. Sie können die Datensätze dieser Tabelle nach den folgenden Kriterien sortieren und gruppieren:
Datenherkunft des Beispielberichts
Als Datenherkunft des Berichts dient die Abfrage qryRepAuswertung. Die Abfrage ist wie in Bild 1 aufgebaut.
Neben den dort abgebildeten Feldern enthält sie noch einige weitere Felder, deren Feldnamen und Feldinhalte, die teilweise aus Funktionen bestehen, in Tab. 1 aufgeführt sind.
Bild 1: Datenherkunft des Berichts
Bild 2: Die Abfrage qryRepAuswertung in der Datenblattansicht
Die durch die Abfrage aufbereiteten Daten sehen beispielsweise wie in Bild 2 aus.
Praxis-Tipp
Verwenden Sie im Abfrageentwurf das Eigenschaftsfenster der Abfrage, um für die Eigenschaft Beschriftung Werte einzugeben, die besser lesbar und möglichst kürzer sind als die verwendeten – zum Beispiel Rech.-Nr. statt Rechnungsnummer. Die hier verwendeten Bezeichnungen werden auch in Formularen und Berichten, denen die Abfrage als Datenherkunft dient, als Standardwert für die Beschriftungsfelder verwendet.
Anlegen des Berichtes
Das Anlegen des eigentlichen Berichtes erfolgt in den nachfolgend beschriebenen Schritten:
Feldname |
Feldinhalt |
UmsatzEingangNetto |
ZCurrency(Wenn([GeschaeftsvorfallartID]=1;[Umsatz];0)) |
UmsatzAusgangNetto |
ZCurrency(Wenn([GeschaeftsvorfallartID]=2;[Umsatz];0)) |
Umsatzsteuer |
ZCurrency(Wenn([GeschaeftsvorfallartID]=1;[Umsatz]*[Mehrwertsteuersatz];0)) |
Vorsteuer |
ZCurrency(Wenn([GeschaeftsvorfallartID]=2;[Umsatz]*[Mehrwertsteuersatz];0)) |
UmsatzEingangBrutto |
ZCurrency(Wenn([GeschaeftsvorfallartID]=1;[Umsatz]*(1+[Mehrwertsteuersatz]);0)) |
UmsatzAusgangBrutto |
ZCurrency(Wenn([GeschaeftsvorfallartID]=2;[Umsatz]*(1+[Mehrwertsteuersatz]);0)) |
GeschaeftsvorfallartID |
GeschaeftsvorfallartID |
Tab. 1: Felder der Abfrage qryRepAuswertung
Bild 3: Die Rohfassung des Berichts in der Entwurfsansicht …
Bild 4: … und in der Vorschau
Der Bericht sollte nun etwa wie in Bild 3 aussehen. Die Vorschauansicht zeigt nun alle vorhandenen Geschäftsvorfälle in der in der Abfrage definierten Reihenfolge an (siehe Bild 4). Neben den Feldern im Detailbereich enthält der Bericht im Berichtsfuß sechs Felder zur Anzeige der Summe der Beträge. Diese enthalten jeweils den folgenden Ausdruck, wobei <Feldname> für die Felder EingangNetto, EingangBrutto und so weiter steht:
Ausdruck =Summe([<Feldname>])
Feintuning
Der Bericht zeigt für jeden Geschäftsvorfall jeweils Nettoeingang, Nettoausgang, Bruttoeingang, Bruttoausgang, Vorsteuer und Umsatzsteuer an. Abhängig davon, ob es sich bei dem Geschäftsvorfall um einen Eingang oder einen Ausgang handelt, enthalten immer nur drei der sechs Felder Werte ungleich EUR 0,00. Zur besseren Lesbarkeit sollen Felder mit dem Wert EUR 0,00 keinen Inhalt anzeigen.