Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

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

Fachlicher Hintergrund

Eine bestehende Nuclos-Instanz umfasst das Businessobjekt Bestellungen. Diese wiederum besitzt den Reiter Positionen, der alle Artikel einer konkreten Bestellung auflistet. Die Aufgabe besteht darin, nach erfolgreichem Anlegen einer neuen Bestellung einen Rückmeldungsstichtag (heute + 7 Tage) automatisch einzurichten. Aber nur, wenn die Bestellung fehlerfrei angelegt wurde.

Quellcode


Codeblock
package org.nuclet.company; 

import java.util.Calendar;

import org.nuclos.api.annotation.Rule; 
import org.nuclos.api.context.InsertContext; 
import org.nuclos.api.exception.BusinessException; 
import org.nuclos.api.provider.QueryProvider;
import org.nuclos.api.provider.BusinessObjectProvider;
import org.nuclos.api.rule.InsertFinalRule; 


/** @name        
  * @description 
  * @usage       
  * @change      
*/
@Rule(name="BestellungStichtag", description="BestellungStichtag")
public class BestellungStichtag implements InsertFinalRule {
  
  public void insertFinal(InsertContext context) throws BusinessException { 
          Bestellung curBestellung = context.getBusinessObject(Bestellung.class);
          
          Calendar recallDay = Calendar.getInstance();
          recallDay.add(Calendar.DAY_OF_MONTH, 7);
          
		  Bestellung b = QueryProvider.getById(Bestellung.class, curBestellung.getById()
          b.setRecallTermin(recallDay.getTime());
          b.save();          
    }
}