In diesem Dokument werden die wichtigsten Prozesse erläutert, die zur Reservierung von Lagerplätzen führen können. Erfahren Sie auch, wie Lagerplatz-Reservierungen durchgeführt werden und welche Auswirkung sie auf andere Prozesse und Anwendungen haben. Die dabei verwendeten Anwendungen und deren Felder, Aktionen und Vorgehensweisen sind in separaten Dokumentationen ausführlich beschrieben.
1 Begriffsbestimmung
Lagerplatz
Ein Lagerplatz bezeichnet die genaue Stelle an einem Lagerort, an der Artikel gelagert werden können. Ein Lagerplatz liegt innerhalb eines Lagerortes stets in einer Lagerzone und wird auf Basis einer Reihe, einer Ebene und einer Lagerplatznummer genau bestimmt. Jeder Lagerplatz ist von einem Lagerplatztyp, der die Verwendung des Lagerplatzes festlegt. Das Vorhandensein von Lagerplätzen ist die Voraussetzung für die Lagerplatzsteuerung.
Lagerplatz-Reservierungen
Für künftige Zu- und Abgänge können Lagerplätze reserviert werden. Auch Bestände auf unstrukturierten Lagerzonen (außer Inventurdifferenz-Zone) werden für künftige Zu- und Abgänge reserviert. Umfasst der Lagerplatz mehr als ein Lademittel, dann erfolgt die Lagerplatz-Reservierung für den Stellplatz. Lagerplatz-Reservierungen entstehen z. B. beim Erzeugen von Lageraufträgen oder wenn ein Lagerplatz oder eine unstrukturierte Lagerzone in einer Lageranforderung ausdrücklich angegeben wurde. Es wird verhindert, dass die Summe des realen Bestandes und aller offenen Reservierungen negativ wird.
2 Lagerplatz-Reservierungen
Durch die Lagerplatz-Reservierung wird die Menge an künftigen Zugängen und Abgängen an einem Lagerplatz festgehalten. Die Lagerplatz-Reservierung verhindert, dass Lageraufträge zur Einlagerung erzeugt werden, die zum Überschreiten des Höchstbestandes an einem Lagerplatz führen würden. Bei einer Auslagerung bewirkt die Lagerplatz-Reservierung, dass derselbe Bestand nicht zweimal ausgelagert wird.
Auf unstrukturierten Lagerzonen werden auf die gleiche Art und Weise Mengen reserviert; unter dem allgemeinen Begriff „Lagerplatz-Reservierungen“ werden auch die Reservierungen auf unstrukturierten Lagerzonen als ein spezieller Fall der Lagerplatz-Reservierungen verstanden.
Auch bei der Auslagerung auf einer unstrukturierten Lagerzone verhindert die Reservierung die überflüssige Auslagerung. Auf die Einlagerung auf einer unstrukturierten Lagerzone haben dagegen eventuell vorhandene Reservierungen keinen Einfluss, da eine Lagerzone keine Kapazitätsbegrenzung kennt.
Auf der virtuellen Inventurdifferenz-Zone macht es allerdings keinen Sinn, Reservierungen vorzunehmen, da diese fiktive Lagerzone nur Inventurbuchungen vorbehalten wird und Inventurbuchungen ohne Reservierungen durchgeführt werden.
2.1 Entstehung der Lagerplatz-Reservierungen
Folgende Belege verursachen Lagerplatz-Reservierungen:
- Nicht erledigte Lageranforderung mit einer Angabe eines Lagerplatzes oder einer unstrukturierten Lagerzone
- Nicht zurückgemeldeter Lagerauftrag, es sei denn die Lagerplatz-Reservierung ist bereits von der Lageranforderung verursacht worden
- Materialbuchung auf einem strukturierten Lagerort, die noch nicht von dem entsprechenden Lagerlogistik-Server verarbeitet worden ist. Ausnahme: Korrekturbuchung aus einer Inventur
- Fehlerbuchung aus dem Buchungsfehlerspeicher mit einer Angabe eines Lagerplatzes oder einer unstrukturierten Lagerzone
- Offener Wareneingang auf einem strukturierten Lagerort (Wareneingang ist bereits gebucht, Lageraufträge sind aber noch nicht oder nicht für die ganze Menge erzeugt)
- Nicht erledigte Kommission (für die Bestände, die durch zurückgemeldete Lageraufträge auf die Warenausgangszone transportiert wurden)
- Nicht gelieferter Lieferauftrag (für die auf der Warenausgangszone kommissionierten Bestände)
Wird in einem Lagerauftrag der angezeigte Lagerplatz geändert, dann wird eine Lagerplatz-Reservierung für den neuen Lagerplatz durchgeführt. Ist die Reservierung erfolgreich, dann wird anschließend die Lagerplatz-Reservierung des alten Lagerplatzes aufgehoben und die Änderung persistent gespeichert. Das gleiche gilt auch für eine unstrukturierte Lagerzone.
Automatische Stellplatzermittlung und Lagerplatz-Reservierung
Ist für einen Lagerplatz mit Lademittel eingestellt, dass automatisch ein Stellplatz ermittelt werden soll, wenn diese Angabe fehlt, dann gilt Folgendes für die Lagerplatz-Reservierung:
- Die Anfragen zu Lagerplatz-Reservierungen werden vom System sortiert. Wurde z. B. zweimal derselbe Lagerplatz angegeben, einmal mit Stellplatzangabe und einmal ohne, dann wird die Lagerplatz-Reservierungsanfrage mit Stellplatzangabe zuerst berücksichtigt. Anderenfalls wäre möglich, dass die Anfrage ohne Stellplatzangabe den Stellplatz erhält, der in der zweiten Anfrage bereits angegeben ist. Die zweite Anfrage würde damit als nicht reservierbar mit einer Fehlermeldung zurückgewiesen.
- Bei der Abarbeitung der Anfragen zu Lagerplatz-Reservierungen wird über die Stellplätze des Lagerplatzes aufsteigend gesucht. Der erste Stellplatz, der die Anforderung erfüllt, z. B. ausreichend Bestand, wird ausgewählt.
- Auslagerung:
Beim Auslagern wird der Stellplatz ausgewählt, mit dem die angefragte Menge vollständig reserviert werden kann. Entsprechen mehrere Stellplätze eines Lagerplatzes dieser Anforderung, dann wird der Stellplatz gewählt, dessen Artikel das älteste FIFO-Datum führt.
2.2 Aufhebung der Lagerplatz-Reservierungen
Wenn der Lagerlogistik-Server die aus der Zurückmeldung des Lagerauftrages resultierenden Materialbuchungen verarbeitet hat, werden die Lagerplatz-Reservierungen wieder aufgehoben. Wird ein Lagerauftrag oder eine Lageranforderung mit einer expliziten Lagerplatz- bzw. Lagerzonenangabe gelöscht oder storniert, werden evtl. für den Beleg erzeugte Lagerplatz-Reservierungen ebenfalls aufgehoben. Auch beim Stornieren einer Kommission werden die Reservierungen der bereits auf der Warenausgangszone kommissionierten Bestände zurückgenommen.
2.3 Zurücksetzen von Lagerplatz-Reservierungen
Bei einer Änderung von Lagerangaben in einem Lagerauftrag, z. B. der Änderung des Lagerplatzes, werden Lagerplatz-Reservierungen aufgehoben und entsprechend der geänderten Angaben erneut vorgenommen. Kommt es beim Speichern dieser Änderungen zu einem Fehler, dann werden die Änderungen im Lagerauftrag rückgängig gemacht und die Lagerplatz-Reservierungen werden zurückgesetzt.
Wenn die Lagerplatz-Reservierungen nicht oder nur teilweise zurückgesetzt werden können, beispielsweise aufgrund einer zwischenzeitlich erfolgten Lagerplatz-Reservierung durch einen anderen Lagerauftrag, dann wird das folgende Workflow-Ereignis ausgelöst:
com.cisag.app.inventory.order.LocationReservationRollbackError
Wir empfehlen, die Lagerplatz-Reservierungen der betroffenen Lagerauftragspositionen umgehend zu prüfen und die fehlerhaften Daten mit Hilfe der Anwendung „Neuaufbau von Lagerplatz-Reservierung“ zu korrigieren, da andernfalls weitere fehlerhafte Daten entstehen können.
2.4 Anzeige der Lagerplatz-Reservierungen
Lagerplatz-Reservierungen werden in der Anwendung „Lagerplätze abfragen“ graphisch dargestellt. Es werden jedoch nur das Vorhandensein einer Lagerplatz-Reservierung und nicht die reservierten Mengen angezeigt. Die reservierten können in den Bestandssätzen auf Lagerplatz-Ebene eingesehen werden (Business Objekt: com.cisag.app.inventory.obj.UnitOnhandDetail). Die Bestände und Lagerplatz-Reservierungen werden dort pro Artikel und Ausprägung geführt. Das Attribut summaryLevel gibt dabei die für den Datensatz jeweils gültige Verdichtungs-Ebene an.
Die folgende Tabelle beschreibt die für die Lagerplatz-Reservierung relevanten Attribute im Business Objekt: com.cisag.app.inventory.obj.UnitOnhandDetail:
Attribut | Name | Erklärung |
unitOnhand | Bestandssatz | Bezug zum Bestandssatz des Lagerplatzes bzw. des Stellplatzes. |
item | Artikel | Der zu transportierende Artikel. |
identifier | Ausprägung | Ist der Artikel in Ausprägungen geführt, dann beinhaltet dieses Attribut die zu transportierende Ausprägung. |
outgoingQuantity | Künftige Abgänge | Die Menge der künftigen Abgänge. Dieses Attribut stellt die Lagerplatz-Reservierung für Auslagerungen dar. |
incomingQuantity | Künftige Zugänge | Die Menge der künftigen Zugänge. Dieses Attribut stellt die Lagerplatz-Reservierung für Einlagerungen dar. |
summaryLevel | Ebene der Lagerplatz-Reservierung | Die folgenden Ebenen stehen zur Verfügung:
· Artikelsumme · Ausprägungssumme Beim Wert „Artikelsumme“ stellen die beiden Attribute „incomingQuantity“ und „outgoingQuantity“ die künftigen Zu- bzw. Abgänge vom Artikel im Feld „item“ dar. Beim Wert „Ausprägungssumme“ stellen die beiden Attribute „incomingQuantity“ und „outgoingQuantity“ die künftigen Zu- bzw. Abgänge der Ausprägung im Feld „identifier“ dar. |
2.5 Verhinderung von negativen Beständen
Negative Bestände in der Lagerplatzsteuerung können zu Nachfolgefehlern führen, beispielsweise verfälschen sie nachhaltig den Verlauf und somit Ergebnisse von automatischen Ein- und Auslagerungsalgorithmen, und die falschen Transportanweisungen werden im Laufe der Zeit nur weiter multipliziert.
Entstehung von negativen Beständen wird in der Lagerplatzsteuerung deswegen grundsätzlich verhindert. Die Regel lautet: wird ein Vorgang zu einem negativen Bestand führen (das heißt, ist der Bestand zuzüglich offener Zugangsmengen und abzüglich offener Abgangsmengen negativ), dann soll er abgebrochen werden.
Diese Regel kann auch kurzzeitige negative reale Bestände auf Lagerplätzen ohne Lademittel sowie auf Lagerzonen zulassen. Das kann aber nur dann passieren, wenn gleichzeitig eine gleiche oder größere offene Einlagerung auf dem Lageratz bzw. auf der unstrukturierten Lagerzone existiert. Dieser Zustand kann in der Realität entstehen, wenn eine Abgangsbuchung vor der Zugangsbuchung vom Lagerlogistik-Server verarbeitet wurde, was bei der asynchronen Arbeitsweise des Lagerlogistik-Servers durchaus möglich ist. Physikalisch muss die Ware bereits eingegangen sein, da sie erfolgreich verbraucht werden konnte. Dies bedeutet natürlich, dass wenn die Zugangs-Materialbuchung noch gar nicht erzeugt wurde, dann wird der Einlagerungsprozess zu Ende geführt werden müssen.
Beispiel:
Ein Lagerauftrag für die Einlagerung eines Wareneingangs auf eine unstrukturierte Lagerzone ist noch nicht im System zurückgemeldet worden, die Ware kann aber bereits (mit einer manuellen Materialbuchung oder einer direkten Lageranforderung) auf einen anderen Platz/andere Zone transportiert werden. Der Lagerauftrag darf danach allerdings nicht mehr ohne Rückmeldung erledigt werden.
Negative künftige Bestände werden in der Lagerplatzsteuerung grundsätzlich verhindert, und zwar unabhängig von der Customizing-Einstellung unter Lagerlogistik/Bestände „Negative Bestände zulässig“, die ausschließlich Bestände auf Lagerortebene betrifft.
Hinweis:
Es bleibt allerdings ein legitimer Weg offen, einen negativen künftigen Bestand zu erzeugen. Die Inventurdifferenzen werden nämlich ohne Reservierungen gebucht, d.h. beispielsweise beim Verbuchen einer negativen Inventurdifferenz auf einem Lagerplatz, wo der gesamte Bestand durch einen Lagerauftrag reserviert ist, wird ein negativer künftiger Bestand entstehen. Da diese Situation mit einer geringen Wahrscheinlichkeit vorkommen und nicht verhindert werden kann, wird der künftige Bestand auch beim Speichern der Änderungen an Bestands- und Reservierungsdaten kontrolliert. Sinkt er auf einem Umweg doch unter Null, dann wird über diese Situation ein Meldungsprotokoll-Eintrag erzeugt und ein Workflow-Event „com.cisag.app.inventory.NegativeFutureOnhandCreated“ wird gesendet. Der Bestand auf dem betroffenen Stell-/Lagerplatz bzw. der unstrukturierten Lagerzone soll kontrolliert und korrigiert werden, da diese Bestandssituation nicht in der Realität existieren kann und darauf hindeutet, dass im System Prozesse falsch abgebildet wurden (zum Beispiel wurde ein bereits entnommener Bestand nochmals als eine Inventurkorrektur gebucht usw.).