Home Forum Nuclos Entwicklung Makros und Regeln hasFieldChanged -> neue API

Ansicht von 7 Beiträgen - 1 bis 7 (von insgesamt 7)
  • Autor
    Beiträge
  • #6888
    Stefan Geisthoff
    Teilnehmer

    Guten Abend,

    ich hab keine Alternative zu „hasFieldChanged“ in der neuen API gefunden.

    NUCLOS-1642 hilft mir da auch nicht recht weiter.

    Hat einer ein ausführliches Beispiel????

    Würde mir sehr weiterhelfen

    Stefan

    #6889
    Ramin Goettlich
    Teilnehmer

    Um festzustellen, ob sich der Inhalt des Stringfeldes „Testfeld“ in der Entität „Testentitaet“ geändert hat:

    Testentitaet te = context.getBusinessObject(Testentiaet.class);
    String oldValue = QueryProvider.getById(Testentitaet.class, te.getId()).getTestfeld();
    String newValue = te.getTestfeld();
    if (!newValue.equals(oldValue) {
    //field has changed
    }

    Dieser Code holt sich den alten Wert aus der DB (macht man das massenhaft, wird es performancerelevant…), aber das alte hasFieldChanged() hat genau das gleiche gemacht.

    #6973
    Markus Glitzner
    Teilnehmer

    Ist hier eine hasChanged Funktion auf Attributebene geplant?

    Die Abfrage für ein Attribut geht ja noch, aber wenn es mehrere werden, wird es doch etwas komplex, mal abgesehen von den Datenbankabfragen.

    Mein Konstrukt für ein Referenzfeld, dass auch Null Werte beachtet, sieht so aus:Long oldLagerortId = QueryProvider.getById(Lagerbestand.class, Lagerbestand.getId()).getLagerortId();
    Long newLagerortId = Lagerbestand.getLagerortId();

    if (Helper.isNull(oldLagerortId, 0L).intValue() != Helper.isNull(newLagerortId, 0L).intValue()) {
    //...
    }

    #6975
    Ramin Goettlich
    Teilnehmer

    Geplant ist es nicht. Am besten mal ein Ticket erstellen, dann ist es zumindest schon mal in den Workflow eingekippt.

    #6976
    Markus Glitzner
    Teilnehmer
    #7032
    Thomas Hamm
    Teilnehmer

    Hallo,

    gibt es so etwas (hasChanged) für Subforms?

    Gruß Thomas

    #7082
    Ramin Goettlich
    Teilnehmer

    Die API unterscheidet nicht zwischen Entitäten, die als Subform eingeblendet sind und anderen. Insofern betreffen entpsrechende Tickets immer beides.

Ansicht von 7 Beiträgen - 1 bis 7 (von insgesamt 7)