Seitenhistorie
...
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.companyprojekt; 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 AnsprechpartnerErstellen * @description Unterstützende Regel zum Erstellen neuer Ansprechpartner aus Unterprojekten * @usage * @change * */ @Rule(name="BestellungStichtagAnsprechpartnerErstellen", description="BestellungStichtagUnterstützende Regel zum Erstellen neuer Ansprechpartner aus Unterprojekten") public class BestellungStichtagAnsprechpartnerErstellen implements InsertFinalRule { public void insertFinal(InsertContext context) throws BusinessException { final Ansprechpartner Bestellung curBestellungboAnsprechpartner = context.getBusinessObject(BestellungAnsprechpartner.class); if (boAnsprechpartner.getUnterprojektsrefId() != null) { Calendar recallDay = Calendar.getInstance(); final Unterprojekt boUnterprojekt = recallDayUnterprojekt.addget(Calendar.DAY_OF_MONTH, 7boAnsprechpartner.getUnterprojektsrefId()); Bestellung b = QueryProvider.getById(Bestellung.class, curBestellung.getById() bboUnterprojekt.setRecallTerminsetAnsprechpartnerrefId(recallDayboAnsprechpartner.getTimegetId()); BusinessObjectProvider.update(b); boUnterprojekt.save(); } } } |
Überblick
Inhalte