Sprache: Deutsch · English
Statuswechsel aus Regeln auslösen – changeState() mit State-Konstanten.
REFERENZ ENTWICKLER STAND: JUL 2026 GILT FUER NUCLOS 4.2026.X
Auf dieser Seite
Der StatemodelProvider führt einen Statuswechsel eines Businessobjekts aus – auch für „ferne“ Objekte.
Wechselt den Status eines BOs, das Stateful implementiert (also mit Statusmodell arbeitet). Der Zielstatus wird als State-Konstante aus der Statusmodell-Klasse übergeben.
public static <T extends Stateful> void changeState(T t, State sState) throws BusinessException;
public class Auftragbeantragen implements StateChangeFinalRule {
public void changeStateFinal(StateChangeContext context) throws BusinessException {
Auftrag neuerAuftrag = context.getBusinessObject(Auftrag.class);
// Wurde noch keine Auftragsnummer hinterlegt, kann der Auftrag nicht
// ausgeführt werden. Wir brauchen eine weitere Prüfung
if (neuerAuftrag.getAuftragsnr() == null) {
// Neuer Status: Prüfen (Numeral 55)
StatemodelProvider.changeState(neuerAuftrag, ProzessAuftragSM.State_55);
}
else {
// Prüfung ok, neuer Status: beauftragt (Numeral 30)
StatemodelProvider.changeState(neuerAuftrag, ProzessAuftragSM.State_30);
}
}
}