Table of Contents

Verfügbarkeitsberechnung - Konzept

Einleitung

Wenn man die unitop Verfügbarkeitsberechnung auf die zentrale Funktionalität herunterbricht, so wird versucht, die Frage "Kann Auftrag 4711 zum vorgesehenen Datum geliefert werden?" zu beantworten. Dabei müssen sowohl Lagerbestände, Warenzugänge, als auch Warenabgänge berücksichtigt werden. Die unitop Verfügbarkeitsberechnung ist dabei so aufgebaut, dass sich auch noch andere Informationen ableiten lassen. Insgesamt bietet die Verfügbarkeitsberechnung folgende Informationen:

Diese Informationen werden immer pro Beleg angegeben. Dieses Detail ist wichtig, da abhängig von der Einrichtung, die Belege untereinander priorisiert sein können. Des Weiteren werden Verfügbarkeiten in der unitop Verfügbarkeitsberechnung immer im zeitlichen Verlauf und in Abhängigkeit zu sämtlichen anderen Warenbewegungen betrachtet. Der Begriff der Verfügbarkeit unterscheidet sich in der unitop Verfügbarkeitsberechnung also von der intuitiven Verfügbarkeit, die sich grob als Lagerbestand - Warenabgänge + Warenzugänge und das pro Artikel und Lagerort berechnen könnte. Zusätzlich lassen sich aus der unitop Verfügbarkeitsberechnung auch noch Informationen ableiten, die nicht direkt mitberechnet werden:

Bei der unitop Verfügbarkeitsberechnung wird eine lose Zuordnung von Bedarfsmengen zu Bedarfsdeckern vorgenommen. Es findet, bis auf bei manchen Sonderfällen, keine feste Zuordnung statt.

Im Folgenden wird ein Überblick über das Konzept der unitop Verfügbarkeitsberechnung gegeben, ohne technisch ins Detail zu gehen.

Begrifflichkeiten

Zum klareren Verständnis werden hier die wichtigsten Begriffe definiert, die bei der Verfügbarkeitsberechnung eine elementare Rolle spielen.

Verfügbarkeit

Wenn im Kontext dieser Dokumentation von Verfügbarkeit die Rede ist, ist falls nicht anders angegeben, immer die Verfügbarkeit von Belegzeilen gemeint. Der Begriff Verfügbarkeit hängt also in der Regel von Belegart, Lagerort, Artikel und beabsichtigtem Warenausgangsdatum ab.

Verfügbarkeitsposten

Die Verfügbarkeitsposten sind die Berechnungsgrundlage für die unitop Verfügbarkeitsberechnung. In ihr sind alle benötigten Informationen zu einer Belegzeile und ihrer Verfügbarkeit enthalten. Es wird zwischen eingehenden und ausgehenden Verfügbarkeitsposten unterschieden. Jede Belegzeile führt zu einem Posten. So wird zum Beispiel aus einer Verkaufsauftragszeile ein ausgehender Verfügbarkeitsposten erstellt und aus einer Bestellzeile ein eingehender Verfügbarkeitsposten. Lagerbestände werden ebenfalls zu den eingehenden Verfügbarkeitsposten gezählt und aus den Artikelposten generiert.

Zuteilungspriorität

Jeder Verfügbarkeitsposten hat eine Zuteilungspriorität. Über diese wird gesteuert, welche ausgehenden Verfügbarkeitsposten bei der Berechnung zuerst berücksichtigt werden. Im Basisfall wird zwischen normal, Reservierung und Warenausgang unterschieden. Zusätzlich hat jede Belegart noch eine eigene Zuteilungspriorität. Die Zuteilungspriorität eines Verfügbarkeitspostens setzt sich also aus Basispriorität und Belegpriorität zusammen. Die Zuteilungspriorität hat immer Vorrang und überstimmt auch eine durch eine Einrichtung vorgegebene Sortierung. Innerhalb derselben Priorität wird aber wieder die Sortierung aus der Einrichtung angewendet. Details dazu finden sich unter Berechnung von Verfügbarkeitsposten.

Bedarfsdecker

Im Rahmen der unitop Verfügbarkeitsberechnung ist ein Bedarfsdecker ein eingehender Warenbewegung (z. B. Bestellzeile) oder ein Lagerbestand.

