2016-03-21 11 views
1

Ich muss Parameter an meinen JasperReport senden.JasperReport ... Was machst du Erst kompilieren oder füllen mit Parametern?

Kompiliere ich zuerst mit compileReport und dann die fillReport die Parameter übergeben oder muss ich Dinge in der umgekehrten Reihenfolge tun?

+1

Im Allgemeinen, es sei denn Sie sind dynamisch, die die Struktur des Berichts zu erzeugen, sollten Sie einmal kompilieren, vielleicht während Ihrer Anwendungen Zyklus bauen und einfach laden und füllen Sie es zur Laufzeit – MadProgrammer

+0

Wollen Sie meine Parameter zu setzen und rufen Sie die fillReport Methode, wenn Sie die Füllung angegeben haben? – Chetan

+1

Ziemlich viel ..... – MadProgrammer

Antwort

1

Kompilieren und Füllen Bericht sind zwei verschiedene Dinge.

über Kompilieren

Jasper Report normalerweise mit IDE-Tool wie iReport oder Jaspersoft Studio entwickelt (Sie können auch einen Notizblock verwenden können), der Bericht in einer Datei mit der Endung .jrxml gespeichert wird, bevor der Lauf .jrxml Sie müssen sie in eine .jasper Datei kompilieren (Sie können auch die Laufzeit kompilieren auf und halten nur die JasperReport Objekt)

es kann mit dem .java Datei verglichen werden, die müssen in .class Dateien kompiliert werden, bevor Sie das ausführen können Programm.

Weitere Informationen finden Sie unter:

How do I compile jrxml to get jasper?

Über Füllung

Füllung ist, wenn Sie Ihren Bericht Design mit Daten füllen, werden die Daten von einem JRDatasource oder einer Datenbank kommen kann Connection (Abfrage im Bericht) und eine Map<String,Object> Parameterkarte. Wenn Bericht gefüllt Sie erhalten ein JasperPrint Objekt (selbst kann diese gespeichert wird, Datei gleichen Berichts mehrfach zu vermeiden Füllung)

über Export

Der letzte Prozess in der Berichterstellung der Exportprozess ist, wo Sie exportieren die JasperPrint in Ihr gewünschtes Format pdf, Excel, HTML usw.

So lassen Sie uns zurück zu Ihrer ursprünglichen Frage.

Kompiliere ich zuerst mit compileReport?

Sie können, wenn Sie mögen, aber Sie tun nicht müssen, wenn Sie bereits Ihren Bericht zusammengestellt haben, in diesem Fall nur die kompilierte Bericht laden, die schneller ist.

JasperReport jasperReport = (JasperReport) JRLoader.loadObject(inputStream); 
+0

Dank ein Haufen ...... Erledigt viel Verwirrung !! – Chetan