Wie man einen PDF aus einer eingebetteten Berichtsdefinition ohne Server oder UI generieren?

StackOverflow https://stackoverflow.com/questions/138203

  •  02-07-2019
  •  | 
  •  

Frage

Ist es möglich, für eine eigenständige ausführbare Datei einen Bericht und gibt es als PDF (oder einer der anderen Exportoptionen zur Verfügung aus dem Report Viewer) zu erzeugen, ohne die Reportviewer-Steuerelement angezeigt wird?

Die Berichtsdefinition sollte in der ausführbaren Datei eingebettet sein und soll nicht den Reporting Service Web-Service nutzen.

War es hilfreich?

Lösung

Eigentlich brauchen Sie kein Reportüberhaupt, können Sie direkt instanziiert und eine LocalReport verwenden:

LocalReport report = new LocalReport();
report.ReportPath = "templatepath";
// or use file from resource with report.ReportEmbeddedResource

// add parameters, datasource, etc.

Warning[] warnings;
string[] streamids;
string mimeType;
string encoding;
string filenameExtension;

byte[] bytes;
bytes =report.Render("PDF", null, out mimeType, out encoding, out filenameExtension, out streamids, out warnings);

// save byte[] to file with FileStream or something else

Andere Tipps

Sie müssen die Kontrolle nicht zeigen selbst.

ReportViewer rv = new ReportViewer();
rv.LocalReport.ReportPath = "templatepath";
// or use file from resource with rv.LocalReport.ReportEmbeddedResource

// add parameters, datasource, etc.

Warning[] warnings;
string[] streamids;
string mimeType;
string encoding;
string filenameExtension;

byte[] bytes;
bytes = rv.LocalReport.Render("PDF", null, out mimeType, out encoding, out filenameExtension, out streamids, out warnings);

// save byte[] to file with FileStream or something else

Allerdings kann es nur PDF und XLS macht (als Reportviewer-Steuerelement nicht zu Word und andere als Reportig Dienst exportieren kann).

ich habe vergessen zu erwähnen, dass der obige Code C #, .NET Framework und Reportviewer-Steuerelement verwenden. Schauen Sie sich GotReportViewer für einen Schnellstart.

Können Sie sich einen RDLC Bericht direkt zu pdf mit Parameter übergeben? Ich habe zwei Dropdownlists, die ich mit meinem Bericht ziehen. Ich kann nicht die Parameter an der Arbeit, wenn automatisch in PDF exportieren. Hier ist der Fehler, den ich bekommen: Microsoft.ReportingServices.ReportProcessing.ReportProcessingException. Eine oder mehrere Parameter erforderlich, um den Bericht auszuführen, wird nicht benannt

Die Dropdownlists arbeiten, wenn ich das Reportviewer verwenden, aber ich möchte diesen Schritt überspringen. Ich kann meine Daten auch direkt in einem PDF-gehen, wenn es keine Parameter hat. Meine Dropdownlists genannt ddlyear und ddlmonth.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top