Home › Forum › Nuclos Konfiguration › Reporting › Befehl für Jasperformular aufruf
- Dieses Thema hat 3 Antworten und 2 Teilnehmer, und wurde zuletzt aktualisiert vor 11 Jahre, 5 Monaten von
Claudia Mangstl.
-
AutorBeiträge
-
23 Dezember 2011 um 12:31 Uhr #4713
Martin Schwärzel
TeilnehmerHallo
Welche Befehle kann ich in einer Businessregel verwenden, um einen Jasperreport direkt auszudrucken. Reportquelle und Report sind in nuclos definiert und funktionieren.
Wie kann ich dabei Parameter aus dem Datensatz an den Report übergeben?
Danke für die Antwort.
Mein Ziel: Per Knopfdruck einen bestimmten Report auszudrucken.
gruss martin
27 Dezember 2011 um 14:08 Uhr #4715Claudia Mangstl
TeilnehmerHallo Martin,
folgende Aufrufe führen zum Ziel:
/**
* run report on server object
* @param reportName
* report name would be like "reportName_2010-06-01 12-05-00.pdf"
*/
Collection runPDFReport(String reportName)/**
* run report on server object
* @param reportName
* @param objectFieldForReportName (if set report name would be like "reportName_VALUE-OF-THIS-FIELD.pdf" otherwise "reportName.pdf")
* @param nameWithTimestamp (is set report name would be like "reportName_2010-06-01 12-05-00.pdf" otherwise "reportName.pdf"
* both, objectFieldForReportName and nameWithTimestamp could be combined!
*/
Collection runPDFReport(String reportName, String objectFieldForReportName, boolean nameWithTimestamp)/**
*
* @param reportName
* @param entity
* @param iObjectId
* @param objectFieldForReportName (if set report name would be like "reportName_VALUE-OF-THIS-FIELD.pdf" otherwise "reportName.pdf")
* @param nameWithTimestamp (is set report name would be like "reportName_2010-06-01 12-05-00.pdf" otherwise "reportName.pdf"
* both, objectFieldForReportName and nameWithTimestamp could be combined!
*/
Collection runPDFReport(String reportName, String entity, Integer iObjectId, String objectFieldForReportName, boolean nameWithTimestamp)Die Parameter, sofern in der Datenquelle angegeben, werden dann bei der Ausführung abgefragt.
Viele Grüße,
Claudia27 Dezember 2011 um 15:35 Uhr #4716Martin Schwärzel
TeilnehmerHallo Claudia
Danke für die Antwort. Habe inzwischen in der API die Befehle gefunden.
Nun habe ich aber ein komisches Verhalten.
Meine Zeile
Collection runPDFReport ("Kundenbestellung");
wird bei der Überprüfung mit dem Fehler 9:36: „;“ expected ausgegeben.Setze ich den Name in die Variable pdfname wird die Zeile
Collection runPDFReport(pdfname);
zusätzlich mit dem Fehler 9:37 not a statement gemeldet.
Nur der (sinnlose) Befehl ohne Klammern wird akzeptiert.
Ich arbeite mit 3.2 BetaWenn ich die API richtig gelesen habe, ist es nicht möglich, die manuelle Parametereingabe zu überspringen durch eine Übergabe der entsprechenden Parameter.
Gruss Martin27 Dezember 2011 um 18:53 Uhr #4718Claudia Mangstl
TeilnehmerHallo Martin,
wenn ich das richtig verstehe, handelt es sich ’nur‘ um Kompiler-Fehler. Der Aufruf in der Regel muss so aussehen:
Collection myReports = server.runPDFReport("Kundenbestellung");
oder
Collection myReports = server.runPDFReport(pdfname);
Der Aufruf liefert eine Collection mit den fertigen Dateien zurück.Verstehe ich es richtig, dass mit „Parametereingabe“ die variablen Parameter in der Datenquelle gemeint ist ? Diese können nicht an den Aufruf übergeben werden, sondern müssen über die Datenquelle abgewickelt werden.
-
AutorBeiträge