2009-06-23 4 views
8

Hat jemand eine Empfehlung für eine hervorragende Referenz auf Microsoft ReportViewer (VS 2008 Flavour), wenn im lokalen Modus verwendet? Ich benutze es gerade, aber Teile davon sind ein bisschen wie eine Black Box, also würde ich gerne das ganze Thema lesen.Verwenden von Unterberichten mit dem Microsoft ReportViewer-Steuerelement im lokalen Modus

Vor allem möchten Sie Sub-Berichte verwenden, um komplexere Eltern-Kind-Berichte anzuzeigen. Ich gehe davon aus, dass sie in einem ähnlichen Modus wie Crystal Reports arbeiten, mit dem ich einigermaßen vertraut bin.

Danke, Rob.

Antwort

4

ich mit dem Reportviewer-Steuerelement an einem Punkt gearbeitet und konnte einige gute Informationen bei http://www.gotreportviewer.com

+0

Vielen Dank für die Referenz - es sieht nützlich aus –

1
+0

Ja in dem Beispiel in den Beispielen und in den exemplarischen Vorgehensweisen kann ich nichts in Unterberichten im lokalen Modus sehen. Ich suchte nach dem Dokument, das oft in reinen Referenzbibliotheken fehlt - der Überblick und die Diskussion der Designprinzipien. Warum müssen Sie beispielsweise eine Tabelle oder eine Liste dort ablegen? Warum, wenn du es nicht machst, füge = First() um das Feld hinzu.Ich kenne die Antworten jetzt, aber es war eine Menge zu graben, um die Antworten zu finden. –

+0

@Rob: Danke. Wenn Sie einige der Antworten gefunden haben, sollten Sie vielleicht einige Artikel schreiben oder dazu beitragen, indem Sie hier auf SO Fragen beantworten oder auf http://social.msdn.microsoft.com/Forums/en-US/sqlreportingservices/ Fäden. Ich habe beispielsweise die ReportViewer-Steuerelemente nicht verwendet. Wie unterscheidet sich der lokale Modus? Warum unterscheiden sich Unterberichte bei der Verwendung des Steuerelements? Wenn Sie auf die harte Tour gelernt haben, können Sie vielleicht anderen helfen, dies zu vermeiden. Danke noch einmal. –

12

Der Link zu http://www.gotreportviewer.com ist ein guter einmal, aber es sieht wie Material auf lokale Unter Berichten und Reportviewer 2008 ist ein wenig spärlich und flächiges Gebiet erstreckt über die Netz. Es wäre ein Thema wert sein Bloggen über so werde ich :-)

Hier einige Schlagzeilen sind:

  1. A subreport ist ein völlig separater Bericht aber ist mit dem Master-Report mit dem Standard-Berichtsparameter Mechanismus verbunden . Der Hauptbericht ist so konfiguriert, dass er ein oder mehrere Felder (z. B. den Primärschlüssel) an den Unterbericht weitergibt. Der Unterbericht verwendet diesen Parameter normalerweise dann als Parameter für seine eigene Abfrage, um ein Dataset zu laden.
  2. Obwohl Sie beim Entwerfen möglicherweise eine Datenquelle für den Unterbericht definiert haben, wird diese in einem Masterbericht nicht verwendet. Stattdessen müssen Sie einen Handler für das SubreportProcessing-Ereignis implementieren. Für jeden Unterbericht, den Sie zu Ihrem Hauptbericht hinzufügen, wird derselbe Handler aufgerufen, damit Sie die an den Handler übergebenen Parameter abfragen können, um das zu ladende Dataset zu bestimmen.
  3. Der Ereignishandler wird für jeden Datensatz im Hauptbericht einmal aufgerufen. Wenn der Hauptbericht beispielsweise 200 Datensätze anzeigt, wird der Ereignishandler 200 Mal aufgerufen, aber jedes Mal mit einem anderen Parameter.
  4. Aus diesem Grund müssen Sie vorsichtig mit der Leistung sein. Der erste Bericht, den ich durchführte, hatte 2.000 Datensätze (vollkommen okay für einen flachen Bericht), aber jeder dieser 2.000 Datensätze hat 20 untergeordnete Datensätze für den Unterbericht abgerufen. Es dauerte einige Minuten, bevor der Bericht gerendert wurde.
  5. Wenn Sie Ihre Daten so strukturieren können, dass ein einzelnes Dataset mit Daten für Master und Unterbericht verwendet werden kann, haben verschachtelte Datenbereiche eine bessere Leistung - nur eine Abfrage gibt 2.000 Datensätze zurück, nicht 2.000 einzelne Abfragen. Siehe http://www.gotreportviewer.com/masterdetail/index.html

Prost, Rob.

Verwandte Themen