Nuclos Event-Regel Anlegen (im Anschluss): Interface, InsertContext, Struktur, Zuweisung im Server-Regelmanager, Beispielcode (Java). |
Sprache: Deutsch · English
Ereignis-Regel „Anlegen (im Anschluss)“: Interface, Kontext und ein Beispiel – so reagierst du auf dieses Nuclos-Ereignis.
Auf dieser Seite |
Diese serverseitige Regel wird ausgeführt nach dem erfolgreichen Anlegen eines Datensatzes. Sie kann einem Businessobjekt zugewiesen werden.
Grundgerüst der Regelklasse (der Regeleditor legt es automatisch an):
package org.nuclet.lager;
import org.nuclos.api.annotation.Rule;
import org.nuclos.api.context.InsertContext;
import org.nuclos.api.exception.BusinessException;
import org.nuclos.api.rule.InsertFinalRule;
/** @name
* @description
* @usage
* @change
*/
@Rule(name="Anlegen Lagerposition im Anschluss", description="Anlegen Lagerposition im Anschluss")
public class AnlegenLagerpositionImAnschluss implements InsertFinalRule {
public void insertFinal(InsertContext context) throws BusinessException {
}
} |
Der Kontext |
Im Server-Regelmanager per Drag-and-Drop dem Ziel zuweisen. Optional lässt sich die Ausführung auf einen Status oder eine Aktion einschränken; die Reihenfolge steuerst du über die Pfeil-Buttons.
Das folgende Beispiel soll den Aufbau einer Regel vom Typ „Anlegen im Anschluss„ und die Weiterverarbeitung der übergebenen Inhalte veranschaulichen.
package org.nuclet.projekt;
import org.nuclos.api.annotation.Rule;
import org.nuclos.api.context.InsertContext;
import org.nuclos.api.exception.BusinessException;
import org.nuclos.api.rule.InsertFinalRule;
/**
* @name AnsprechpartnerErstellen
* @description Unterstützende Regel zum Erstellen neuer Ansprechpartner aus Unterprojekten
* @usage
* @change
*
*/
@Rule(name="AnsprechpartnerErstellen", description="Unterstützende Regel zum Erstellen neuer Ansprechpartner aus Unterprojekten")
public class AnsprechpartnerErstellen implements InsertFinalRule {
public void insertFinal(InsertContext context) throws BusinessException {
final Ansprechpartner boAnsprechpartner = context.getBusinessObject(Ansprechpartner.class);
if (boAnsprechpartner.getUnterprojektsrefId() != null) {
final Unterprojekt boUnterprojekt = Unterprojekt.get(boAnsprechpartner.getUnterprojektsrefId());
boUnterprojekt.setAnsprechpartnerrefId(boAnsprechpartner.getId());
boUnterprojekt.save();
}
}
} |