Ansicht
Dokumentation

/SAPAPO/CL_PFCS_OUTLCNTRL_BADI - Beispielimplementierung zum Ausreißerkorrektur BAdI

/SAPAPO/CL_PFCS_OUTLCNTRL_BADI - Beispielimplementierung zum Ausreißerkorrektur BAdI

ROGBILLS - Synchronize billing plans   rdisp/max_wprun_time - Maximum work process run time  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Funktionalität

Die Implementierung in dieser Klasse stellt ein Beispiel für die Definition einer Ausreißerkorrektur des Bedarfs im BAdI /SAPAPO/BADI_OUTLIER_CTRL dar. Die hier definierte Ausreißerkorrektur ist besonders geeignet für langsam drehende Lokationsprodukte. Sie basiert auf Medianen und Interquartilsabständen (IQR).

In dieser Implementierung nutzt das System folgende Importparameter:

  • Zeitreihen der Vergangenheitsdaten
In dieser Beispiel-Implementierung wird nur die Zeitreihe der finalen Vergangenheit für den Bedarf angepasst. Möglicherweise kann sich dadurch die Relation der einzelnen Parameter zueinander ändern. Gegebenenfalls können Sie die Zeitreihe des zweiten Parameters anpassen.
  • Parameter für Ausreißerkorrektur, den Sie im Prognoseprofil auf der Registerkarte Allgemein im Feld Parameter: Ausreißerkorrektur für Bedarf(/SAPAPO/OUTLIER_CNTRL_PC) angegeben haben. Wenn Sie in diesem Feld keine Angabe gemacht haben, plant das System mit dem Wert 1,25.
Zum Prognoseprofil gelangen Sie vom Bild SAP Easy Access über Advanced Planning and Optimization -> Ersatzteilplanung (SPP) -> Planung -> Prognose -> Prognoseprofil.

Bei der hier implementierten Ausreißerkorrektur geht das System folgendermaßen vor:

  1. Das System sortiert die Vergangenheitsdaten aufsteigend und teilt sie in zwei gleich große Gruppen ein. Eine Gruppe enthält die niedrigeren, die andere Gruppe die höheren Vergangenheitswerte.
Wenn die Zahl der Vergangenheitswerte ungerade ist, teilt das System die Vergangenheitswerte in zwei gleich große Gruppen ein, indem es den Median beiden Gruppen zuordnet.
Beispiel 1:
  1. Folgende Vergangenheitsdaten liegen vor:
  53 47 34 42 56 100 45 2

  1. Das System sortiert diese Vergangenheitsdaten aufsteigend:
  2 34 42 45 47 53 56 100

  1. Das System bildet zwei gleich große Gruppen.
Die Gruppe mit den niedrigen Werten sieht folgendermaßen aus:
  2 34 42 45

Die Gruppe mit den hohen Werten sieht folgendermaßen aus.
  47 53 56 100

Beispiel 2:
  1. Folgende Vergangenheitsdaten liegen vor:
  53 47 14 42 56 100 45 2 49

  1. Das System sortiert diese Vergangenheitsdaten aufsteigend:
  2 14 42 45 47 49 53 56 100

  1. Das System bildet zwei gleich große Gruppen.
Die Gruppe mit den niedrigen Werten sieht folgendermaßen aus:
  2 14 42 45 47

  1. Die Gruppe mit den hohen Werten sieht folgendermaßen aus.
  47 49 53 56 100

  1. Das System ermittelt die Mediane der beiden Gruppen.
  • Wenn die beiden Gruppen jeweils aus einer geraden Anzahl an Vergangenheitswerten bestehen, so ist der Median jeweils der Durchschnitt der beiden mittleren Werte einer Gruppe.

Beispiel 1:
Eine Gruppe besteht aus folgenden Vergangenheitswerten:
  2 34 42 45

Der Median ist in diesem Fall der Durchschnitt aus 34 und 42, also 38.
Die andere Gruppe besteht aus folgenden Vergangenheitswerten:
  47 53 56 100

Der Median ist in diesem Fall der Durchschnitt aus 53 und 56, also 54,5.
  • Wenn die beiden Gruppen jeweils aus einer ungeraden Anzahl an Vergangenheitswerten bestehen, so ist der Median jeweils der mittlere Wert.

Beispiel 2:
Eine Gruppe besteht aus folgenden Vergangenheitswerten:
  2 14 42 45 47

Der Median ist in diesem Fall 42.
Die andere Gruppe besteht aus folgenden Vergangenheitswerten:
  47 49 53 56 100

Der Median ist in diesem Fall 53.
Der Median der ersten Gruppe (M1) bildet das Ende des ersten Quartils der Vergangenheitsdaten.
Der Median der zweiten Gruppe (M3) bildet das Ende des dritten Quartils der Vergangenheitsdaten.
  1. Das System bestimmt den Interquartilsabstand zwischen dem dritten und dem ersten Quartil, indem es den Wert von M1 vom Wert M3 abzieht.
Beispiel 1:
In oben beschriebener Zahlenreihe ist der Interquartilsabstand 54,5 - 38 = 16,5.
Beispiel 2:
In oben beschriebener Zahlenreihe ist der Interquartilsabstand 53 - 42 = 11.
  1. Das System ermittelt den Bereich, in dem Vergangenheitsdaten liegen müssen, um nicht als Ausreißer zu gelten.
  • Die Obergrenze dieses Bereichs ermittelt das System folgendermaßen:

Obergrenze = M3 + Ausreißerkorrekturparameter * Interquartilsabstand
  • Die Untergrenze dieses Bereichs ermittelt das System folgendermaßen:

Untergrenze = M1 - Ausreißerkorrekturparameter * Interquartilsabstand
Wenn das Ergebnis dieser Berechnung negativ ist, setzt das System die Untergrenze auf Null.
Beispiel 1:
Für oben beschriebene Zahlenreihe und einen Ausreißerkorrekturparameter von 1,25 geht das System folgendermaßen vor:
Obergrenze = 54,5 + 1,25 * 16,5 = 75,125
Untergrenze = 38 - 1,25 * 16,5 = 17,375
Beispiel 2:
Für oben beschriebene Zahlenreihe und einen Ausreißerkorrekturparameter von 1,25 geht das System folgendermaßen vor:
Obergrenze = 53 + 1,25 * 11 = 66,75
Untergrenze = 42 - 1,25 * 11 = 28,25
  1. Das System definiert alle Vergangenheitswerte, die außerhalb dieser Grenze liegen, als Ausreißer und setzt diese auf die ermittelten Grenzen.
Beispiel 1:
Bei oben beschriebenen Vergangenheitsdaten definiert das System folgende Werte als Ausreißer:
  2 100

Das heißt, das System erstellt die Prognose in diesem Fall auf der Basis der folgenden Vergangenheitswerte:
  17,375 34 42 45 47 53 56 75,125

Beispiel 2:
Bei oben beschriebenen Vergangenheitsdaten definiert das System folgende Werte als Ausreißer:
  2 14 100

Das heißt, das System erstellt die Prognose in diesem Fall auf der Basis der folgenden Vergangenheitswerte:
  28,25 28,25 42 45 47 49 53 56 66,75

Beziehungen

Beispiel

Hinweise

Weiterführende Informationen






General Data in Customer Master   General Data in Customer Master  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 12718 Date: 20240425 Time: 035842     sap01-206 ( 94 ms )