Sie zeigen eine alte Version dieser Seite an. Zeigen Sie die aktuelle Version an.

Unterschiede anzeigen Seitenhistorie anzeigen

Version 1 Nächste Version anzeigen »

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

Fachlicher Hintergrund

Eine bestehende Nuclos-Instanz umfasst die Entität Artikel. Diese wiederum besitzt den Reiter Positionen, der alle Bestellungen auflistet, die den besagten Artikel im Lieferumfang beinhalten. Die Regel wird mit der Entität Artikel verknüpft und soll nun alle Bestellungen eines Artikels durchlaufen und die Anzahl des gewünschten Artikels innerhalb der Bestellung aufsummieren und anschließend in einem Hinweisfeld anzeigen.

Quellcode

 

package org.nuclet.company; 

import java.util.List;
import org.nuclos.api.rule.UpdateRule; 
import org.nuclos.api.context.UpdateContext; 
import org.nuclos.api.annotation.Rule; 
import org.nuclos.api.exception.BusinessException; 

/** @name        
  * @description 
  * @usage       
  * @change      
*/
@Rule(name="UpdateAnfrage", description="UpdateAnfrage")
public class UpdateAnfrage implements UpdateRule {
    public void update(UpdateContext context) throws BusinessException { 
        Anfrage curAnfrage = context.getBusinessObject(Anfrage.class);
        List<Anfrageposition> anfrageposition = curAnfrage.getAnfrageposition();
        
        double gesamtArtikelAnzahl = 0d;
        
        for (Anfrageposition curPos : anfrageposition) {
            gesamtArtikelAnzahl += curPos.getAnzahl();
        }
        
        curAnfrage.setKurzbeschreibung("Bestellung " + curAnfrage.getNr() + " umfasst insgesamt " + gesamtArtikelAnzahl + " Artikel.");
    }
}
  • Keine Stichwörter