Das folgende Beispiel soll den Aufbau einer Regel vom Typ "PrintFinal" und die Weiterverarbeitung der übergebenen Inhalte veranschaulichen.

Fachlicher Hintergrund

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);
    }
}
  • Keine Stichwörter