Versionen im Vergleich

Schlüssel

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

Es gibt ab Nuclos 4.28 neue Funktionen für die Regel-API, die den Code einfacher und leslicher machen, als  als Beispiel:

Codeblock
import org.nuclos.api.exception.BusinessException;
public class UtilsNeu {

	public static void workAuftrag(Long id1, Long id2) throws BusinessException {
		Auftrag auftrag = Auftrag.get(id1);
		auftrag.changeStatus(AuftragSM.State_20);
		auftrag.setName("NeuerName");
		auftrag.save();

		Auftragauftrag.deleterefresh(id2);
	}
}

 

Exakt der gleiche Code mit "alten" Mittel war um einiges umfangreicher, mit mehr Imports und Klassen, die nicht intuitiv sind, wie z.b. "BusinessObjectProvider", zu dem man auch noch einen Import brauchte:

Codeblock
import org.nuclos.api.exception.BusinessException;
import org.nuclos.api.provider.BusinessObjectProvider;
import org.nuclos.api.provider.QueryProvider;
import org.nuclos.api.provider.StatemodelProvider;
public class UtilsAlt {

	public static void workAuftrag(Long id1, Long id2) throws BusinessException {
		Auftrag auftrag = QueryProvider.getById(Auftrag.class, id1);
		StatemodelProvider.changeState(auftrag, AuftragSM.State_20);
		auftrag.setName("NeuerName");
		BusinessObjectProvider.update(auftrag); // ab v4.32

		Auftrag auftrag2 = QueryProvider.getById(Auftrag.class, .delete(id2);
		BusinessObjectProvider.delete(auftrag2);
	}
}

...