Trackingstatus wurde hinzugefügt

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

Sofern ein Trackingstatus-Workflow anwendbar ist, erfolgt die Prüfung für die Zulässigkeit der Trackingstatus-Transformation für den neuen Eintrag bevor das Ereignis ausgelöst wird. Ereignisbehandlungen werden also nur aktiv, wenn der Trackingstatus-Wechsel unter Berücksichtigung der ggf. anwendbaren Trackingstatus-Workflows überhaupt zulässig ist. Um eine Ereignisbehandlung vor der Prüfung gegen Trackingstatus-Workflows auszuführen, verwenden Sie das Ereignis Trackingstatus wird hinzugefügt.

Der Datenkontext für dieses Ereignis ist das betreffende Geschäftsobjekt bzw. die Position eines Geschäftsobjekts, der ein Trackingstatus-Eintrag hinzugefügt werden soll (s. Arbeiten mit Trackingstatus).

Auf den neuen Trackingstatus-Eintrag (s. Trackingstatus-Historie) kann in Ereignisbehandlungen über die Variable trackingStatusEntry per Klasse Trackingstatus-Eintrag (de.lobster.scm.base.ts.trackingstatus.entry.TrackingStatusEntry) lesend und schreibend zugegriffen werden.

Konfigurationsbeispiel

Nach dem Hinzufügen eines Trackingstatus-Eintrags zu einer Bestellposition soll geprüft werden, ob dieser zusätzliche Eintrag im Trackingstatus-Attribut für den Trackingstatustyp "Aktuell" (CURRENT) für die Bestellposition referenziert wird.

Das ist z. B. dann der nicht der Fall, wenn der neue Eintrag anhand der angegebenen Externen Eingabezeit innerhalb der Historie chronologisch so eingereiht wurde, dass er keinen Einfluss auf den aktuellen Trackingstatus hat. Dies kann beabsichtigt sein, aber auch auf einen Eingabefehler für die Externen Eingabezeit zurückgehen. Da die Externe Eingabezeit nach dem Erstellen des Eintrag nicht mehr korrigiert und Trackingstatus-Einträge auch grundsätzlich nicht gelöscht werden können, soll der Anwender per Benutzer Rückfrage vor dem Abschluss der Transaktion entscheiden können, ob der Eintrag in die Historie übernommen oder die Eingabe verworfen werden soll.

images/download/attachments/36571108/image2019-5-17_10-58-28-version-1-modificationdate-1558083519000-api-v2.png

  • Die Ereignisbehandlung wird durch das Ereignis Trackingstatus wurde hinzugefügt ausgelöst.

  • Die Prüfende Regel begrenzt den Anwendungsbereich der Ereignisbehandlung Typprüfung auf den Objekttyp "Bestellposition". Solange die weiteren Regeln und Aktionen objektübergreifend anwendbar sind, könnten hier per ODER-Verknüpfung auch andere Objekte mit Trackingstatus-Einträgen ergänzt werden.

  • Außerdem prüft die Objekt-Feld-Regel, ob die per Datenkonext übergebene Bestellposition über ein Trackingstatus-Attribut für den Subtyp "Aktuell" (CURRENT) verfügt, das auf einen anderen als den hinzugefügten Trackingstatus-Eintrag verweist.

  • Falls der hinzugefügte Trackingstatus-Eintrag nicht als "Aktuell" registriert wurde, wird die Benutzer Rückfrage Aktion ausgeführt, in der abhängig von der Antwort des Benutzers der Abbruch der Transaktion ausgelöst wird.

►HINWEIS◄ Beim Abbrechen der Transaktion werden alle Änderungen zurückgerollt, also auch das Erstellen des Trackingstatus-Eintrags und die Aktualisierung des Trackingstatus-Attributs im Geschäftsobjekt.