2010-02-18 17 views
8

Ich möchte einen Bericht erstellen, entweder mit Crystal Reports oder RDLC, spielt keine Rolle. Ich kann alle Datenquellen als eine Reihe von dynamisch generierten Textfeldern usw. zusammenstellen, aber wie kann ich das zu einem Bericht hinzufügen?C# Bericht programmgesteuert erstellen

ZB ich möchte Kundenname und alle ihre bestellten Artikel in einem Bericht. Jetzt kann ich alle Informationen in einem Array sammeln ... wie würde ich das dann in einen Crystal Report einfügen?

Alle guten Einführungen, die Nicht-Assistenten für Crystal Reports abdecken, wären erstaunlich.

+0

Warum brauchen Sie RDLC in Ihrem Beispiel? – Rookian

+0

Ich bin nicht besonders - nur zu fragen, wie es geht. Ich muss im Grunde nur einen benutzerdefinierten Bericht erstellen, ähnlich wie bei Access. –

Antwort

3

Jede Datenquelle Ihres Berichts hat einen Namen (Menü Bericht-> Datenquellen, kann nicht genau sein, weil mein vs ist nicht auf Englisch).

Weisen Sie darauf hin, dass einer der Namen Ihrer Datenquelle prj_folder_classSample ist und classSample eine Klasse Ihres Projekts ist. Dann müssen Sie dem Bericht eine Liste hinzufügen.

Machen wir es.

List<classSanple> lst = new List<classSample> 
lst.Add(...) //Add various instances of classSample 
BindingSource thisIsABindingSource = new BindingSource(); 
thisIsABindingSource.DataSource = lst; 
reportDataSource rds = new ReportDataSource("prj_folder_classSample", thisIsABindingSource); 

ReportViewer1.ProcessingMode = ProcessingMode.Local; 
ReportViewer1.LocalReport.EnableExternalImages = true; 
ReportViewer1.LocalReport.ReportEmbeddedResource = "YourProject.Folder.reportName.rdlc"; 
ReportViewer1.LocalReport.DataSources.Add(rds) 

Ich mache es auf diese Weise. Hoffnung Es hilft dir.

+0

Das sieht gut aus und alles, aber wie würde ich dann die Anzeige des Berichts ändern - wo Dinge angezeigt werden usw. –

+0

Gehen Sie in einem Textfeld im Berichts-Designer, suchen Sie nach der Eigenschaft namens Wert. Die erste Option ist Ausdruck. Es öffnet sich ein Expression Designer. Es gibt einen Abschnitt mit dem Namen Categories, und darin befindet sich eine Kategorie (Datenmenge, Datenquelle oder etwas Ähnliches) mit allen Datenquellen, die Sie Ihrem Bericht hinzugefügt haben. Wählen Sie eine Datenquelle und ein Feld dieser Datenquelle aus, und das Feld zeigt dann den ausgewählten Wert in Runtime an. – Jonathan

+0

Also gibt es keine Möglichkeit, einfach Werte wie Report.Textbox1 = Form.Textbox1 zuzuordnen? –

-1

Sehen Sie sich diesen Link http://msdn.microsoft.com/en-us/library/cc281022.aspx#RDCE an, wenn Sie Ihren Bericht dynamisch ändern möchten. Diese Erweiterung wird kurz vor dem Rendern des Berichts aufgerufen. Microsoft hat ein RDL-Objektmodell erstellt. Mit diesem können Sie Ihren gesamten Bericht anpassen. Aber vielleicht brauchst du diese Erweiterung nicht. Probieren Sie zuerst Ihre Daten im Report Designer aus.

Verwandte Themen