Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
Nachdem wir nun lang und breit über das Erstellen von Berichten schwadroniert haben, sollten wir das Ganze auch einmal in der Praxis testen. Was liegt bei unserer bisher verwendeten Datenbank näher als der Versuch, eine komplette Rechnung zu drucken?
Als Datenquelle für den Report verwenden wir nicht die Direktverbindung zur Datenbank (über OleDbTreiber), obwohl dies der einfachste und schnellste Weg wäre.
Ganz im Sinn der .NET-Philosophie wollen wir den Report an ein typisiertes DataSet »anklemmen«. Der Vorteil: woher die Daten aus dem DataSet stammen kann uns hier egal sein, auch ein Webdienst könnte diese per Methodenaufruf liefern.
Wer jetzt auf die abwegige Idee verfällt, die Datenbankstruktur im DataSet abzubilden und die aus vier Tabellen bestehenden Rechnungsdaten (Artikel, Bestellungen, Bestelldetails, Kunden) im Report zu verwenden, der sollte dieses Szenario unter den realen Bedingungen einer Firma (Tausende Datensätze je Tabelle!) noch einmal überdenken. Schon mit den Datensätzen der mitgelieferten Beispieldatenbank dauert das Anzeigen eines so erstellten Berichts zirka 4–5 Minuten, ein Wert, der wohl niemals praxistauglich sein wird.