Das folgende Beispiel soll den Aufbau einer Regel vom Typ "PrintFinal" und die Weiterverarbeitung der übergebenen Inhalte veranschaulichen.
Ausgedruckte Dokumente sollen in ein individuelles Dokumentenunterformular eingefügt werden.
package de.mynuclet; import org.nuclos.api.rule.PrintFinalRule; import org.nuclos.api.context.PrintFinalContext; import org.nuclos.api.annotation.Rule; import org.nuclos.api.exception.BusinessException; import org.nuclos.api.context.PrintResult; import org.nuclos.api.provider.BusinessObjectProvider; /** @name * @description * @usage * @change */ @Rule(name="PrintFinalRuleBeispiel", description="PrintFinalRuleBeispiel") public class PrintFinalRuleBeispiel implements PrintFinalRule { public void printFinal(PrintFinalContext context) throws BusinessException { final Auftrag auftrag = context.getBusinessObject(Auftrag.class); for (final PrintResult result : context.getPrintResults()) { Auftragsdokument auftragsdokument = new Auftragsdokument(); auftragsdokument.setDatei(result.getOutput()); auftragsdokument.setDatum(new java.util.Date()); context.log("insert Auftragsdokument " + result.getOutput().getName()); auftrag.insertAuftragsdokument(auftragsdokument); } BusinessObjectProvider.update(auftrag); } } |