Verbinden Sie zwei oder mehr Crystal Reports zu einer einzelnen PDF-Datei

8

Ich habe eine CheckBoxList. Wenn ich zwei oder mehr Werte auswähle, werden die CheckBoxList SelectedValues ​​einzeln als Parameter übergeben, und ich möchte den Crystal Report für jeden SelectedValue im PDF-Format erzeugen und das gesamte Crystal Report PDF-Format in ein Single PDF zusammenführen Format. Wie erreiche ich das? Bisher habe ich nur einen einzigen Crystal Report im PDF-Format erstellt. Im Folgenden habe ich den Code darüber, wie ich den Crystal Report im PDF Format erstellt habe, gegeben.

%Vor%

Aber der obige Code dient nur dazu, einen einzelnen PDF-Bericht gleichzeitig zu erzeugen. Aber ich möchte jeden CheckBoxList-Wert als Parameter übergeben. Wenn beispielsweise drei Werte ausgewählt sind, sollte der Crystal Report nacheinander alle drei Crystal Reports für den entsprechenden SelectedValue enthalten. Wie füge ich den gesamten PDF Crystal Report in einen Single Crystal Report ein? Ich muss dieses Problem lösen. Bitte hilf mir.

    
thevan 04.02.2011, 14:08
quelle

4 Antworten

8

Crystal Reports sind für , um eine Seite pro Datensatz zu generieren. Sie müssen nur eine Datenquelle mit mehreren Datenzeilen einrichten, diese Datenquelle für Ihren Bericht festlegen und sie direkt in pdf exportieren (bereits "zusammengeführt").

Zunächst müssen Sie eine Datenquelle mit Ihren Daten erstellen. Zum Beispiel können Sie ein DataSet mit dem Visual Studio Designer erstellen. Weitere Informationen hier .

Dann müssen Sie die Datenquelle für Ihren Crystal Report festlegen. Sie können es mit dem Crystal Designer tun.

Dann müssen Sie zur Laufzeit nur die Daten mit allen ausgewählten Kontrollkästchen ausfüllen und in das PDF-Format exportieren. Erstellen Sie innerhalb der Rpt-Datei eine Gruppe in der spezifischen Spalte, die sich auf die Kontrollkästchen bezieht, für die die Option "Seitenumbruch nach" in der Gruppe festgelegt wurde. Dadurch wird eine PDF-Datei generiert, die alle Ihre Datensätze enthält, 1 pro Seite.

Hier ist ein Beispielcode:

%Vor%

In diesem Code ist dsEtiqueta die ADO-Datenquelle, RptPath der Pfad zur * .rpt-Berichtsdatei und der PDF-Dateiname wird mit einem timeSpan generiert. Es ist, was ich in meinem Projekt brauchte, aber ich fühle mich frei, es an deine Bedürfnisse anzupassen.

Bearbeiten: Fertig mit CR für VS 2010.

    
Evren Kuzucuoglu 04.07.2011, 10:41
quelle
0

Schlechte Neuigkeiten: Weder .Net noch Crystal unterstützt das Zusammenführen von PDFs.

Gute Nachrichten: Verwenden Sie ExportToStream anstelle von ExportToHttpResponse , um jeden Bericht in seinen eigenen Speicherstrom zu schreiben. Verwenden Sie dann eine Bibliothek von Drittanbietern, um die beiden PDFs zu einem einzigen zusammenzuführen.

Hier sind einige Open-Source-Bibliotheken: Ссылка . Es gibt auch viele kommerzielle Bibliotheken, eine davon ist DynamicPDF

    
Mrchief 01.07.2011 15:36
quelle
0

Crystal kann das nicht tun. Sie können den Crystal-Export jedoch in einen Speicherstream exportieren. Anschließend können Sie auf dieser Site erfahren, wie Sie diese zusammenführen können: Ссылка

    
Icemanind 01.07.2011 15:49
quelle
0

Sie können dies mit Atalasoft dotImage (Disclaimer - Ich arbeite für Atalasoft und schrieb die meisten der PDF-Tools, einschließlich dieser). In der Tat ist es buchstäblich ein One-Liner:

%Vor%

Es gibt Varianten, die mit Streams oder Pfaden arbeiten, und Sie können die Ausgabe bei Bedarf verschlüsseln.

    
plinth 01.07.2011 15:54
quelle