Seite wählen

Jasper Reporting – Design Tips

von | Sep 15, 2009 | Development, Jasper Reporting, Serien

Jasper-ReportingBereits im letzten Post haben wir den Report auf den Server geladen, jedoch sieht dieser aktuell noch etwas spartanisch aus. Es lohnt sich meistens am Ende noch etwas Zeit in die optische Aufbereitung der Reports zu investieren. Schon alleine um die Akzeptanz beim Empfänger zu verbessern. Über Schrift, Farben und Formen hinweg bietet iReport im Palettenbereich eine Vielzahl an Möglichkeiten.
Wir starten mit dem Einfügen eines Logos. Dieses kann entweder via URL von einem Webserver geladen oder in das Jasper-Repository kopiert werden.post5_screen1 Der Upload via iReport erfolgt wie auch beim Bericht via Kontextmenü durch Anlage einer neuen Ressource. Wichtig ist, das als Typ Image verwendet wird, um Probleme bei der Einbindung auszuschliessen.
post5_screen2Anschließend kann über die Palette ein Bildobjekt im Report platziert werden. Falls das Bild auf dem Server bereits verfügbar ist, kann die Auswahl hier abgebrochen werden und als Expression folgendes eingetragen werden.

"repo:/reports/Images/Banner

Der Name muss hier mit dem entsprechenden Repositorynamen übereinstimmen und da wir uns in der Welt von Java bewegen ist die Unterscheidung zwischen Groß- und Kleinschreibung wichtig.
Oberhalb des Arbeitsbereiches oder bei den entsprechenden Objekten im Eigenschaftsbereich können nach Belieben Schriftart und -größe eingestellt werden.
Reports mit vielen Zeilen wirken schnell unübersichtlich. Daher empfielt es sich solche Textwüsten wenigstens mit abwechselnd dunklen und hellem Hintergrund zu unterlegen. Dies ist mit einem kleinem Kniff auch mit iReport möglich. Nach Einbindung eines farbigen Rechtecks im Detailband kann dieser abwechselnd zur Zeilennummer angezeigt werden. Hierfür muss man in die Eigenschaft “Print When Expression” folgendes einfügen:

new Boolean( $V{PAGE_COUNT}.intValue() % 2 ==0 )

post5_screen5Über das Palettenobjekt “Page X of Y” kann noch schnell ein Seitenzähler integriert werden und fertig! Hier wieder das Ergebnis als PDF und den Report als Download bei netways.org.
Im nächsten Post widmen wir uns der Übergabe von externen Parametern.

Bernd Erk
Bernd Erk
CEO

Bernd ist Geschäftsführer der NETWAYS Gruppe und verantwortet die Strategie und das Tagesgeschäft. Bei NETWAYS kümmert er sich eigentlich um alles, was andere nicht machen wollen oder können (meistens eher wollen). Darüber hinaus startete er früher das wöchentliche Lexware-Backup, welches er nun endlich automatisiert hat. So investiert er seine ganze Energie in den Rest der Truppe und versucht für kollektives Glück zu sorgen. In seiner Freizeit macht er mit sinnlosen Ideen seine Frau verrückt und...
Mehr Beiträge zum Thema Development | Jasper Reporting | Serien

Ansible – Loop over multiple tasks

The last time I wrote about Ansible and the possibility to use blocks to group multiple tasks. Which you can read here. Sadly this feature does not work with loop, so there is no clean way to loop over multiple tasks in a play without writing the same loop statement...

Daily business: der Editor vim

Es ist unerfreulich lange her, dass ich das erste Mal mit vim in Berührung kam -- anno 1997, um genau zu sein, während meiner ersten verzweifelten Gehversuche in Sachen S.u.S.E. Linux. Oder war das noch vi? So irgendwie habe ich das Tool über die Jahre dann hinter mir...

DevOpsDays Berlin cancelled

The DevOpsDays Berlin have been cancelled for this year due to Corona. "Though there were good arguments for running the conference, most of us felt uncomfortable to expose people to a potential danger that isn't fully understood yet", the organizers said. They...

Gitlab Johnyj12345 Hack

Yesterday we received the information that there is a new Gitlab "hack" which could affect older versions of Gitlab. If affected it will behave like this: The publicly visible procedure is always the same: Johny creates one or more issues that are linked with each...

Veranstaltungen

Dez 01

Icinga 2 Fundamentals Training | Online

Dezember 1 @ 09:00 - Dezember 4 @ 17:00
Dez 03

DevOps Meetup

Dezember 3 @ 17:30 - 20:30
Dez 08

Terraform mit OpenStack Training | Online

Dezember 8 @ 09:00 - Dezember 9 @ 17:00
Dez 08

Icinga 2 Advanced Training | Online

Dezember 8 @ 09:00 - Dezember 10 @ 17:00
Dez 15

GitLab Training | Online

Dezember 15 @ 09:00 - Dezember 16 @ 17:00