| Auszug | ||
|---|---|---|
| ||
Nuclos PrintoutProvider: run, OutputFormat, boId, NuclosFile, Formular, PDF, insertAttachment. |
Sprache: Deutsch · English
Formulare aus Regeln ausführen – run(format, boId) liefert ein NuclosFile.
| Status | ||||
|---|---|---|---|---|
|
| Status | ||||
|---|---|---|---|---|
|
| Status | ||||
|---|---|---|---|---|
|
| Status | ||||
|---|---|---|---|---|
|
| Panel | ||||||
|---|---|---|---|---|---|---|
| ||||||
Auf dieser Seite
|
Der PrintoutProvider führt ein Formular aus. Anders als beim Report wird ein Formular mit Daten befüllt – daher wird neben dem Ausgabeformat die Id des Datensatzes übergeben.
Führt das Formular aus und liefert ein NuclosFile (z.B. als Anhang oder für den Mailversand). Optional lassen sich Parameter als Map übergeben.
Der PrintoutProvider ist eine Hilfsklasse, die alle notwendigen Methoden zur Ausführung eines Formulars beinhaltet.
...
Diese Methode ermöglicht die Ausführung eines Formulars. Im Methodenaufruf muss das Ausgabeformat mit angegeben werden. Das Ausgabeformat ist immer genau einem Formular zugewiesen und besitzt eine eigene Id. Aus diesem Grund genügt beim Aufruf des Formulars die Angabe des Formats. Da ein Formular im Gegensatz zum Report mit Daten befüllt wird, muss die Id des Datensatzes angegeben werden.
Beispiel: PrintoutProvider.run(AngebotFormular.Deutsch_PDF, 4000123L). Da das Ausgabeformat "Deutsch_PDF" immer und nur zum Formular "AngebotFormular" gehört, besitzt der ReportProvider alle notwendigen Informationen.
Der Rückgabewert der Methode ist ein NuclosFile-Objekt, das das generierten Formular darstellt. Dieses Ergebnis könnte dann z.B. als Attachment an ein BusinessObject gebunden oder per Email verschickt werden.
...
| Codeblock | ||
|---|---|---|
|
public static NuclosFile run(OutputFormat format, Long boId) throws BusinessException; |
...
Sollen an den Report Parameter übergeben werden, gibt es eine zweite run-Methode(), die eine Map mit den Werten an die Abfrage weiterleiten kann:
...
public static NuclosFile run(OutputFormat format, Long boId, Map<String, Object> params) throws BusinessException; |
| Codeblock | ||
|---|---|---|
| ||
package org.nuclet.businessentity; import org.nuclet.printout.FormularAngebotFuerKundenPO; import org.nuclos.api.common.NuclosFile; import org.nuclos.api.provider.PrintoutProvider; import org.nuclos.api.rule.UpdateRule; import org.nuclos.api.context.UpdateContext; import org.nuclos.api.annotation.Rule; import org.nuclos.api.exception.BusinessException; public class AngebotFormularRegel implements UpdateRule { public void update(UpdateContext context) throws BusinessException { Auftrag a = context.getBusinessObject(Auftrag.class); NuclosFile result = PrintoutProvider.run(FormularAngebotFuerKundenPO.Deutsch_PDF, a.getKunde); |
...
Ein Beispiel finden Sie hier.
a.insertAttachment(result, "Kommentar: Kundenspezifisches Hinweis-Formular");
}
} |
| Info | ||
|---|---|---|
| ||
Für Reports (ohne Datensatzbezug) siehe ReportProvider. |
...