Trackingstatus wird hinzugefügt

Das Ereignis Trackingstatus wird hinzugefügt wird ausgelöst, wenn einem Geschäftsobjekt oder einer enthaltenen Position ein Trackingstatus hinzugefügt werden soll.

Dies ermöglicht die Ausführung von Ereignisbehandlungen beim Hinzufügen von Trackingstatus-Einträgen noch bevor die Zulässigkeit einer Trackingstatus-Transformation anhand der ggf. anwendbaren Trackingstatus-Workflows bewertet wird.

Als Datenkontext für die Ereignisbehandlung wird der Trackingstatus-Besitzer - also das Geschäftsobjekt oder die Position eines Geschäftsobjekts - übergeben, den die Felder statusOwner (Klasse) und statusOwnerId (Objekt-ID) des Trackingstatus-Eintrags eindeutig identifizieren.

Auf den zu hinzuzufügenden Trackingstatus-Eintrag kann innerhalb von Ereignisbehandlungen über die Variable trackingStatusEntry mit Verweis auf die Klasse Trackingstatus-Eintrag (de.lobster.scm.base.ts.trackingstatus.entry.TrackingStatusEntry) lesend und schreibend zugegriffen werden.

Konfigurationsbeispiel

Das Hinzufügen eines beliebigen Trackingstatus zu einer Bestellung oder einer Bestellposition soll grundsätzlich - also ohne Berücksichtigung von Regelungen durch Trackingstatus-Workflows - verhindert werden, wenn für dasselbe Bezugsobjekt (Geschäftsobjekt oder Position) bereits ein Trackingstatus-Eintrag mit demselben Trackingstatus-Code vorliegt.

images/download/attachments/36571097/image2019-5-14_14-59-28-version-1-modificationdate-1557838771000-api-v2.png

  • Als Auslösendes Ereignis wird dasTrackingstatus wird hinzugefügt verwendet, das auf jeglichen Versuch anspricht, einen Trackingstatus hinzuzufügen.

  • Die Prüfende Regel akzeptiert per Typprüfung nur "Bestellungen" oder "Bestellpositionen" für den weiteren Verlauf.

  • Außerdem ermittelt eine Prüfung vorhanden Regel, ob bereits ein Trackingstatus-Eintrag vorliegt, der als Duplikat zum Neuzugang zu werden ist. Die Detailkonfiguration zeigt das der Screenshot unten.

  • Die Abbrechen (mit Meldung) wird ausgeführt, falls für eine Bestellung oder Bestellposition ein Trackingstatus hinzugefügt werden soll, der als "Duplikat" gewertet wird.

Die "Duplikatsuche" innerhalb der Prüfung vorhanden Regel ist hier wie folgt konfiguriert:

images/download/attachments/36571097/image2019-5-14_15-10-26-version-1-modificationdate-1557839429000-api-v2.png

  • Geprüft werden die Werte der Feldprojektionen Besitzer (statusOwner), statusOwnerId (statusOwnerId) und Trackingstatus-Code.Code (trackingStatus.code) sämtlicher sichtbaren Trackingstatus-Einträge im System (linke Seite der drei Bedingungen).

  • Verglichen wird jeweils mit dem Wert desselben Felds aus dem neuen Trackingstatus-Eintrag (rechte Seite der drei Bedingungen), auf den über die Variable trackingStatusEntry mit Typ Trackingstatus-Eintrag zugegriffen wird.