Home Forum Allgemeines Allgemeines zu Nuclos Business-Objekte fehlerhaft?

Ansicht von 4 Beiträgen - 1 bis 4 (von insgesamt 4)
  • Autor
    Beiträge
  • #7089
    Frank Pavlic
    Teilnehmer

    Hallo zusammen,
    laut Wiki-Page QueryProvider (Beispiele) soll folgendes
    möglich sein:
    // Hier wird ein bestimmter Auftrag einer Aktion zugewiesen
    Auftrag a = QueryProvider.getById(Auftrag.class, 40297631L);
    a.setNuclosProcess(Auftrag.Sonderauftrag);
    BusinessObjectProvider.update(a);

    Version 3.14.11 und höher gibt es kein setNuclosProcess für die Business-Objekte, wohl aber ein setNuclosProcessId.
    Ist das ein Bug?
    Oder ist die Wiki-Seite beim Aufruf
    a.setNuclosProcess(Auftrag.Sonderauftrag);
    fehlerhaft?

    Desweiteren gibt es für definierte Aktionen keine Konstanten in den Business-Objekten. Auch ein Bug?

    Falls dies keine Fehler sind, wie können dann Aktionen in Business-Objekten gesetzt werden ? Da für setNuclosProcessId ein Long-Parameter
    benötigt wird, muss es möglich sein, die Aktionen in irgendeiner Form anzusprechen, sei es über QueryProvider oder direkt über ein Business-Objekt „NuclosProcess“ o. ä.
    Da an den BusinessObjects ja noch fleissig erweitert wird, kann es ja gut sein, dass der Weg, Aktionen zu setzen, sich noch einmal geändert hat.
    Wie macht Ihr das ?

    #7090
    Markus Glitzner
    Teilnehmer

    Hallo!

    Daran bin ich auch schon gescheitert, ich setze meine Aktionen daher direkt mit der Id, die wird sich in einem laufendem System wohl eher nicht ändern (können).

    Gruß
    Hugo

    #7092
    Matthias Reichart
    Teilnehmer

    Das dürfte ein Problem fehlender Versionsangaben in der API und im Wiki sein.

    In einer 3.14.-Version kann der Prozess eines BusinessObjekts nur mit der Id gesetzt werden: setNuclosProcessId(Long value)
    Um einen Prozess, bzw. dessen Id, zu ermitteln, kann der QueryProvider mit einer Query verwendet werden. Man sucht also nach dem entsprechenden Eintrag und bekommt ein Ergebnis, das die Prozess-Id beinhaltet.
    Dazu gibt es ein eigenes BusinessObjekt für die Nuclos-Entität „Process“: nuclosprocess
    Bsp: Query myProcessQuery = QueryProvider.create(nuclosprocess.class).where(…);

    Das ist etwas kompliziert. Mit Rahmen aktueller Umsetzungen haben wir die BusinessObjekte folgend erweitert:
    – Die BusinessObjekte bekommen Konstanten für ihnen zugewiesene Prozesse: Auftrag.Sonderauftrag oder Auftrag.NormalAuftrag
    – Um Prozesse leichter setzen zu können, wurden die BusinessObjekte mit Setter versehen, die diese Konstanten verarbeiten können: setNuclosProcess(Auftrag.NormalAuftrag)
    (Methodename ohne „Id“ am Schluss)

    Diese Erweiterungen haben wir vor kurzem umgesetzt, weshalb sie erst in einer zukünftigen Nuclos-Version zur Verfügung stehen.
    Aus diesem Grund können Sie zwar die Änderungen im Wiki (inklusive der Methode getByProcess(), etc.) sehen, besitzen in der 3.14 aber nicht
    die entsprechenden Implementierungen.

    Die Thematik mit den fehlenden Versionangaben ist uns bekannt. Wir arbeiten daran.

    Gruß.

    #7099
    Frank Pavlic
    Teilnehmer

    Danke für die Aufklärung.

    Gruß
    Frank

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