Bisher haben wir Berichte gebaut, die Daten aus verknüpften Tabellen über eine Gruppierung strukturieren – der Leser im Gruppenkopf, seine Ausleihen darunter. Das funktioniert tadellos, solange es eine Liste je Datensatz gibt. Sobald es zwei werden, bricht das Verfahren zusammen, und zwar so unauffällig, dass man es leicht übersieht. Wir bauen deshalb einen Steckbrief für Bücher – mit den Autoren und der Ausleihhistorie -, sehen zu, wie er scheitert, und lösen das Problem mit Unterberichten. Wie das gelingt, liest Du in diesem Artikel.
Beispieldatenbank
Die Beispiele dieses Artikels findest Du in der Datenbank BerichteBasics_UnterberichteEinsetzen.accdb.
Das Ziel: ein Steckbrief je Buch
Wir wollen einen Bericht, der für jedes Buch eine eigene Seite ausgibt. Ganz oben die Eckdaten – Titel, Verlag, Erscheinungsjahr, ISBN. Darunter die Autoren des Buchs mit ihrer jeweiligen Rolle. Und darunter die Ausleihhistorie: wer das Buch wann geliehen und wann zurückgebracht hat. Das Ergebnis, auf das wir hinarbeiten, zeigt Bild 1.
Bild 1: Der fertige Steckbrief – Buchdaten, Autoren und Ausleihen auf einer Seite
Auf den ersten Blick sind das drei Blöcke wie aus dem Lehrbuch. Auf den zweiten Blick steckt darin ein Problem, das sich mit den Mitteln der vorherigen Artikel nicht lösen lässt.
Der Versuch mit einer Abfrage
Naheliegend wäre, alle benötigten Tabellen in eine Abfrage zu packen und den Bericht wie gehabt nach BuchID zu gruppieren. Probieren wir es aus. Die Abfrage qryBuchAllesAufEinmal zeigt Bild 2 in der Entwurfsansicht.
Bild 2: Diese Abfrage vereint Autoren und Ausleihen – und liefert Unsinn für unsere Idee
Ein Blick in die Datenblattansicht genügt. Für ein Buch mit zwei Autoren und drei Ausleihen liefert die Abfrage nicht fünf Zeilen, sondern sechs – jede Kombination aus Autor und Ausleihe genau einmal (siehe Bild 3). Außerdem ist fraglich, wie man aus dieser Aufbereitung der Daten einen Bericht erzeugen soll, der in hierarchischer Form erst die Buchdaten und darunter jeweils die Autoren- und die Ausleihdaten liefern soll.
Bild 3: Zwei Autoren mal drei Ausleihen ergeben sechs Zeilen
Ein Bericht, eine Datensatzquelle
Der Fehler liegt nicht in der Abfrage. Er liegt in der Erwartung an sie.
Unser exklusives Angebot für Dich!
(Das Abo ist jederzeit monatlich kündbar)
Hier geht’s weiter →Die ersten 4 Wochen kostenlos testen – voller Zugriff auf alle Artikel, vollständigen Code und Beispieldatenbanken. Kein Risiko: Wenn es nicht passt, kündigst Du einfach innerhalb der ersten vier Wochen.
Oder hast Du eine konkrete Frage zu Deiner eigenen Access-Anwendung?
Vielleicht stellt Deine Anwendung Dich vor eine Herausforderung, zu der Du bisher keine Lösung findest. Schlechte Performance, kein ausreichender Zugriffsschutz, Du bist unsicher über Dein Datenmodell oder Dein Code liefert unerklärliche Fehler?
In unserem kostenlosen Access-Audit schaut sich André Minhorst persönlich gemeinsam mit Dir Deine Lösung per Zoom an – und zeigt Dir, wo Datenmodell, VBA-Code, Ergonomie und Sicherheit Optimierungspotenzial bieten.
Jetzt kostenloses Access-Audit anfordern →![Access [basics]](https://access-basics.de/wp-content/uploads/2021/02/logo400.png)