Bedarfsverursacher

Ein Bedarfsverursacher ist im Rahmen der unitop Verfügbarkeitsberechnung eine ausgehende Warenbewegung (z. B. Verkaufsauftragszeile).

Verfügbarkeitsklassen

Eine Verfügbarkeitsklasse beinhaltet eine Menge von Bedarfsverursachern, die um dieselben Bedarfsdecker konkurrieren sowie diese Bedarfsdecker selbst. Zum Beispiel könnten eine Verkaufsauftragszeile, eine Umlagerungszeile und eine Bestellzeile, die alle die gleiche Artikelnummer beinhalten, zur selben Verfügbarkeitsklasse gehören. Verfügbarkeitsklassen sind immer unabhängig von anderen Verfügbarkeitsklassen und können somit bei der Berechnung separat betrachtet werden.

Verfügbarkeitsdatenpunkte

Sobald eine Verfügbarkeitsklasse Bedarfsdecker beinhaltet, existieren auch Verfügbarkeitsdatenpunkte für diese Verfügbarkeitsklasse. Ein Verfügbarkeitsdatenpunkt hat das Format (<Date>,<Decimal>) und bildet eine Menge zu einem bestimmten Datum ab. Bei der Menge handelt es sich jeweils um die kumulative Artikelverfügbarkeit zu diesem Datum.

Schematischer Ablauf der Berechnung

Um die Grundidee der unitop Verfügbarkeitsberechnung zu vermitteln, folgt hier ein Gesamtüberblick über die Berechnung der Verfügbarkeit. Dabei werden bewusst technische Details und Sonderfälle ausgelassen, um ein einfacheres Verständnis zu ermöglichen. Eine exakte Beschreibung der Berechnung findet sich unter Posten.

Aufbau der Verfügbarkeitsposten und Verfügbarkeitsklassen

Als vorbereitender Schritt für die Verfügbarkeitsberechnung findet zunächst eine Datensammlung statt. Dabei wird nach Bedarfsdeckern und Bedarfsverursachern gesucht, die für die Verfügbarkeitsberechnung in Frage kommen und aus diesen jeweils ein Verfügbarkeitsposten erstellt. Bei der Erstellung wird auch die Zuteilungspriorität der Bedarfsverursacher bestimmt. Dabei gilt: Warenausgang > Reservierung > Normal. Bedarfsdecker werden nicht untereinander priorisiert.

Aus den gefundenen Bedarfsdeckern können dann die Verfügbarkeitsklassen initialisiert werden. Für jedes Datum wird aufsteigend ein Verfügbarkeitsdatenpunkt erzeugt und die kumulierte Menge übernommen. Bei doppelten Datumseinträgen werden die Mengen einfach addiert (vgl. Class 1). Jede Verfügbarkeitsklasse hat einen eindeutigen Identifier, im Beispiel der Einfachheit halber sprechend benannt.

Availability Entries (Tabelle mit Type, Priority, Class 1 und 2, Date)

Beispiel: Verfügbarkeitsklassen direkt nach der Initialisierung

Suche nach passendem Verfügbarkeitsdatenpunkt

Die Bedarfsverursacher werden im nächsten Schritt entsprechend ihrer Priorität sortiert und bekommen nacheinander Mengen aus den Verfügbarkeitsdatenpunkten zugewiesen. Wenn das Bedarfsdatum keinem Datum eines Verfügbarkeitsdatenpunktes entspricht, so wird der Verfügbarkeitsdatenpunkt mit dem nächstkleineren Datum ausgewählt.

Availability Entries (Tabelle)

Beispiel: Zuweisung von Verfügbarkeitsposten zu Verfügbarkeitsdatenpunkten

Zuweisung von verfügbaren Mengen

Sobald der passende Verfügbarkeitsdatenpunkt ermittelt wurde, wird die Menge des Verfügbarkeitsdatenpunktes um die Bedarfsmenge reduziert. Da es sich bei den Mengen der Verfügbarkeitsdatenpunkte um kumulierte Mengen handelt, werden auch die Mengen in den benachbarten Verfügbarkeitsdatenpunkten reduziert.

