Ich habe versucht, dies für eine Weile zu arbeiten, und alle Beispiel-Code, den ich gesehen habe, sind nicht ganz das, was ich mache.Übergeben von Parametern an Crystal Reports in C#
Ich habe ein Programm, das eine PDF-Datei eines Berichts zurückgibt, an den ich eine Datentabelle übergebe. Das funktioniert gut, außer dass ich ihm ein paar andere Parameter übergeben möchte (den Datumsbereich der Tabelle, Statistiken usw.) und ich kann es einfach nicht zum Laufen bringen. Mein Code sieht im Prinzip so aus.
ReportDocument myDataReport = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
myDataReport.Load(@"C:\Layouts\Report.rpt");
ParameterField myParam = new ParameterField();
ParameterDiscreteValue myDiscreteValue = new ParameterDiscreteValue();
myParam.ParameterFieldName = "MyParameter";
myDiscreteValue.Value = "Hello";
myParam.CurrentValues.Add(myDiscreteValue);
myDataReport.ParameterFields.Add(myParam);
myDataReport.SetDataSource(myDataTable);
Stream returnData = myDataReport.ExportToStream(PortableDocFormat);
myDataReport.Close();
return returnData;
Ich habe das Parameterfeld im rpt Dokument im Kristall hinzugefügt, muß ich etwas in der XSD-Datei in C# ändern, oder bin ich etwas ganz anderes fehle?
Vielen Dank, Andy.
Ja, das war es! Ich denke, ich habe diese Zeile schon einmal ausprobiert, aber ich habe die Datenquelle an der falschen Stelle gesetzt, als Sie darauf hingewiesen haben. Arbeitet jetzt kompromisslos, danke! –
@Andrew. Könnten Sie mir bitte sagen, wo Sie den Anruf an die DataSource gestellt haben? – Unlimited071
Setzen Sie SetParameterValue AFTER die Datenquelle asignation – Apocatastasis