Um den im letzten Post erstellten Bericht auch anderen Anwendern zur Verfügung zu stellen, muss dieser auf den Server geladen werden. Der Upload kann entweder über das Webinterface oder was aus meiner Sicht komfortabler ist, über iReport erfolgen. Der Upload erfolgt via HTTP und ist somit auch gut über Firewallgrenzen hinweg durchführbar.
Wir starten mit der Anlage einer neuen Serververbindung. Hierfür wird lediglich die URL des Servers sowie Username und Passwort des berechtigten Benutzers benötigt. Default-User des JasperServers ist jasperadmin mit gleichlautendem Passwort.
Nach Speicherung kann sofort auf die Ordner des Servers zugegriffen und entsprechende Aktionen via Kontextmenü ausgeführt werden.
So erfolgt dann auch gleich die Anlage der neuen Report-Unit, was den logischen Container des Reports mit Bildern, Datenbankverbindung und möglichen Parametern beschreibt.
Zur Angabe des Report Namens und einer möglichen Beschreibung muss noch die entsprechende Datenbankverbindung konfiguriert werden. Hier besteht die Möglichkeit eine bereits im Repository definierte Verbindung auszuwählen oder entsprechend anzulegen. Für den Test empfiehlt sich die Anlage einer eigenen Verbindung durch Kopie der lokalen Einstellungen.
Nach Speicherung des Reports ist dieser sofort im Webinterface sichtbar und kann dort via Klick gestartet werden. Hier kann das Ergebnis als PDF heruntergeladen werden.
Der nächste Post widmet sich der optischen Verschönerung des Reports um ihn auch für die Weitergabe an Dritte fit zu machen.
NETWAYS Blog
Jasper Reporting – iReport
Im letzten Post bin ich ja bereits detailliert auf die Installation des JasperServer eingegangen, welcher für die Aufbereitung und Versendung der Berichte zuständig ist. Da die aktuelle Community Version noch nicht über den Ad Hoc-Report Builder der Professional Version verfügt, was jedoch für Anfang nächstes Jahr geplant sein soll, ist noch ein entsprechendes Werkzeug zur Erzeugung der Reports notwendig. Hier kommt das Werkzeug iReport zum Einsatz.
iReport kann, wie auch die Server-Komponente, bei JasperForge.org heruntergeladen werden und ist, da generisch, für alle gängigen Plattformen verfügbar. Nach Entpacken des Archives muss lediglich die ausführbare Datei gestartet werden und schon kann es losgehen.
Nach Erstellung eines neuen Reports im Hauptmenü, erhält entsteht eine Übersicht des neuen Reports und seiner Attribute. Klar zu erkennen ist im Editor bereits die Unterteilung in verschiedene Bereiche, den so genannten Bändern, welche für die spätere Anzeige und Wiederholung von Informationen bei der Ausführung verantwortlich sind.
Die Anbindung an ein Datenbanksystem setzt die Erzeugung einer entsprechende Datasource voraus, was mit Hilfe des Container-Buttons erfolgen kann. Der Zugriff kann auf verschiedene Datenquellen erfolgen, jedoch beschränken wir uns in den nachfolgenden Beispielen auf den Datenbankzugriff via SQL.
Nach erfolgreichem Test der Datenbankanbindung kann mit Hilfe des Statement-Buttons neben dem Preview Bereich das entsprechende Statement mit dem Query-Builder erzeugt oder einfach eingegeben werden.
[code lang=“sql“]
select
host_object_id,
display_name,
address
from nagios_hosts
where instance_id = 1
[/code]
Unser Beispielstatement ermittelt lediglich die Hostinformationen aus der NDO-Datenbank.
Nach Validierung und Speicherung des Statements stehen die selektierten Felder im Bereich des Report Inspectors zur Verfügung und können via Drag&Drop in den entsprechenden Report Bändern platziert werden. Mit Hilfe von Formen und Labels aus der Palette kann der Report noch um statische Elemente ergänzt werden.
Via Preview kann das Ergebnis sofort geprüft werden und beschleunigt so den Entwicklungsprozess erheblich.
Der Beispielreport findet sich auch in unserem Demo-System und auf netways.org.
Der nächste Post beschreibt den Upload des Berichts auf den Server.