Zunächst möchte ich sagen, dass meine Frage etwas anders ist als einige ähnliche bereits auf SO, oder zumindest so unterschiedlich, dass andere Antworten mir nicht helfen. ZB: JasperReport parameters works in iReport but fails on JasperServer Es gibt andere, die sich mit Timestamp-Problemen beschäftigen, die mir auch nicht geholfen haben.Default-Parameterwerte funktionieren in iReport, aber nicht auf JasperServer
Ich bin ein Neuling für JasperReports. Die oben stehende Frage wurde gelöst, indem der Berichtsdefinition in iReport Eingabesteuerelemente hinzugefügt wurden, die dann nach JasperServer exportiert wurden. So viel funktioniert für mich.
Mein Problem ist mit einem Bericht mit einer Abfrage mit einem Timestamp-Parameter und einem Eingabesteuerelement. Ich habe dem Parameter den Standardwert java.sql.Timestamp (0) zugewiesen. Alles funktioniert gut, wenn ich iReport öffne und den Bericht mit der Option "Run on JasperServer" erzeuge, wird das Eingabesteuerelement mit dem richtigen Standardwert angezeigt. Wenn ich jedoch den gleichen Bericht über eine Browserverbindung ausführe, funktionieren die Standardwerte nicht. Die Steuerelemente werden 1969 mit den Standardwerten eines Datums angezeigt. Die Eingabesteuerelemente funktionieren weiterhin, können einen Wert eingeben und der Bericht wird ordnungsgemäß ausgeführt, aber die Steuerelemente für die Browsereingabe erhalten nicht den Standardwert.
Ich vermute, dass das Problem auftreten kann, da die Eingabesteuerelemente definiert sind als Datentyp von Datetime, nicht Timestamp. Wenn das der Fall ist, kann ich nicht herausfinden, warum die Standardwerte in den Eingabesteuerelementen in iReport funktionieren, aber nicht, wenn der Bericht vom Browser ausgeführt wird. Ich habe verschiedene Beiträge gelesen, in denen jemand gesagt hat, dass java.sql.Timestamp vor Version 3.5 von JasperServer nicht unterstützt wurde. Ich benutze die neueste Version, aber ich kann immer noch nicht herausfinden, wie man dem Server-Repository einen Zeitstempel-Typ hinzufügt (oder ob es notwendig ist, da die Dinge mit dem Datetime-Typ anders zu funktionieren scheinen als mein Problem mit den Standardwerten).
Welchen Wert möchten Sie als Standard haben? Anscheinend entspricht JasperServer dem Standard von 0 bis 1969. Was genau soll das sein? – Tom
Danke, wollte das aktuelle Datum als Standard. Mein Hauptproblem war, dass JasperServer es anders als iReport gehandhabt hat. War wahrscheinlich meine eigene Unerfahrenheit mit Java und JasperServer, die Dinge vermasselt hat. Ich habe Setup besser mit Datum Parameter, der für Eingabe Eingabeaufforderung verwendet wird, aber mit Abfrage mit einem String-Parameter (mit 'isForPrompting = "false"), die Standard-Ausdruck Zugriff auf die Datumssteuerungseingabe hat. Funktioniert sowohl in iReport als auch im Browser mit JasperServer. –