Bei der Zuweisung von Mengen werden ausschließlich Bedarfsmengen und Bedarfsdaten betrachtet. Welcher ausgehende Verfügbarkeitsposten durch welchen eingehenden Verfügbarkeitsposten bedient wird, spielt bis auf einige Sonderfälle überhaupt keine Rolle. Das bedeutet, dass zum Beispiel ein Verkaufsauftrag, der gegen eine Bestellung reserviert ist, in der Berechnung nicht unbedingt auch von dieser Bestellung bedient wird. Durch das Konzept der Zuteilungsprioritäten, wird aber dennoch sichergestellt, dass am Ende das korrekte Ergebnis herauskommt und Bedarfsdecker nicht von anderen Bedarfsmengen beansprucht werden können.

Das Konzept funktioniert, weil reservierte Mengen grundsätzlich verfügbar sind, da sonst keine Reservierung möglich wäre und somit Konflikte zwischen zwei Reservierungen ausgeschlossen sind. Der einzige Fall in dem eine reservierte Menge nicht verfügbar ist tritt ein, wenn ein Warenausgang mit dieser Menge bedient werden muss. Warenausgänge sind per Definition als erstes zu bedienen. Auch in diesem Fall kann kein Konflikt zwischen zwei Reservierungen entstehen, da das Warenausgangsdatum an das Reservierungsdatum gekoppelt ist: Das Warenausgangsdatum kann nicht vor dem Reservierungsdatum liegen, das nicht vor dem Wareneingangsdatum des eingehenden Beleges liegen kann. Somit kann die Reservierung mit dem früheren Datum nicht einfach die Menge einer anderen Reservierung zugeteilt bekommen. Auch im Falle von Reservierungen gegen Lagerbestand entsteht hier kein Problem, weil Lagerbestand wiederum als Menge ohne Datum betrachtet wird. Fällt also reservierter Lagerbestand durch einen Warenausgang weg, gewinnt die Reservierung, deren zugrundeliegende Belegzeile gemäß Sortierung zuerst bedient wird.

Availability Entries (Tabelle: Legend, Initial, Direct Allocation, Caryover)

Beispiel: Zuweisung von verfügbaren Mengen zu Bedarfsmengen

Erklärung zum Beispiel

Die Verfügbarkeitsdatenpunkte (VDP) werden im Folgenden mit ihrem Datum bezeichnet.

  1. Bedarfsmenge 11 am 01.03.20: Der VDP 01.03.20 wird gewählt. Zwischen VDP 01.03.20 und seinem linken Nachbarn, gab es einen Zuwachs von 10. VDP 01.03.20 kann also die Bedarfsmenge 10 bedienen und die Restmenge 1 muss noch von VDP 01.02.20 bedient werden.
  2. Bedarfsmenge 5 am 05.01.20: VDP 05.01.20 wird gewählt. Zuwachs von Menge 5 zwischen VDP 05.01.20 und seinem linken Nachbarn. VDP 05.01.20 kann die Bedarfsmenge 5 vollständig bedienen. Alle nachfolgenden VDP müssen verringert werden, da die Mengen ja kumulativ sind.
  3. Bedarfsmenge 4 am 04.01.20: VDP 0D wird gewählt. 0D bedeutet, dass es sich um Lagerbestand handelt. Lagerbestand von 10 ist vorhanden, also kann die Bedarfsmenge 4 vollständig bedient werden. Alle nachfolgenden VDP müssen verringert werden.
  4. Bedarfsmenge 2 am 07.02.20: VDP 01.02.20 wird gewählt. Zwischen VDP 01.02.20 und seinem linken Nachbarn ist von dem ursprünglichen Zuwachs von 10 noch die Menge 9 übrig (vgl. Punkt 1.). Die Bedarfsmenge 2 kann komplett bedient werden. Alle nachfolgenden VDP müssen verringert werden.
  5. Bedarfsmenge 5 am 01.01.20: Obwohl das Fälligkeitsdatum früher als bei den anderen Verfügbarkeitsposten ist, ist dieser bei der Zuweisung erst jetzt an der Reihe, da Verkaufsaufträge Priorität vor Umlagerungsaufträgen haben. VPD 0D wird gewählt. Bedarfsmenge 5 kann vollständig bedient werden. Alle nachfolgenden VDP müssen verringert werden.