Nun, ich kenne ältere Versionen nicht, aber in JasperReports 4.5.1; Sie können zwei Textfelder definieren, die beide $V{PAGE_NUMBER}
Variablen enthalten. Die mit EvaluationTime: now
zeigt die aktuelle Seitennummer; der andere mit EvaluationTime: report
zeigt die Anzahl der gesamten Seiten an. Ein einfacher Trick funktioniert aber:)
Eigentlich ist es ein BUG! Und von Entwicklern bestätigt.
Siehe Link: Jaspis-Community-Bug-Tracker-Link
PAGE_COUNT wird nicht korrekt berechnet, wenn die Eigenschaft auf BAND verwendet wird: "Split Prevent"
Unsere Berichte sehen so aus:
Der erste Teil, interpretiert während der Seitengenerierung, gibt das # der aktuellen Seite ( evaluationTime="Now"
)
Der zweite Teil, der am Ende des Berichts interpretiert wird, gibt die Gesamtzahl der Seiten an ( evaluationTime="Report"
)
HTH
Die Lösung ist die folgende: Wir dürfen $ {V PAGE_NUMBER} + "/" + $ {V} PAGE_NUMBER nicht in dasselbe Feld einfügen.
Der richtige Weg ist, $ {V PAGE_NUMBER} in ein separates Feld und "/" + $ {V} PAGE_NUMBER in das andere Feld
zu setzenes funktioniert für mich
Entschuldigung für mein Englisch
Zusammenfassung: Um die Seitenzahl und die Seitenzahl in einem TextField zu haben.
Schritt 1: Erstellen Sie eine Variable, die die Nummer der aktuellen Seite angibt. Die Einstellungen: * Name: CURRENT_PAGE_NUMMER
Variablenklasse: Java.lang.Integer
Berechnung: nichts
Zurücksetzentyp: Keine
Inkrementart: Seite
Variablenausdruck: $ V {CURRENT_PAGE_NUMBER} == null? $ V {PAGE_NUMBER}: $ V {PAGE_NUMBER} +1
Schritt 2: TextField Einstellungen
Textfeld Ausdruck: "PAGE:" + $ V {CURRENT_PAGE_NUMBER} + "/" + $ V {PAGE_NUMBER}
Ausdrucksklasse: Java.lang.String
Auswertungszeit: Auto
Und das ist alles. Sie müssen nichts hinzufügen, um ein Ergebnis wie folgt zu erhalten: Page 1/3 | Seite 2/3 | Seite 3/3.
Tags und Links jasper-reports