Laden...
E
ernst.lalla myCSharp.de - Member
Techn. Angestellter Norddeutschland Dabei seit 13.10.2010 4 Beiträge
Benutzerbeschreibung

Forenbeiträge von ernst.lalla Ingesamt 4 Beiträge

10.01.2011 - 21:31 Uhr

Hallo,

ich programiere seit 1/2 Jahr CSharp.
Ich habe vorher mit Access Datenbankanwendungen programiert.

Jetzt suche ich dringend ein Buch für Einsteiger über Reporting Service (nicht Crystal Reports).
Ich habe mir das 'Microsoft SQL Server 2008 Reporting Services - Das Praxisbuch' gekauft. Leider ist das nicht das Richtige.

Im 'Datenbank-Programmierung mit Visua C# 2010' sind die Reports schon etwas beschrieben, aber leider nicht ausreichend, finde ich.

Speziell suche ich solche Dinge wie zeichnen in Berichten (Balkendiagramm mit Linie drüber), Berichte in PDF ausgeben ohne den Bericht zu öffnen,
mehrere Berichte in einem PDF ausgeben.

Kann jemand sagen ob es solch Buch gibt und wenn ja welches?
Es sollte in deutsch sein, mein Englisch reicht mal gerade für einen Urlaub.

Vielen Dank im Voraus

Ernst

14.10.2010 - 10:53 Uhr

Hallo,

ich habe mir mal ein DataGridView auf mein Form und eines auf den Breicht erstellt.
Diese habe ich mit BerichtsdatenDataSet verbunden.

Nach dem ich den Bericht aufrude, ist im DataGrid auf dem Form der Datensatz vorhanden, auf dem Bericht nicht.

Ist mir noch zu helfen?

13.10.2010 - 23:25 Uhr

Hallo Balaban_s,

leider habe ich dort keine Lösung gefunden.
Ich habe das meiste genau so gemacht...habe ich ja auch beschrieben.
Ich benutze nur keinen Assistenten zum erstellen einer Verbindung.

Hmmm

Gruß Ernst

13.10.2010 - 22:54 Uhr

Hallo,

ich bin nicht nur hier neu, sonder auch beim programieren von C#
Ich programmiere auf VS 2010 und WinXP
Ich habe seit 2004 Datenbanken mit Access programiert.
Jetzt bin ich dabei, meine wichtigen Datenbanken umzustellen.
Was ich bisher über C#-Progamierung weiß, hat mir mein bester Freund beigebracht. Weiter benutze ich das Buch Datenbankprogramierung mit C# von MS.

Mein erstes Programm läuft auch schon ganz gut.

Nun bin ich bei den Berichten angekommen. Oder vielmehr stecke ich hier gewaltig fest.

Also, folgende Schritte habe ich gemacht:

  • ein DataSet (BerichtsdatenDataSet.xsd) zum Projekt hinzugefügt
  • mit dem Designer eine DataTable(dtDienstreise) zum DataSet hinzugefügt
  • diverse Spalten hinzugefügt, alle System.String
  • bei allen die Eigenschaft 'DefaultValue' <DBNull> gelöscht
  • einen Bericht 'Report_Dienstreise.rdlc' dem Projekt hinzugefügt
  • unter Berichtsdaten/Neu/DataSet Datenquelle:'BerichtsdatenDataSet' ausgewählt
    Verfügbare Datasets: 'dtDienstreise' und Name: 'Dienstreise_DataSet
  • dann habe ich ein Textfeld mit der Überschrift angelegt "ungebunden"
  • zur Probe habe ich nur ein Feld aus der dtDienstreise auf den Bericht gezogen
  • ein neues Form 'Report_Form_Dienstreise' erstellt
  • aus der Toolbox/Berichterstellung den ReportViewer auf das Form gezogen
  • bei den ReprotViewer-Aufgaben (oben rechts) den Bericht ausgewäht
  • unter Datenquellen noch die Datenquelleninstanz unter 'weitere Datenquellen' ausgehählt

jetzt hat mir die IE ein 'DataSet' und eine BindingSource unten an das BerichtsForm geschrieben.

Im Form, in dem ich den Bericht per Button aufrufen möchte, habe ich folgenden Code:

DataTable dtDienstreise = BerichtsdatenDataSet.dtDienstreise.Clone();

DataRow drTemp;
drTemp = dtDienstreise.NewRow();
...
HIER FÜLLE ICH DIE FELDER
...
dtDienstreise.Rows.Add(drTemp);

BerichtsdatenDataSet.dtDienstreise.Clear();
BerichtsdatenDataSet.dtDienstreise.Merge(dtDienstreise);

Report_Form_Dienstreise reiseBericht = new Report_Form_Dienstreise(BerichtsdatenDataSet.dtDienstreise);
reiseBericht.Show(this);

Im Report_Form_Dienstreise.cs habe ich folgenden Code:

using...

public partial class Report_Form_Dienstreise : Form
{
private DataTable dt;

public Report_Form_Dienstreise(DataTable dt)
{
this.dt = dt;

InitializeComponent();
}

private void Report_Form_Dienstreise_Load(object sender, EventArgs e)
{
this.reportViewer1.RefreshReport();
}
}

Was soll ich sagen. Der Bericht ist schon wunderschön 😕
Leider ist nur die Überschrift zu sehen.
Es ist nur ein Datansatz in der dtDienstreise, wenn ich den Code unterbreche und auf die Lupe klicke, kann ich den DS auch sehen.

Auf dem Bericht wird nicht angezeigt. Weder wenn ich die Spalten direct auf den Bericht ziehe, noch wenn ich eine Liste nutze um sie anzuzeigen.
Ach, wenn ich die Felder direkt auf den Bericht ziehe, steht im 'Ausdruck':
=First(Fields!Antragsnr.Value, "Dienstreise_DataSet";)
wobei Fields!Antragsnr.Value rot unterstrichen ist.
X(
Ich weiß nicht mehr weiter.

Hat jemand eine Ahnung was ich falsch mache?

Vielen Dank im Voraus
Ernst