In der NEO WWS bilden die Stammdaten die Grundlage für alle Prozesse.
Die Erfassung einer Bestellung wäre nicht denkbar ohne vielerlei Stammdaten wie beispielsweise Unternehmensstammdaten, Lieferantenstammdaten und Artikelstammdaten. Dabei sind manche Stammdaten wie die von der beauty alliance gepflegten Artikeldaten mandantenübergreifend, also für alle Mandanten gleich, andere Stammdaten wie Unternehmensstammdaten mandantenspezifisch.
Allen Stammdaten liegt das gleiche Statusmodell zugrunde. Über das Statusmodell wird gesteuert, ob diese in den verschiedenen Prozessen verfügbar sind. Folgende Status-Ausprägungen sind in der Anwendung vorhanden.
· Entwurf: Der Status Entwurf ist der initiale Status. Alle neu angelegten Objekte bekommen den Entwurfsstatus. Alle Objekte im Status Entwurf können noch in keinen Prozessen verwendet werden. Objekte im Status Entwurf können physisch gelöscht werden..
· Aktiv: Der Status Aktiv kennzeichnet ein Objekt, welches in allen Prozessen aktiv verwendet werden kann.
· Gesperrt: Der Status Gesperrt dient dazu, ein Objekt von den verschiedenen Prozessen auszuschließen.
· Gelöscht: Wird ein Objekt endgültig nicht mehr benötigt, wird dieses aus Gründen der Nachvollziehbarkeit / Historie nicht physisch gelöscht, sondern auf den Status Gelöscht gesetzt. Achtung! Dieser Status ist irreversibel, d.h. er kann nicht mehr rückgängig gemacht werden!
In der NEO WWS werden in allen Prozessen ausschließlich Objekte im Status Aktiv verwendet. Diese Regel ist sowohl für die Sortiments- als auch die Unternehmensstammdaten gültig.
Es ist logisch nicht möglich, ein Objekt aus jedem Status in jeden beliebigen anderen Status zu versetzen. Im Folgenden wird erläutert, welche Statusübergänge erlaubt sind:
· Status Entwurf => Status Aktiv
· Status Aktiv => Status Gesperrt
· Status Gesperrt => Status Aktiv
· Status Gesperrt => Status Gelöscht
Der Statusübergang von Aktiv zu Gesperrt kann nur erfolgen, wenn alle Prozesse für das Objekt abgeschlossen sind. Beispielsweise kann eine Filiale nur gesperrt werden, wenn der Bestand gleich Null ist, keine laufenden Bestellungen oder sonstige offene Bewegungen (Lieferavis, Rechnungen etc.) bestehen.
Bei den Statusübergängen müssen vorhandene Stammdaten-Hierarchien (z.B. in den Sortimentsstammdaten) berücksichtigt werden. D.h. wird der Status eines übergeordneten Objektes (= PARENT) verändert, muss geprüft werden, wie sich die untergeordneten Objekte (= CHILD) verhalten sollen.
Im Folgenden wird erläutert, welche Status der untergeordneten Objekte (= CHILD) in Abhängigkeit von übergeordneten Objekten (= PARENT) möglich sind und wie sich Status-Änderungen ggf. vererben.
· PARENT-Status Entwurf > Mögliche CHILD-Status = Entwurf
· PARENT-Status Aktiv > Mögliche CHILD-Status = Entwurf, Aktiv, Gesperrt, Gelöscht
· PARENT-Status Gesperrt > Mögliche CHILD-Status = Entwurf , Gesperrt, Gelöscht
· PARENT-Status Gelöscht > Mögliche CHILD-Status = Gelöscht
Daraus lassen sich folgende Aktionen ableiten:
· Wenn der parent-Status „Entwurf“ ist, dann müssen die child-Status zwingend „Entwurf“ sein.
· Wenn der parent-Status auf „Gesperrt“ geändert wird, dann müssen die child-Status zwingend auch auf „Gesperrt“ gesetzt werden. Child-Objekte im Status „Entwurf“ behalten diesen bei.
· Wenn der parent-Status „Gesperrt“ ist, dann ist es nicht möglich den Status eines zugehörigen child-Objektes auf „Aktiv“ zu setzen.
· Wenn der parent-Status auf „Gelöscht“ gesetzt wird, dann müssen die child-Objekte mit den Status „Gesperrt“ zwingend auch auf „Gelöscht“ gesetzt werden („Aktiv kann es nicht mehr geben, da bereits von „aktiv“ auf „gesperrt“ gesetzt werden musste, um schlussendlich auf „Gelöscht“ zu setzen.). Child-Objekte im Status „Entwurf“ werden physisch gelöscht.
Es gelten folgende Vererbungsregeln:
· Beim Setzen eines parent-Objektes von Entwurf auf aktiv werden Sie gefragt, ob alle child-Objekte aktiv gesetzt werden sollen, oder ob Sie dies manuell durchführen möchten. Dies Gilt auch bei gesperrt auf aktiv, dann gilt allerdings folgendes.
· Wird ein parent-Status von gesperrt auf aktiv gesetzt, dann werden alle child-Objekte von gesperrt auf Aktiv gesetzt. Dabei muss die Validierung erfolgreich sein. Objekte im Status Entwurf verbleiben in diesem Status.
· Beim Löschen eines Objektes im Status Entwurf in den Sortimentsstammdaten, werden alle abhängigen Objekte im Status Entwurf automatisch mit gelöscht.