Ihr Produktionsplanungsdaten-Template
Ihr Produktionsplanungsdaten-Template
- Empfohlene Attribute für die Produktionsplanungsanalyse
- Wichtige Aktivitäten der Produktionsplanung zur Nachverfolgung
- Detaillierte Anleitung zur Datenextraktion für SAP S/4HANA
Produktionsplanungs-Attribute
| Name | Beschreibung | ||
|---|---|---|---|
| Aktivität Activity | Der Name des spezifischen Event oder der Aufgabe, das/die zu einem bestimmten Zeitpunkt innerhalb des Produktionsplanungsprozesses aufgetreten ist. | ||
| Beschreibung Dieses Attribut erfasst die einzelnen Schritte und Meilensteine im Lebenszyklus des Fertigungsauftrags. Beispiele sind 'Fertigungsauftrag angelegt', 'Materialverfügbarkeit geprüft', 'Produktion gestartet' und 'Auftrag finanziell abgeschlossen'. Jede Aktivität repräsentiert eine spezifische Aktion oder Statusänderung, die im System dokumentiert ist. Die Analyse der Reihenfolge und Häufigkeit dieser Aktivitäten ist der Kern des Process Mining. Es hilft, den Prozessfluss zu visualisieren, Abweichungen vom Standardverfahren zu identifizieren und Aktivitäten zu lokalisieren, die Verzögerungen verursachen oder häufige Nacharbeiten erfordern, wie z. B. 'Produktionsplan angepasst'. Bedeutung Es definiert die Schritte des Prozesses und ermöglicht die Entdeckung und Visualisierung des tatsächlichen Produktions-Workflows und seiner Variationen. Datenquelle Abgeleitet aus Statusänderungen in Tabellen wie JEST und JCDS, verwendeten Transaktionscodes (z. B. CO01 für Anlegen) oder spezifischen Rückmeldungsdatensätzen in AFRU. Beispiele Fertigungsauftrag angelegtFertigungsauftrag freigegebenProduktion gestartetEndrückmeldung eingegeben`Wareneingang` gebucht | |||
| Fertigungsauftrag ProductionOrder | Der eindeutige Identifikator für einen Fertigungsauftrag, der als primärer Case Identifier für den Produktionsplanungsprozess dient. | ||
| Beschreibung Die Fertigungsauftragsnummer ist ein eindeutiger Schlüssel, der von SAP S/4HANA generiert wird, um alle Aktivitäten im Zusammenhang mit der Fertigung einer bestimmten Produktmenge zu verwalten und zu verfolgen. Sie verknüpft alle zugehörigen Events, von der Planung und Freigabe bis zur Ausführung und endgültigen Abrechnung. Im Process Mining ist dieses Attribut unerlässlich, um alle zugehörigen Events zu einer einzigen End-to-End-Prozessinstanz zusammenzufassen. Die Analyse von Prozessen nach Fertigungsauftrag ermöglicht die Messung wichtiger Leistungskennzahlen wie Cycle Time, Termintreue und die Identifizierung von Bottlenecks, die spezifische Produktionsläufe beeinflussen. Bedeutung Es ist das grundlegende Attribut, das alle Prozessschritte verbindet und eine vollständige Case-Level-Analyse des Produktionslebenszyklus von Anfang bis Ende ermöglicht. Datenquelle Dies ist die Fertigungsauftragsnummer, die typischerweise in SAP-Tabellen wie AFKO (Feld AUFNR) und AFPO zu finden ist. Beispiele 100056710008341001299 | |||
| Startzeit StartTime | Der Timestamp, der den Beginn einer bestimmten Aktivität oder eines Events anzeigt. | ||
| Beschreibung Dieses Attribut liefert das Datum und die Zeit für jedes erfasste Event im Produktionsprozess. Es ist die zeitliche Grundlage für alle zeitbasierten Prozessanalysen. Die Start Time ist entscheidend für die Berechnung von Dauern zwischen Aktivitäten, die Messung der gesamten Cycle Time eines Fertigungsauftrags und das Verständnis des Timings von Events. Es ermöglicht die Analyse von Engpässen, Wartezeiten und Termintreue durch den Vergleich tatsächlicher Timestamps mit geplanten Daten. Bedeutung Es liefert den chronologischen Kontext für alle Ereignisse, wodurch es möglich wird, Prozess-Performance, Dauern und Engpässe zu analysieren. Datenquelle Diese Informationen finden sich typischerweise in Änderungsbelegtabellen (CDHDR/CDPOS) für Statusänderungen, Rückmeldetabellen (AFRU) für Ausführungsschritte und Kopf-Tabellen (AFKO) für Erstellungsdaten. Beispiele 2023-10-26T09:00:00Z2023-10-26T14:30:00Z2023-10-27T08:15:00Z | |||
| Letzte Datenaktualisierung LastDataUpdate | Der Timestamp, der angibt, wann die Daten zuletzt aktualisiert oder aus dem Quellsystem extrahiert wurden. | ||
| Beschreibung Dieses Attribut erfasst das Datum und die Zeit des letzten Data Pulls. Es ist ein kritisches Metadatenstück, das Benutzer über die Aktualität der von ihnen analysierten Daten informiert. Die Kenntnis der letzten Aktualisierungszeit ist für die korrekte Interpretation der Analyse unerlässlich. Es hilft Benutzern zu verstehen, ob sie Echtzeitinformationen oder eine Momentaufnahme zu einem bestimmten Zeitpunkt betrachten, was die Relevanz von Erkenntnissen und darauf basierenden Entscheidungen beeinflusst. Bedeutung Es stellt sicher, dass Benutzer über die Aktualität der Daten informiert sind, was für genaue und relevante Geschäftsentscheidungen entscheidend ist. Datenquelle Dieser Beispiele 2024-05-21T02:00:00Z2024-05-22T02:00:00Z2024-05-23T02:00:00Z | |||
| Quellsystem SourceSystem | Das System, aus dem die Produktionsplanungsdaten extrahiert wurden. | ||
| Beschreibung Dieses Attribut identifiziert den Ursprung der Daten, was in Umgebungen mit mehreren integrierten Systemen unerlässlich ist. Für diesen Prozess ist es typischerweise die spezifische SAP S/4HANA Instanz. In einem breiteren Data Analysis Kontext hilft die Kenntnis des Quellsystems, die Datenintegrität sicherzustellen und einen geeigneten Kontext beim Zusammenführen von Daten aus verschiedenen Quellen zu ermöglichen. Es ist ein grundlegendes Metadatenstück für Data Governance und Nachvollziehbarkeit. Bedeutung Es liefert entscheidende Metadaten für die Data Governance und stellt sicher, dass der Ursprung und Kontext der Prozessdaten klar sind. Datenquelle Dies ist typischerweise ein statischer Wert, der während des Data Extraction Prozesses hinzugefügt wird, um den SAP S/4HANA Client und die System-ID (SID) zu identifizieren. Beispiele S4P_100S4H_PRD_200S4Q_300 | |||
| `Materialnummer` MaterialNumber | Der eindeutige Identifikator für das Produkt, das im Fertigungsauftrag hergestellt wird. | ||
| Beschreibung Die Materialnummer spezifiziert den Artikel, den der Fertigungsauftrag produzieren soll. Sie verknüpft den Produktionsprozess mit den Stammdaten des Materials, einschließlich seiner Stückliste (BOM) und Arbeitsplaninformationen. Die Analyse des Prozesses nach Materialnummer hilft zu identifizieren, ob bestimmte Produkte anfälliger für Verzögerungen, Nacharbeiten oder Materialengpässe sind. Dies ermöglicht eine produktspezifische Prozessoptimierung, wie die Anpassung von Planungsparametern oder die Verbesserung der Lieferkette für spezifische Komponenten. Bedeutung Es ermöglicht die Filterung und Analyse basierend auf dem hergestellten Produkt und deckt produktspezifische Ineffizienzen oder Engpässe auf. Datenquelle Gefunden in der Positionstabelle des Fertigungsauftrags AFPO (Feld MATNR). Beispiele RM-1001FG-2050SA-3100-B | |||
| Arbeitsplatz WorkCenter | Die spezifische Maschine, Maschinengruppe oder der Montagebereich, der für einen Vorgang zuständig ist. | ||
| Beschreibung Ein Arbeitsplatz repräsentiert eine spezifische operative Einheit innerhalb eines Werks, in der ein Produktionsschritt durchgeführt wird. Es kann eine einzelne Maschine, eine Produktionslinie oder eine Gruppe von Mitarbeitern sein. Die Analyse von Prozessdaten nach Arbeitsplatz ist entscheidend für die Identifizierung von Kapazitätsengpässen und die Optimierung der Ressourcenallokation. Sie hilft, Fragen zu beantworten, welche Arbeitsplätze überlastet, welche unterausgelastet sind und wo Verzögerungen während der Produktionsausführungsphase am häufigsten auftreten. Dies ist entscheidend für das Dashboard zur Identifikation von Kapazitätsengpässen. Bedeutung Es hilft, spezifische Maschinen oder Produktionslinien zu identifizieren, die Engpässe darstellen, und ermöglicht gezielte Verbesserungen der Kapazitäts- und Ressourcenauslastung. Datenquelle Gefunden in den Arbeitsgangdaten eines Fertigungsauftrags, Tabelle AFVC (Feld ARBPL). Beispiele AP-MONTAGE-01AP-FRÄSEN-05AP-VERPACKUNG | |||
| Auftragsstatus OrderStatus | Der aktuelle Bearbeitungsstatus des Fertigungsauftrags, z. B. Angelegt, Freigegeben oder Technisch abgeschlossen. | ||
| Beschreibung Der Auftragsstatus gibt die Gesamtphase des Fertigungsauftrags in seinem Lebenszyklus an. Er ist eine Zusammenfassung der verschiedenen System- und Benutzerstatus, die auf den Auftrag angewendet werden. Gängige Status sind CRTD (Angelegt), REL (Freigegeben), CNF (Rückgemeldet), TECO (Technisch abgeschlossen) und CLSD (Abgeschlossen). Die Analyse des aktuellen Auftragsstatus ist nützlich, um den Überblick über laufende Arbeiten zu erhalten. Im Process Mining ist die Verfolgung der Übergänge zwischen diesen Status über die Zeit hinweg das, was das Event Log generiert und eine detaillierte Ansicht des Prozessflusses sowie der in jeder Phase verbrachten Dauern ermöglicht. Bedeutung Es bietet eine übergeordnete Sicht auf die Lebenszyklusphase eines Auftrags und ist grundlegend für die Ableitung der Abfolge von Aktivitäten für Process Mining. Datenquelle Abgeleitet vom Systemstatus, der in Tabelle JEST gespeichert ist, verknüpft über die Objektnr. in AFKO (Feld OBJNR). Beispiele CRTDRELTECOCLSD | |||
| Geplantes Enddatum PlannedEndDate | Das geplante Fertigstellungsdatum für den Fertigungsauftrag gemäß dem ursprünglichen Plan. | ||
| Beschreibung Das geplante Enddatum ist der Zieldatum, bis zu dem alle Produktionsaktivitäten für einen Auftrag abgeschlossen sein sollen. Dieses Attribut ist unerlässlich zur Messung der Termintreue. Durch den Vergleich des geplanten Enddatums mit dem tatsächlichen Abschluss-Timestamp können Organisationen die Production Schedule Adherence Rate KPI berechnen und verspätete Aufträge identifizieren. Diese Analyse ist entscheidend für die Verbesserung der Planungsgenauigkeit und der Kundenzufriedenheit. Bedeutung Es dient als Basis für die Messung der Termintreue und hilft, die Genauigkeit der Planung und die Effizienz der Ausführung zu bewerten. Datenquelle Gefunden in der Kopfzeilentabelle des Fertigungsauftrags AFKO (Feld GLTRP). Beispiele 2023-11-152023-12-012024-01-20 | |||
| Werk Plant | Die Fertigungsstätte oder der Standort, an dem der Fertigungsauftrag ausgeführt wird. | ||
| Beschreibung Das Werk ist eine Organisationseinheit in SAP, die einen Produktionsstandort oder eine Fertigungsstätte darstellt. Jeder Fertigungsauftrag wird einem spezifischen Werk zugewiesen, in dem die Fertigungsaktivitäten stattfinden werden. Dieses Attribut ist entscheidend für die vergleichende Analyse über verschiedene Fertigungsstandorte hinweg. Durch die Segmentierung der Prozessdaten nach Werk können Organisationen die Leistung benchmarken, standortspezifische Probleme oder Best Practices identifizieren und regionale Unterschiede in Effizienz, Kapazität oder Einhaltung von Standards verstehen. Bedeutung Es ermöglicht den Performance-Vergleich zwischen verschiedenen Produktionsstandorten und hilft dabei, Best Practices zu identifizieren und zu teilen oder standortspezifische Probleme anzugehen. Datenquelle Gefunden in der Kopfzeilentabelle des Fertigungsauftrags AFKO (Feld DWERK). Beispiele 100017102000 | |||
| Auftragsart OrderType | Eine Klassifizierung des Fertigungsauftrags, die seinen Zweck definiert und dessen Verarbeitung steuert. | ||
| Beschreibung Die Auftragsart ist ein zentrales Konfigurationselement in SAP PP, das festlegt, wie ein Fertigungsauftrag vom System behandelt wird. Sie steuert Nummernkreise, Stammdatenauswahl, Kostenparameter und Abrechnungsregeln. Beispiele hierfür sind Standard-Fertigungsaufträge, Nacharbeitsaufträge oder Prototypenaufträge. Die Analyse des Prozesses nach Auftragsart ermöglicht den Vergleich der Leistung und des Ablaufs verschiedener Arten von Produktionsprozessen. Dies kann aufzeigen, ob Nacharbeitsaufträge signifikant länger dauern oder ob bestimmte Auftragsarten anfälliger für Planungsanpassungen sind, was wertvolle Erkenntnisse für eine gezielte Prozessverbesserung liefert. Bedeutung Es ermöglicht die Segmentierung der Analyse nach dem Geschäftszweck des Auftrags, was den Vergleich zwischen Standardproduktion, Nacharbeit und anderen Prozessen ermöglicht. Datenquelle Gefunden in der Kopfzeilentabelle des Fertigungsauftrags AFKO (Feld AUART). Beispiele PP01PP03ZP01 | |||
| Benutzer User | Die System-ID des Benutzers, der ein Fertigungsauftrags-Event erstellt, geändert oder bestätigt hat. | ||
| Beschreibung Dieses Attribut erfasst die SAP-Benutzer-ID, die mit einer spezifischen Transaktion oder Statusänderung verknüpft ist, z. B. der Freigabe eines Auftrags oder der Eingabe einer Rückmeldung. Es bietet Nachvollziehbarkeit für im System vorgenommene Aktionen. Die Analyse von Aktivitäten nach User hilft, die Arbeitslastverteilung zu verstehen, Schulungsbedarfe zu identifizieren und die Compliance mit Verfahren sicherzustellen. Zum Beispiel kann es aufzeigen, ob bestimmte Benutzer häufig in Plananpassungen involviert sind oder ob Verzögerungen mit spezifischen Teams verbunden sind. Bedeutung Es schafft Verantwortlichkeit und ermöglicht die Analyse von Arbeitslast, benutzerspezifischem Verhalten und potenziellen Schulungsmöglichkeiten. Datenquelle Typischerweise in Änderungsbelegköpfen (CDHDR, Feld UNAME) oder Rückmeldebelegen (AFRU, Feld PERNR für Personalnummer) zu finden. Beispiele CB9980000021JSMITHPLANNER01 | |||
| Bestätigte Menge TotalConfirmedQuantity | Die Gesamtmenge des Materials, die für den Auftrag als produziert bestätigt wurde. | ||
| Beschreibung Dieses Attribut stellt die kumulierte Menge an Fertig- oder Halbfertigprodukten dar, die durch Produktionsrückmeldungen gemeldet wurden. Es verfolgt den Fortschritt des Auftrags auf sein Abschlussziel hin. Der Vergleich der rückgemeldeten Menge mit der geplanten Menge hilft bei der Überwachung des Produktionsfortschritts und der Identifizierung von Ausbeuteproblemen oder Diskrepanzen. Es ist ein grundlegendes Maß für den Output und wird in verschiedenen Leistungskennzahlen, einschließlich Ausschussraten und Effizienz, verwendet. Bedeutung Es verfolgt den tatsächlichen Output des Fertigungsauftrags, was für die Fortschrittsüberwachung, die Berechnung des Ertrags und die Identifizierung von Diskrepanzen unerlässlich ist. Datenquelle Aggregiert aus Rückmeldungsdatensätzen in AFRU (Feld LMNGA für Ausbeutemenge). Beispiele 9801000501200 | |||
| Endzeit EndTime | Der Zeitstempel, der angibt, wann eine bestimmte Aktivität oder ein Ereignis abgeschlossen wurde. | ||
| Beschreibung Dieses Attribut liefert das Abschlussdatum und die -zeit für jedes erfasste Event. Es ergänzt die Start Time, um die Dauer von Aktivitäten zu definieren. Die End Time ist entscheidend für die Berechnung der präzisen Verarbeitungszeit einzelner Aktivitäten, was eine wichtige Eingabe für die Kapazitäts- und Ressourcenauslastungsanalyse ist. Es hilft, zwischen aktiver Arbeitszeit und Leerlauf- oder Wartezeit zu unterscheiden, was zu einer genaueren Engpass-Identifizierung führt. Bedeutung Es ermöglicht die Berechnung präziser Aktivitätsdauern, was für die Analyse der Ressourceneffizienz und die Identifizierung von Prozessengpässen unerlässlich ist. Datenquelle Gefunden in Rückmeldungstabellen (AFRU) für Ausführungsschritte. Für andere Ereignisse kann es dasselbe wie die Startzeit sein, wenn das Ereignis instantan ist. Beispiele 2023-10-26T09:45:00Z2023-10-26T15:00:00Z2023-10-27T10:30:00Z | |||
| Geplantes Startdatum PlannedStartDate | Das geplante Startdatum für den Fertigungsauftrag gemäß dem ursprünglichen Plan. | ||
| Beschreibung Das geplante Startdatum ist der Zieldatum, bis zu dem die Produktionsaktivitäten für einen Auftrag beginnen sollen. Dies ist ein wesentliches Ergebnis des Terminierungsprozesses. Dieses Attribut bietet die Ausgangsbasis für die Analyse der Termintreue. Der Vergleich des geplanten Startdatums mit dem tatsächlichen Startzeitpunkt hilft, Verzögerungen am Anfang des Prozesses zu verstehen, wie z. B. Verzögerungen bei der Materialbereitstellung oder Auftragsfreigabe, die Kaskadeneffekte auf die gesamte Produktionszeitachse haben können. Bedeutung Es bietet eine Basis für die Messung der Startzeit-Einhaltung, was entscheidend ist, um Verzögerungen in Vorproduktionsphasen wie Auftragsfreigabe und Materialverfügbarkeit zu identifizieren. Datenquelle Gefunden in der Kopfzeilentabelle des Fertigungsauftrags AFKO (Feld GSTRP). Beispiele 2023-11-102023-11-252024-01-15 | |||
| Ist Nacharbeit IsRework | Ein Kennzeichen, das anzeigt, ob ein Fertigungsauftrag Nacharbeit oder wesentliche Plananpassungen nach dem Start beinhaltete. | ||
| Beschreibung Dieses boolesche Attribut wird abgeleitet, um Fertigungsaufträge zu identifizieren, die Korrekturmaßnahmen oder Planänderungen erfahren haben, nachdem die Produktion bereits angelaufen war. Dies könnte durch eine explizite Nacharbeitsaktivität oder ein Event 'Produktionsplan angepasst' ausgelöst werden, das nach 'Produktion gestartet' auftritt. Dieses Flag ist entscheidend für die Berechnung des Production Rework Rate KPI und für das Production Rework and Revisions Dashboard. Es ermöglicht eine einfache Filterung und Analyse problematischer Cases und hilft, die Grundursachen von Qualitätsproblemen oder Prozessabweichungen aufzudecken, die zu kostspieligen Nacharbeiten führen. Bedeutung Es isoliert Fälle mit Nacharbeit und ermöglicht eine gezielte Analyse, um Qualitätsprobleme, Prozessabweichungen und damit verbundene Kosten zu verstehen und zu reduzieren. Datenquelle Berechnetes Feld. Auf 'wahr' gesetzt, wenn eine Aktivität 'Produktionsplan angepasst' nach einer Aktivität 'Produktion gestartet' innerhalb desselben Case auftritt oder wenn ein spezifischer Nacharbeitsauftragstyp verwendet wird. Beispiele truefalsch | |||
| Materialverfügbarkeitsstatus MaterialAvailabilityStatus | Gibt an, ob alle erforderlichen Materialien für den Fertigungsauftrag verfügbar sind. | ||
| Beschreibung Dieser Status spiegelt das Ergebnis der Materialverfügbarkeitsprüfung wider, die für einen Fertigungsauftrag durchgeführt wurde. Er kann anzeigen, dass alle Materialien verfügbar sind, einige fehlen oder die Prüfung nicht durchgeführt wurde. Ein Status 'Engpass' ist ein wichtiger Auslöser für potenzielle Verzögerungen. Dieses Attribut ist entscheidend für das Material Shortage Impact Analysis Dashboard. Es hilft, die durch Materialunverfügbarkeit verursachten Verzögerungen zu quantifizieren, indem es einen Engpass-Status mit der Zeit zwischen Auftragsfreigabe und Produktionsbeginn korreliert. Die Verbesserung dieser Metrik ist der Schlüssel zu einem reibungsloseren Produktionsfluss. Bedeutung Es erklärt direkt Verzögerungen zwischen Auftragsfreigabe und Produktionsstart und hilft, die Auswirkungen von Lieferkettenproblemen auf die Fertigung zu quantifizieren. Datenquelle Dies ist ein Status, der oft aus dem kollektiven Status von Materialkomponenten abgeleitet wird. Er findet sich im Systemstatus (JEST) mit Status wie 'MSPT' (Materialmangel). Beispiele VerfügbarEngpassNicht geprüft | |||
| Produktionsdurchlaufzeit ProductionCycleTime | Die Gesamtzeit, die vom Freigabezeitpunkt eines Fertigungsauftrags bis zu seiner technischen Fertigstellung vergangen ist. | ||
| Beschreibung Diese berechnete Metrik misst die End-to-End-Dauer des Lebenszyklus eines Fertigungsauftrags in der Ausführung. Sie ist ein wichtiger Key Performance Indicator (KPI), der die Gesamteffizienz des Produktionsprozesses widerspiegelt. Dieses Attribut ist das primäre Maß für das Production Order Lead Time Overview Dashboard und den Average Production Order Cycle Time KPI. Die Analyse seiner Komponenten, wie Wartezeiten versus Bearbeitungszeiten, hilft, die größten Möglichkeiten zur Prozessbeschleunigung und Durchlaufzeitverkürzung zu identifizieren. Bedeutung Dies ist ein kritischer KPI zur Messung der gesamten Produktionseffizienz und zur Identifizierung von Möglichkeiten zur Beschleunigung der Auftragserfüllung. Datenquelle Berechnet durch Ermittlung der Dauer zwischen der Aktivität 'Fertigungsauftrag freigegeben' und der Aktivität 'Auftrag technisch abgeschlossen' für jeden Fertigungsauftrag. Beispiele P5DT12H30MP10DT2HP3D | |||
| Produktionspriorität ProductionPriority | Ein Code oder Wert, der einem Fertigungsauftrag zugewiesen wird, um seine Dringlichkeit oder Wichtigkeit anzuzeigen. | ||
| Beschreibung Die Produktionspriorität wird von Planern und Disponenten verwendet, um Aufträge zu sequenzieren und zu priorisieren, insbesondere wenn Ressourcen begrenzt sind. Ein Auftrag mit höherer Priorität sollte idealerweise vor einem Auftrag mit niedrigerer Priorität bearbeitet werden. Die Analyse dieses Attributs hilft zu beurteilen, ob die zugewiesenen Prioritäten in der Fertigung eingehalten werden. Das Production Prioritization Consistency Dashboard vergleicht die Bearbeitungsreihenfolge mit der zugewiesenen Priorität, um Inkonsistenzen zu identifizieren, was zu einer verbesserten Planungsdisziplin und einer besseren Abstimmung zwischen Planung und Ausführung führen kann. Bedeutung Es hilft festzustellen, ob die Produktionsplanung den Geschäftsprioritäten folgt, und stellt sicher, dass kritische Aufträge wie beabsichtigt beschleunigt werden. Datenquelle Dies ist oft ein benutzerdefiniertes Feld oder basiert auf anderen Auftragsparametern. Ein spezifischer Ort ist konfigurationsabhängig. Beispiele HochMittelNiedrig15 | |||
| Termingerecht IsOnTime | Ein Kennzeichen, das anzeigt, ob der Fertigungsauftrag am oder vor seinem geplanten Enddatum abgeschlossen wurde. | ||
| Beschreibung Dieses berechnete boolesche Attribut misst direkt die Termintreue, indem es das tatsächliche Abschlussdatum mit dem geplanten Enddatum vergleicht. Es liefert ein klares, binäres Ergebnis für die Pünktlichkeit jedes Fertigungsauftrags. Dieses Attribut ist die Basis für die Production Schedule Adherence Rate KPI. Es vereinfacht die Analyse, indem es eine einfache Segmentierung von pünktlichen gegenüber verspäteten Aufträgen ermöglicht und hilft, gemeinsame Merkmale oder Prozesspfade zu identifizieren, die mit Verzögerungen verbunden sind. Bedeutung Es bietet ein klares und einfaches Maß für die Termintreue jedes Auftrags und erleichtert die Analyse der Grundursachen für Verzögerungen. Datenquelle Berechnetes Feld. Auf 'wahr' gesetzt, wenn der Timestamp der Aktivität 'Auftrag technisch abgeschlossen' kleiner oder gleich dem Attribut 'Geplantes Enddatum' ist. Beispiele truefalsch | |||
Produktionsplanungsaktivitäten
| Aktivität | Beschreibung | ||
|---|---|---|---|
| `Wareneingang` gebucht | Dieses Event erfasst den Wareneingang des fertigen Produkts von der Produktionslinie in den Bestand. Es erhöht formal den Lagerbestand des produzierten Materials. | ||
| Bedeutung Dies ist ein kritischer Meilenstein, der den Abschluss der Produktionsleistung darstellt. Er wird oft als Ende des Produktionszyklus zur Messung der pünktlichen Lieferung und der Gesamtvorlaufzeit betrachtet. Datenquelle Dies ist eine explizite Finanzbuchung, die in den Materialbelegtabellen MSEG (Positionsebene) und MKPF (Kopfebene) erfasst wird, typischerweise mit der Bewegungsart 101. Diese Belege sind mit dem Fertigungsauftrag verknüpft. Erfassen Materialbeleg in MSEG finden, der mit dem Auftrag mit Bewegungsart 101 verknüpft ist. Ereignistyp explicit | |||
| Auftrag technisch abgeschlossen | Dies ist ein administrativer Abschlussschritt, der weitere logistische Änderungen am Auftrag, wie Warenbewegungen oder Rückmeldungen, verhindert. Der Auftrag gilt aus logistischer Sicht als abgeschlossen. | ||
| Bedeutung TECO ist ein definierter Endpunkt für den Produktionsprozess, entscheidend für die Berechnung der gesamten Fertigungsauftragsdurchlaufzeit. Es signalisiert, dass alle logistischen Aktivitäten abgeschlossen sind und der Auftrag für die finanzielle Abrechnung bereit ist. Datenquelle Dies wird ausgelöst, indem ein Benutzer den Status auf TECO (Technisch abgeschlossen) setzt. Das Event wird als Statusänderung in der JCDS-Tabelle mit einem entsprechenden Timestamp erfasst. Erfassen Timestamp der Statusänderung zu 'TECO' in der JCDS-Tabelle. Ereignistyp inferred | |||
| Endrückmeldung eingegeben | Diese Aktivität markiert die Rückmeldung des letzten Vorgangs im Arbeitsplan des Fertigungsauftrags. Sie signalisiert, dass alle geplanten Fertigungsschritte in der Produktion abgeschlossen wurden. | ||
| Bedeutung Die Endrückmeldung ist ein entscheidender Meilenstein, der das Ende der physischen Produktionsarbeit anzeigt. Sie wird oft als präziserer Endpunkt zur Messung der Shop Floor Cycle Time vor dem endgültigen Wareneingang verwendet. Datenquelle Abgeleitet aus Rückmeldungsdaten in der AFRU-Tabelle. Es wird als der Rückmeldungsdatensatz für die letzte Arbeitsgangfolge (AFVC-VPLNR) identifiziert, bei dem das Kennzeichen 'Endrückmeldung' (AFRUD-AUERU) gesetzt ist. Erfassen Die letzte Arbeitsgangrückmeldung in AFRU mit gesetztem Endrückmeldungskennzeichen finden. Ereignistyp inferred | |||
| Fertigungsauftrag angelegt | Dies ist die erstmalige Erstellung des Fertigungsauftrags im System, die als formale Anforderung zur Produktion einer spezifizierten Produktmenge dient. Dieses Event wird explizit erfasst, wenn ein Benutzer einen neuen Auftrag speichert und dessen anfänglichen Status auf CRTD (Angelegt) setzt. | ||
| Bedeutung Markiert den Beginn des Fertigungsauftragslebenszyklus. Die Analyse der Zeit von der Erstellung bis zur Freigabe hilft, administrative oder Planungsverzögerungen zu identifizieren, bevor die Produktion offiziell geplant wird. Datenquelle Dieses Event wird in der Tabelle AUFK (Auftragsstammdaten) mit dem Erstellungsdatum (ERDAT) erfasst. Der Erstellungsstatus (CRTD) wird in den Tabellen JEST und JCDS protokolliert und ist über die Objektnr. des Auftrags (OBJNR) verknüpft. Erfassen Timestamp aus AUFK-ERDAT oder Statusänderungsprotokoll zu 'CRTD' in JCDS. Ereignistyp explicit | |||
| Fertigungsauftrag freigegeben | Dies ist ein wichtiger Meilenstein, bei dem der Fertigungsauftrag genehmigt und für die Ausführung in der Fertigung freigegeben wird. Die Freigabe ermöglicht den Beginn von Warenausgängen, Rückmeldungen und anderen Ausführungsschritten. | ||
| Bedeutung Dieses Event markiert den offiziellen Start des ausführbaren Produktionsprozesses und ist ein kritischer Punkt zur Messung von Durchlaufzeiten. Die Zeit zwischen Erstellung und Freigabe ist ein wichtiger KPI für die Effizienz der Vorproduktion. Datenquelle Die Freigabe wird explizit durch einen Benutzer oder einen System-Job ausgelöst, was zum Status REL führt. Diese Statusänderung wird mit einem Timestamp in der JCDS-Tabelle erfasst. Das Freigabedatum wird oft auch in AFKO-FTRMI gespeichert. Erfassen Timestamp der Statusänderung zu 'REL' in der JCDS-Tabelle. Ereignistyp inferred | |||
| Produktion gestartet | Zeigt den Beginn der physischen Produktionsaktivitäten für den Auftrag an. Dies wird typischerweise aus der ersten Fertigungsrückmeldung oder dem ersten Warenausgang von Komponenten gegen den Auftrag abgeleitet. | ||
| Bedeutung Diese Aktivität markiert den Übergang von der Planung zur Ausführung. Sie ist unerlässlich für die Verfolgung der Termintreue durch den Vergleich des tatsächlichen Startdatums mit dem geplanten Startdatum. Datenquelle Dies ist ein abgeleitetes Event. Es wird typischerweise vom frühesten Timestamp einer Warenbewegungsbuchung (Tabelle MSEG, Bewegungsart 261) oder einer Zeitrückmeldungsbuchung (Tabelle AFRU) abgeleitet, die dem Auftrag zugeordnet ist. Erfassen Frühester Timestamp aus AFRU (Rückmeldungen) oder MSEG (Warenbewegungen) für den Auftrag. Ereignistyp inferred | |||
| Produktionsplan angepasst | Stellt eine signifikante Änderung dar, die nach der Freigabe am Fertigungsauftrag vorgenommen wurde, z. B. eine Änderung der Menge, der Termine oder der Stückliste. Dies wird durch die Analyse von Änderungsbelegen erfasst. | ||
| Bedeutung Häufige Anpassungen können auf Planungsinstabilität oder volatile Nachfrage hinweisen. Diese Aktivität ist die Grundlage für den KPI der Produktionsplan-Revisionsrate und hilft, Quellen der Prozessvariabilität zu identifizieren. Datenquelle Abgeleitet aus Änderungslogs, die in den Tabellen CDHDR (Änderungsbelegkopf) und CDPOS (Änderungsbelegpositionen) für das Fertigungsauftragsobjekt (AUFK oder AFPO) aufgezeichnet wurden. Änderungen, die nach dem Freigabedatum vorgenommen werden, gelten als Anpassungen. Erfassen Änderungen in CDHDR/CDPOS für Schlüsselfelder (z. B. Menge, Daten) nach dem Freigabeereignis identifizieren. Ereignistyp inferred | |||
| Auftrag finanziell abgeschlossen | Der letzte Abschlussschritt, bei dem der Auftrag abgerechnet wird und keine weiteren Finanzbuchungen mehr möglich sind. Dies kennzeichnet das Ende des Auftragslebenszyklus aus Controlling- und Rechnungswesen-Sicht. | ||
| Bedeutung Obwohl oft außerhalb des Bereichs der reinen Produktionsanalyse, bietet diese Aktivität eine vollständige End-to-End-Ansicht. Sie kann helfen, die Zeit zwischen dem logistischen Abschluss (TECO) und dem finanziellen Abschluss zu analysieren. Datenquelle Dies wird ausgelöst, indem ein Benutzer den Status auf CLSD (Abgeschlossen) setzt. Das Event wird als Statusänderung in der JCDS-Tabelle mit einem entsprechenden Timestamp erfasst. Erfassen Timestamp der Statusänderung zu 'CLSD' in der JCDS-Tabelle. Ereignistyp inferred | |||
| Fertigungsauftrag storniert | Stellt die Stornierung eines Fertigungsauftrags vor dessen Abschluss dar. Dies ist ein alternativer, erfolgloser Endzustand für den Prozess. | ||
| Bedeutung Die Analyse stornierter Aufträge kann Probleme in der Bedarfsplanung, den Stammdaten oder im Vertriebsprozess aufzeigen. Hohe Stornierungsraten können auf systemische Probleme hinweisen, die behoben werden müssen. Datenquelle Dies wird aus der Setzung des Systemstatus CACL (Stornierung) in der Tabelle JCDS abgeleitet. Alternativ kann auch ein Löschkennzeichen (AUFK-LOEKZ) eine Stornierung bedeuten. Erfassen Timestamp der Statusänderung zu 'CACL' in JCDS oder Setzung des Löschkennzeichens in AUFK. Ereignistyp inferred | |||
| Kapazitätsbedarfe geplant | Diese Aktivität umfasst die Terminierung der Vorgänge des Fertigungsauftrags und die Prüfung der Kapazitätsverfügbarkeit an den erforderlichen Arbeitsplätzen. Das System bewertet die Auslastung der Arbeitsplatzkapazitäten und gleicht sie bei entsprechender Konfiguration aus, um die Produktionsdaten zu bestimmen. | ||
| Bedeutung Dieser Schritt ist entscheidend für die Sicherstellung eines machbaren Produktionsplans. Die Analyse seiner Dauer und Ergebnisse hilft, Kapazitäts-Engpässe zu identifizieren und die Genauigkeit der Ressourcenplanung zu verbessern. Datenquelle Dies wird im Allgemeinen aus dem Systemstatus abgeleitet, der anzeigt, dass der Auftrag terminiert wurde, z. B. SETC (Terminierung durchgeführt). Das Vorhandensein der geplanten Start- und Enddaten (AUFK-GSTRP, AUFK-GLTRP) signalisiert ebenfalls den Abschluss dieser Aktivität. Erfassen Abgeleitet aus der Besetzung geplanter Daten in AUFK/AFKO oder einem planungsbezogenen Status in JEST. Ereignistyp inferred | |||
| Materialmangel aufgetreten | Dieses Event zeigt an, dass der Produktionsprozess aufgrund der Nichtverfügbarkeit einer oder mehrerer erforderlicher Komponenten beeinträchtigt oder gestoppt wurde. Das System setzt einen spezifischen Status auf den Auftrag, um dies widerzuspiegeln. | ||
| Bedeutung Die Verfolgung von Materialengpässen ist entscheidend für die Material Shortage Impact Analysis. Sie hilft, die durch Lieferkettenprobleme verursachten Verzögerungen zu quantifizieren und die Materialplanung zu verbessern. Datenquelle Dies wird aus der Aktivierung des Status 'MSPT' (Materialmangel) für den Fertigungsauftrag abgeleitet. Der Timestamp für diese Statusänderung kann in der JCDS-Tabelle gefunden werden. Erfassen Timestamp der Statusänderung zu 'MSPT' in der JCDS-Tabelle. Ereignistyp inferred | |||
| Materialverfügbarkeit geprüft | Stellt die System- oder Benutzeraktion dar, bei der geprüft wird, ob alle erforderlichen Komponenten für den Fertigungsauftrag in den benötigten Mengen und pünktlich verfügbar sind. Dies ist typischerweise eine automatisierte Prüfung bei Auftragserstellung oder -freigabe oder eine manuelle Prüfung, die den Auftragsstatus aktualisiert. | ||
| Bedeutung Die frühzeitige Identifizierung von Materialengpässen ist entscheidend für eine proaktive Planung. Die Verfolgung dieser Aktivität hilft zu verstehen, wie die Materialverfügbarkeit die Fähigkeit beeinträchtigt, Aufträge freizugeben und die Produktion pünktlich zu starten. Datenquelle Abgeleitet vom Auftragsstatus. Ein Status wie MACM (Material zugesagt) oder eine Änderung des Materialverfügbarkeitsdatums (AFKO-MSERF) deutet auf eine durchgeführte Prüfung hin. Das Fehlen eines Materialengpass-Status (MSPT) kann ebenfalls auf Verfügbarkeit schließen lassen. Erfassen Abgeleitet aus Statusänderungen im Zusammenhang mit Materialverfügbarkeit oder der Ausführung der Transaktion COMAC. Ereignistyp inferred | |||
| Produktionsrückmeldung erfasst | Stellt die Erfassung des Fortschritts für einen bestimmten Vorgang innerhalb des Fertigungsauftrags dar. Dies umfasst die Protokollierung produzierter Mengen, Ausschuss und die in einem Arbeitsplatz verbrachte Zeit. | ||
| Bedeutung Rückmeldungen bieten Echtzeit-Transparenz über den Fortschritt in der Fertigung und sind entscheidend für die Verfolgung des Produktionsstatus. Die Analyse der Häufigkeit und des Timings von Rückmeldungen hilft, den Fluss zu überwachen und Verzögerungen zwischen den Operationen zu identifizieren. Datenquelle Jede Rückmeldung wird explizit als Eintrag in der AFRU (Auftragsrückmeldungen)-Tabelle mit einem Timestamp (BUDAT, UZEIT) und Details zum Arbeitsgang erfasst. Erfassen Als Dokument in der Tabelle AFRU erfasst. Ereignistyp explicit | |||
| Ungeplanter Stopp aufgetreten | Dieses berechnete Event stellt eine signifikante Leerlaufzeit während der Produktionsausführungsphase dar. Es ist kein explizites System-Event, sondern wird durch die Identifizierung langer Zeitlücken zwischen aufeinanderfolgenden Produktionsrückmeldungen abgeleitet. | ||
| Bedeutung Hilft bei der Überwachung ungeplanter Störungen wie Maschinenausfälle oder Qualitätsprobleme. Das Identifizieren häufiger oder langer Stillstände ist entscheidend für die Verbesserung der Fertigungsstabilität und des Durchsatzes. Datenquelle Dies wird durch die Analyse der Timestamps aufeinanderfolgender Aktivitäten 'Produktionsrückmeldung erfasst' aus der AFRU-Tabelle berechnet. Eine Lücke, die einen vordefinierten Schwellenwert überschreitet, wird als ungeplanter Stopp gekennzeichnet. Erfassen Zeitdifferenz zwischen aufeinanderfolgenden Rückmeldungs-Timestamps (AFRU-BUDAT/UZEIT) berechnen. Ereignistyp calculated | |||
Extraktionsleitfäden
Schritte
- Prüfung der Voraussetzungen: Stellen Sie sicher, dass Sie einen Benutzer in SAP S/4HANA mit den entsprechenden Berechtigungen zum Zugriff auf die erforderlichen Core Data Services (CDS)-Views haben. Die notwendigen Views umfassen
I_ProductionOrder,I_ProdOrdConfirmation,I_MaterialDocumentItem,I_ObjectStatusundI_ChangeDocument. Der Zugriff auf eine SQL-Ausführungsumgebung, die mit der SAP HANA-Datenbank verbunden ist, ist ebenfalls erforderlich, z. B. SAP HANA Studio, DBeaver oder ein externes ETL-Tool. - Systemdetails identifizieren: Notieren Sie den Quellsystem-Identifikator, den Sie für das
SourceSystem-Attribut verwenden werden. Dies ist ein logischer Name, den Sie definieren, um den Ursprung der Daten zu identifizieren, z. B.S4H_PROD. - Extraktionsparameter festlegen: Bevor Sie die Abfrage ausführen, definieren Sie die Schlüsselparameter. Dazu gehören die Start- und Enddaten für den Extraktionszeitraum und alle spezifischen Filter wie
PlantoderProductionOrderType, um den Datenumfang zu begrenzen. - SQL-Abfrage vorbereiten: Kopieren Sie die vollständige SQL-Abfrage aus dem
query-Abschnitt in Ihren ausgewählten SQL-Client oder Ihr Datenextraktionstool. - Platzhalter konfigurieren: Ersetzen Sie die Platzhalterwerte in der Abfrage durch Ihre spezifischen Parameter. Dazu gehören
_StartDate,_EndDateund der Quellsystem-Identifikator. Passen Sie den Schwellenwert für dasUnplanned Halt Occurred-Ereignis (z. B.'24:00:00') an Ihren Geschäftskontext an. - Extraktionsabfrage ausführen: Führen Sie das konfigurierte SQL-Skript gegen die Datenbank des SAP S/4HANA-Systems aus. Bei großen Datensätzen über einen langen Zeitraum sollten Sie die Extraktion in kleineren Blöcken, z. B. Monat für Monat, durchführen, um Performance-Probleme zu vermeiden.
- Erste Datenüberprüfung: Sobald die Abfrageausführung abgeschlossen ist, führen Sie eine schnelle Überprüfung der Ausgabe durch. Überprüfen Sie die Zeilenanzahl, stellen Sie sicher, dass alle Spalten vorhanden sind, und verifizieren Sie, dass die
Activity-Spalte eine Vielzahl der erwarteten Ereignisse enthält. - Datenvalidierung: Befolgen Sie die im Abschnitt
validationStepsbeschriebenen Schritte, um eine gründlichere Validierung durchzuführen. Gleichen Sie einige Fertigungsaufträge mit ihren Details im SAP-System unter Verwendung der TransaktionCO03ab, um die Genauigkeit des extrahierten Event Log zu bestätigen. - Nach CSV exportieren: Exportieren Sie das endgültige Ergebnis in eine CSV-Datei. Stellen Sie sicher, dass die Dateikodierung UTF-8 ist, um Zeichenprobleme zu vermeiden.
- Für den Upload vorbereiten: Bestätigen Sie, dass die CSV-Spaltenüberschriften mit den erforderlichen Attributnamen übereinstimmen:
ProductionOrder,Activity,StartTime,SourceSystemundLastDataUpdate. Stellen Sie sicher, dass dieStartTime-Spalte in einem Standard-Timestamp-Format, wie ISO 8601 (JJJJ-MM-TTTHH:MM:SS), vorliegt, bevor Sie sie in das Process Mining Tool hochladen.
Konfiguration
- Core CDS-Views: Die Extraktion basiert hauptsächlich auf einer Reihe von standardmäßigen CDS-Views, die eine strukturierte, geschäftsbezogene Sicht auf die zugrunde liegenden SAP-Tabellen bieten. Zu den wichtigsten Views gehören:
I_ProductionOrder: Für Kopfdaten und Erstellungsereignisse von Fertigungsaufträgen.I_ProdOrdConfirmation: Für alle Arbeitsgangrückmeldungen.I_MaterialDocumentItem: Für Warenbewegungen wie Warenausgänge und Wareneingänge.I_ObjectStatus: Zum Lesen der Statusänderungen des Fertigungsauftrags.I_ChangeDocumentund zugehörige Views: Zum Erfassen von Änderungen an wichtigen Auftragsfeldern.
- Datumsbereichsfilterung: Es ist entscheidend, einen Datumsbereichsfilter anzuwenden, um das Datenvolumen zu steuern. Die bereitgestellte Abfrage verwendet das
CreationDatedes Fertigungsauftrags. Ein typischer Bereich für eine erste Analyse sind 3 bis 6 Monate Daten. - Wichtige Geschäftsfilter: Um den Datensatz weiter zu verfeinern, wenden Sie Filter basierend auf wichtigen Organisations- oder Stammdatenattributen an. Häufige Filter sind:
Plant: Zur Analyse eines bestimmten Fertigungsstandorts.ProductionOrderType: Um sich auf Standardproduktion, Nacharbeit oder andere Auftragstypen zu konzentrieren.CompanyCode: Um Daten auf eine bestimmte juristische Entität zu beschränken.
- Schwellenwert für ungeplante Stillstände: Die Abfrage enthält Logik zur Ableitung von
Unplanned Halt Occurred-Ereignissen. Diese Logik erfordert einen Zeitschwellenwert, um zu definieren, was eine signifikante Lücke zwischen den Operationen darstellt. Dieser Wert sollte basierend auf typischen Produktionszykluszeiten und Geschäftsregeln konfiguriert werden. - Autorisierungsvoraussetzungen: Der SAP-Benutzer, der die Abfrage ausführt, muss über eine Anzeigeberechtigung für alle CDS-Views und deren zugrunde liegende Tabellen verfügen. Fehlende Berechtigungen führen zu einem leeren oder unvollständigen Ergebnis.
a Beispielabfrage sql
WITH BaseOrders AS (
SELECT
ProductionOrder,
Material AS MaterialNumber,
ProductionPlant AS Plant,
CreationDate,
CreationTime,
BasicEndDate AS PlannedEndDate,
TechnicalCompletionDate,
LastChangeDateTime
FROM I_ProductionOrder
-- P_CreationDateFrom and P_CreationDateTo are placeholders for your date range
WHERE CreationDate BETWEEN '[_StartDate]' AND '[_EndDate]'
-- Add other filters as needed, for example:
-- AND ProductionPlant IN ('[Your_Plant_1]', '[Your_Plant_2]')
-- AND ProductionOrderType = '[Your_Order_Type]'
)
SELECT
bo.ProductionOrder,
'Production Order Created' AS Activity,
TO_TIMESTAMP(bo.CreationDate || ' ' || LPAD(bo.CreationTime, 6, '0'), 'YYYYMMDD HH24MISS') AS StartTime,
'[_SourceSystemName]' AS SourceSystem,
CURRENT_UTCTIMESTAMP AS LastDataUpdate,
bo.MaterialNumber,
bo.Plant,
NULL AS WorkCenter,
bo.PlannedEndDate,
'CRTD' AS OrderStatus
FROM BaseOrders bo
UNION ALL
-- System status changes like Released, Technically Completed, Closed, Cancelled, Material Shortage
SELECT
os.ObjectInternalID AS ProductionOrder,
CASE os.SystemStatus
WHEN 'I0002' THEN 'Production Order Released'
WHEN 'I0043' THEN 'Material Availability Checked' -- Status: MACM (Material committed)
WHEN 'I0045' THEN 'Order Technically Completed'
WHEN 'I0046' THEN 'Order Financially Closed'
WHEN 'I0047' THEN 'Production Order Cancelled'
WHEN 'I0010' THEN 'Material Shortage Occurred' -- Status: MSPT (Material shortage)
END AS Activity,
os.StatusChangeDateTime AS StartTime,
'[_SourceSystemName]' AS SourceSystem,
CURRENT_UTCTIMESTAMP AS LastDataUpdate,
bo.MaterialNumber,
bo.Plant,
NULL AS WorkCenter,
bo.PlannedEndDate,
os.SystemStatus AS OrderStatus
FROM I_ObjectStatus AS os
JOIN BaseOrders AS bo ON os.ObjectInternalID = bo.ProductionOrder
WHERE os.SystemStatus IN ('I0002', 'I0043', 'I0045', 'I0046', 'I0047', 'I0010') AND os.StatusIsInactive = ''
UNION ALL
-- Production Started, inferred from the first goods issue or first confirmation
SELECT
s.ProductionOrder,
'Production Started' AS Activity,
s.StartEventTime AS StartTime,
'[_SourceSystemName]' AS SourceSystem,
CURRENT_UTCTIMESTAMP AS LastDataUpdate,
s.MaterialNumber,
s.Plant,
NULL AS WorkCenter,
s.PlannedEndDate,
NULL AS OrderStatus
FROM (
SELECT
bo.ProductionOrder,
bo.MaterialNumber,
bo.Plant,
bo.PlannedEndDate,
MIN(COALESCE(gm.PostingTime, cf.ConfirmationDateTime)) AS StartEventTime,
ROW_NUMBER() OVER(PARTITION BY bo.ProductionOrder ORDER BY MIN(COALESCE(gm.PostingTime, cf.ConfirmationDateTime))) as rn
FROM BaseOrders bo
LEFT JOIN I_MaterialDocumentItem gm ON bo.ProductionOrder = gm.ProductionOrder AND gm.GoodsMovementType IN ('261', '262') -- Goods Issue
LEFT JOIN I_ProdOrdConfirmation cf ON bo.ProductionOrder = cf.ProductionOrder
WHERE gm.ProductionOrder IS NOT NULL OR cf.ProductionOrder IS NOT NULL
GROUP BY bo.ProductionOrder, bo.MaterialNumber, bo.Plant, bo.PlannedEndDate
) s
WHERE s.rn = 1
UNION ALL
-- Production Confirmation Entered (for each confirmation)
SELECT
cf.ProductionOrder,
'Production Confirmation Entered' AS Activity,
cf.ConfirmationDateTime AS StartTime,
'[_SourceSystemName]' AS SourceSystem,
CURRENT_UTCTIMESTAMP AS LastDataUpdate,
bo.MaterialNumber,
bo.Plant,
cf.WorkCenter,
bo.PlannedEndDate,
NULL AS OrderStatus
FROM I_ProdOrdConfirmation cf
JOIN BaseOrders bo ON cf.ProductionOrder = bo.ProductionOrder
UNION ALL
-- Final Confirmation Entered
SELECT
cf.ProductionOrder,
'Final Confirmation Entered' AS Activity,
cf.ConfirmationDateTime AS StartTime,
'[_SourceSystemName]' AS SourceSystem,
CURRENT_UTCTIMESTAMP AS LastDataUpdate,
bo.MaterialNumber,
bo.Plant,
cf.WorkCenter,
bo.PlannedEndDate,
NULL AS OrderStatus
FROM I_ProdOrdConfirmation cf
JOIN BaseOrders bo ON cf.ProductionOrder = bo.ProductionOrder
WHERE cf.IsFinalConfirmation = 'X'
UNION ALL
-- Unplanned Halt Occurred (derived from gaps between confirmations)
SELECT
ProductionOrder,
'Unplanned Halt Occurred' AS Activity,
PreviousConfirmationTime AS StartTime,
'[_SourceSystemName]' AS SourceSystem,
CURRENT_UTCTIMESTAMP AS LastDataUpdate,
MaterialNumber,
Plant,
WorkCenter,
PlannedEndDate,
NULL AS OrderStatus
FROM (
SELECT
cf.ProductionOrder,
bo.MaterialNumber,
bo.Plant,
bo.PlannedEndDate,
cf.WorkCenter,
cf.ConfirmationDateTime,
LAG(cf.ConfirmationDateTime, 1) OVER (PARTITION BY cf.ProductionOrder ORDER BY cf.ConfirmationDateTime) AS PreviousConfirmationTime,
(SECONDS_BETWEEN(LAG(cf.ConfirmationDateTime, 1) OVER (PARTITION BY cf.ProductionOrder ORDER BY cf.ConfirmationDateTime), cf.ConfirmationDateTime) / 3600.0) as HoursDiff
FROM I_ProdOrdConfirmation cf
JOIN BaseOrders bo ON cf.ProductionOrder = bo.ProductionOrder
) AS gaps
WHERE gaps.HoursDiff > 24 -- Configurable threshold in hours, e.g. 24 hours
UNION ALL
-- Goods Receipt Posted
SELECT
gm.ProductionOrder,
'Goods Receipt Posted' AS Activity,
gm.PostingTime AS StartTime,
'[_SourceSystemName]' AS SourceSystem,
CURRENT_UTCTIMESTAMP AS LastDataUpdate,
bo.MaterialNumber,
bo.Plant,
NULL AS WorkCenter,
bo.PlannedEndDate,
NULL AS OrderStatus
FROM I_MaterialDocumentItem gm
JOIN BaseOrders bo ON gm.ProductionOrder = bo.ProductionOrder
WHERE gm.GoodsMovementType = '101'
UNION ALL
-- Capacity Requirements Planned (using Release event as a proxy)
SELECT
os.ObjectInternalID AS ProductionOrder,
'Capacity Requirements Planned' AS Activity,
os.StatusChangeDateTime AS StartTime,
'[_SourceSystemName]' AS SourceSystem,
CURRENT_UTCTIMESTAMP AS LastDataUpdate,
bo.MaterialNumber,
bo.Plant,
NULL AS WorkCenter,
bo.PlannedEndDate,
os.SystemStatus AS OrderStatus
FROM I_ObjectStatus AS os
JOIN BaseOrders AS bo ON os.ObjectInternalID = bo.ProductionOrder
WHERE os.SystemStatus = 'I0002' AND os.StatusIsInactive = '' -- Status 'REL' (Released)
UNION ALL
-- Production Plan Adjusted
SELECT
ch.ObjectValue AS ProductionOrder,
'Production Plan Adjusted' AS Activity,
ch.CreationDateTime AS StartTime,
'[_SourceSystemName]' AS SourceSystem,
CURRENT_UTCTIMESTAMP AS LastDataUpdate,
bo.MaterialNumber,
bo.Plant,
NULL as WorkCenter,
bo.PlannedEndDate,
NULL as OrderStatus
FROM I_ChangeDocument AS ch
JOIN BaseOrders bo ON ch.ObjectValue = bo.ProductionOrder
WHERE ch.ChangeDocumentObject = 'PRODORDER'
-- Monitoring changes in key fields like Total Quantity (GAMNG) or Basic Finish Date (GLTRP)
AND ch.FieldName IN ('GAMNG', 'GLTRP')
GROUP BY ch.ObjectValue, ch.CreationDateTime, bo.MaterialNumber, bo.Plant, bo.PlannedEndDate Schritte
- Prüfung der Voraussetzungen: Stellen Sie sicher, dass Sie einen Benutzer in SAP S/4HANA mit den entsprechenden Berechtigungen zum Zugriff auf die erforderlichen Core Data Services (CDS)-Views haben. Die notwendigen Views umfassen
I_ProductionOrder,I_ProdOrdConfirmation,I_MaterialDocumentItem,I_ObjectStatusundI_ChangeDocument. Der Zugriff auf eine SQL-Ausführungsumgebung, die mit der SAP HANA-Datenbank verbunden ist, ist ebenfalls erforderlich, z. B. SAP HANA Studio, DBeaver oder ein externes ETL-Tool. - Systemdetails identifizieren: Notieren Sie den Quellsystem-Identifikator, den Sie für das
SourceSystem-Attribut verwenden werden. Dies ist ein logischer Name, den Sie definieren, um den Ursprung der Daten zu identifizieren, z. B.S4H_PROD. - Extraktionsparameter festlegen: Bevor Sie die Abfrage ausführen, definieren Sie die Schlüsselparameter. Dazu gehören die Start- und Enddaten für den Extraktionszeitraum und alle spezifischen Filter wie
PlantoderProductionOrderType, um den Datenumfang zu begrenzen. - SQL-Abfrage vorbereiten: Kopieren Sie die vollständige SQL-Abfrage aus dem
query-Abschnitt in Ihren ausgewählten SQL-Client oder Ihr Datenextraktionstool. - Platzhalter konfigurieren: Ersetzen Sie die Platzhalterwerte in der Abfrage durch Ihre spezifischen Parameter. Dazu gehören
_StartDate,_EndDateund der Quellsystem-Identifikator. Passen Sie den Schwellenwert für dasUnplanned Halt Occurred-Ereignis (z. B.'24:00:00') an Ihren Geschäftskontext an. - Extraktionsabfrage ausführen: Führen Sie das konfigurierte SQL-Skript gegen die Datenbank des SAP S/4HANA-Systems aus. Bei großen Datensätzen über einen langen Zeitraum sollten Sie die Extraktion in kleineren Blöcken, z. B. Monat für Monat, durchführen, um Performance-Probleme zu vermeiden.
- Erste Datenüberprüfung: Sobald die Abfrageausführung abgeschlossen ist, führen Sie eine schnelle Überprüfung der Ausgabe durch. Überprüfen Sie die Zeilenanzahl, stellen Sie sicher, dass alle Spalten vorhanden sind, und verifizieren Sie, dass die
Activity-Spalte eine Vielzahl der erwarteten Ereignisse enthält. - Datenvalidierung: Befolgen Sie die im Abschnitt
validationStepsbeschriebenen Schritte, um eine gründlichere Validierung durchzuführen. Gleichen Sie einige Fertigungsaufträge mit ihren Details im SAP-System unter Verwendung der TransaktionCO03ab, um die Genauigkeit des extrahierten Event Log zu bestätigen. - Nach CSV exportieren: Exportieren Sie das endgültige Ergebnis in eine CSV-Datei. Stellen Sie sicher, dass die Dateikodierung UTF-8 ist, um Zeichenprobleme zu vermeiden.
- Für den Upload vorbereiten: Bestätigen Sie, dass die CSV-Spaltenüberschriften mit den erforderlichen Attributnamen übereinstimmen:
ProductionOrder,Activity,StartTime,SourceSystemundLastDataUpdate. Stellen Sie sicher, dass dieStartTime-Spalte in einem Standard-Timestamp-Format, wie ISO 8601 (JJJJ-MM-TTTHH:MM:SS), vorliegt, bevor Sie sie in das Process Mining Tool hochladen.
Konfiguration
- Core CDS-Views: Die Extraktion basiert hauptsächlich auf einer Reihe von standardmäßigen CDS-Views, die eine strukturierte, geschäftsbezogene Sicht auf die zugrunde liegenden SAP-Tabellen bieten. Zu den wichtigsten Views gehören:
I_ProductionOrder: Für Kopfdaten und Erstellungsereignisse von Fertigungsaufträgen.I_ProdOrdConfirmation: Für alle Arbeitsgangrückmeldungen.I_MaterialDocumentItem: Für Warenbewegungen wie Warenausgänge und Wareneingänge.I_ObjectStatus: Zum Lesen der Statusänderungen des Fertigungsauftrags.I_ChangeDocumentund zugehörige Views: Zum Erfassen von Änderungen an wichtigen Auftragsfeldern.
- Datumsbereichsfilterung: Es ist entscheidend, einen Datumsbereichsfilter anzuwenden, um das Datenvolumen zu steuern. Die bereitgestellte Abfrage verwendet das
CreationDatedes Fertigungsauftrags. Ein typischer Bereich für eine erste Analyse sind 3 bis 6 Monate Daten. - Wichtige Geschäftsfilter: Um den Datensatz weiter zu verfeinern, wenden Sie Filter basierend auf wichtigen Organisations- oder Stammdatenattributen an. Häufige Filter sind:
Plant: Zur Analyse eines bestimmten Fertigungsstandorts.ProductionOrderType: Um sich auf Standardproduktion, Nacharbeit oder andere Auftragstypen zu konzentrieren.CompanyCode: Um Daten auf eine bestimmte juristische Entität zu beschränken.
- Schwellenwert für ungeplante Stillstände: Die Abfrage enthält Logik zur Ableitung von
Unplanned Halt Occurred-Ereignissen. Diese Logik erfordert einen Zeitschwellenwert, um zu definieren, was eine signifikante Lücke zwischen den Operationen darstellt. Dieser Wert sollte basierend auf typischen Produktionszykluszeiten und Geschäftsregeln konfiguriert werden. - Autorisierungsvoraussetzungen: Der SAP-Benutzer, der die Abfrage ausführt, muss über eine Anzeigeberechtigung für alle CDS-Views und deren zugrunde liegende Tabellen verfügen. Fehlende Berechtigungen führen zu einem leeren oder unvollständigen Ergebnis.
a Beispielabfrage sql
WITH BaseOrders AS (
SELECT
ProductionOrder,
Material AS MaterialNumber,
ProductionPlant AS Plant,
CreationDate,
CreationTime,
BasicEndDate AS PlannedEndDate,
TechnicalCompletionDate,
LastChangeDateTime
FROM I_ProductionOrder
-- P_CreationDateFrom and P_CreationDateTo are placeholders for your date range
WHERE CreationDate BETWEEN '[_StartDate]' AND '[_EndDate]'
-- Add other filters as needed, for example:
-- AND ProductionPlant IN ('[Your_Plant_1]', '[Your_Plant_2]')
-- AND ProductionOrderType = '[Your_Order_Type]'
)
SELECT
bo.ProductionOrder,
'Production Order Created' AS Activity,
TO_TIMESTAMP(bo.CreationDate || ' ' || LPAD(bo.CreationTime, 6, '0'), 'YYYYMMDD HH24MISS') AS StartTime,
'[_SourceSystemName]' AS SourceSystem,
CURRENT_UTCTIMESTAMP AS LastDataUpdate,
bo.MaterialNumber,
bo.Plant,
NULL AS WorkCenter,
bo.PlannedEndDate,
'CRTD' AS OrderStatus
FROM BaseOrders bo
UNION ALL
-- System status changes like Released, Technically Completed, Closed, Cancelled, Material Shortage
SELECT
os.ObjectInternalID AS ProductionOrder,
CASE os.SystemStatus
WHEN 'I0002' THEN 'Production Order Released'
WHEN 'I0043' THEN 'Material Availability Checked' -- Status: MACM (Material committed)
WHEN 'I0045' THEN 'Order Technically Completed'
WHEN 'I0046' THEN 'Order Financially Closed'
WHEN 'I0047' THEN 'Production Order Cancelled'
WHEN 'I0010' THEN 'Material Shortage Occurred' -- Status: MSPT (Material shortage)
END AS Activity,
os.StatusChangeDateTime AS StartTime,
'[_SourceSystemName]' AS SourceSystem,
CURRENT_UTCTIMESTAMP AS LastDataUpdate,
bo.MaterialNumber,
bo.Plant,
NULL AS WorkCenter,
bo.PlannedEndDate,
os.SystemStatus AS OrderStatus
FROM I_ObjectStatus AS os
JOIN BaseOrders AS bo ON os.ObjectInternalID = bo.ProductionOrder
WHERE os.SystemStatus IN ('I0002', 'I0043', 'I0045', 'I0046', 'I0047', 'I0010') AND os.StatusIsInactive = ''
UNION ALL
-- Production Started, inferred from the first goods issue or first confirmation
SELECT
s.ProductionOrder,
'Production Started' AS Activity,
s.StartEventTime AS StartTime,
'[_SourceSystemName]' AS SourceSystem,
CURRENT_UTCTIMESTAMP AS LastDataUpdate,
s.MaterialNumber,
s.Plant,
NULL AS WorkCenter,
s.PlannedEndDate,
NULL AS OrderStatus
FROM (
SELECT
bo.ProductionOrder,
bo.MaterialNumber,
bo.Plant,
bo.PlannedEndDate,
MIN(COALESCE(gm.PostingTime, cf.ConfirmationDateTime)) AS StartEventTime,
ROW_NUMBER() OVER(PARTITION BY bo.ProductionOrder ORDER BY MIN(COALESCE(gm.PostingTime, cf.ConfirmationDateTime))) as rn
FROM BaseOrders bo
LEFT JOIN I_MaterialDocumentItem gm ON bo.ProductionOrder = gm.ProductionOrder AND gm.GoodsMovementType IN ('261', '262') -- Goods Issue
LEFT JOIN I_ProdOrdConfirmation cf ON bo.ProductionOrder = cf.ProductionOrder
WHERE gm.ProductionOrder IS NOT NULL OR cf.ProductionOrder IS NOT NULL
GROUP BY bo.ProductionOrder, bo.MaterialNumber, bo.Plant, bo.PlannedEndDate
) s
WHERE s.rn = 1
UNION ALL
-- Production Confirmation Entered (for each confirmation)
SELECT
cf.ProductionOrder,
'Production Confirmation Entered' AS Activity,
cf.ConfirmationDateTime AS StartTime,
'[_SourceSystemName]' AS SourceSystem,
CURRENT_UTCTIMESTAMP AS LastDataUpdate,
bo.MaterialNumber,
bo.Plant,
cf.WorkCenter,
bo.PlannedEndDate,
NULL AS OrderStatus
FROM I_ProdOrdConfirmation cf
JOIN BaseOrders bo ON cf.ProductionOrder = bo.ProductionOrder
UNION ALL
-- Final Confirmation Entered
SELECT
cf.ProductionOrder,
'Final Confirmation Entered' AS Activity,
cf.ConfirmationDateTime AS StartTime,
'[_SourceSystemName]' AS SourceSystem,
CURRENT_UTCTIMESTAMP AS LastDataUpdate,
bo.MaterialNumber,
bo.Plant,
cf.WorkCenter,
bo.PlannedEndDate,
NULL AS OrderStatus
FROM I_ProdOrdConfirmation cf
JOIN BaseOrders bo ON cf.ProductionOrder = bo.ProductionOrder
WHERE cf.IsFinalConfirmation = 'X'
UNION ALL
-- Unplanned Halt Occurred (derived from gaps between confirmations)
SELECT
ProductionOrder,
'Unplanned Halt Occurred' AS Activity,
PreviousConfirmationTime AS StartTime,
'[_SourceSystemName]' AS SourceSystem,
CURRENT_UTCTIMESTAMP AS LastDataUpdate,
MaterialNumber,
Plant,
WorkCenter,
PlannedEndDate,
NULL AS OrderStatus
FROM (
SELECT
cf.ProductionOrder,
bo.MaterialNumber,
bo.Plant,
bo.PlannedEndDate,
cf.WorkCenter,
cf.ConfirmationDateTime,
LAG(cf.ConfirmationDateTime, 1) OVER (PARTITION BY cf.ProductionOrder ORDER BY cf.ConfirmationDateTime) AS PreviousConfirmationTime,
(SECONDS_BETWEEN(LAG(cf.ConfirmationDateTime, 1) OVER (PARTITION BY cf.ProductionOrder ORDER BY cf.ConfirmationDateTime), cf.ConfirmationDateTime) / 3600.0) as HoursDiff
FROM I_ProdOrdConfirmation cf
JOIN BaseOrders bo ON cf.ProductionOrder = bo.ProductionOrder
) AS gaps
WHERE gaps.HoursDiff > 24 -- Configurable threshold in hours, e.g. 24 hours
UNION ALL
-- Goods Receipt Posted
SELECT
gm.ProductionOrder,
'Goods Receipt Posted' AS Activity,
gm.PostingTime AS StartTime,
'[_SourceSystemName]' AS SourceSystem,
CURRENT_UTCTIMESTAMP AS LastDataUpdate,
bo.MaterialNumber,
bo.Plant,
NULL AS WorkCenter,
bo.PlannedEndDate,
NULL AS OrderStatus
FROM I_MaterialDocumentItem gm
JOIN BaseOrders bo ON gm.ProductionOrder = bo.ProductionOrder
WHERE gm.GoodsMovementType = '101'
UNION ALL
-- Capacity Requirements Planned (using Release event as a proxy)
SELECT
os.ObjectInternalID AS ProductionOrder,
'Capacity Requirements Planned' AS Activity,
os.StatusChangeDateTime AS StartTime,
'[_SourceSystemName]' AS SourceSystem,
CURRENT_UTCTIMESTAMP AS LastDataUpdate,
bo.MaterialNumber,
bo.Plant,
NULL AS WorkCenter,
bo.PlannedEndDate,
os.SystemStatus AS OrderStatus
FROM I_ObjectStatus AS os
JOIN BaseOrders AS bo ON os.ObjectInternalID = bo.ProductionOrder
WHERE os.SystemStatus = 'I0002' AND os.StatusIsInactive = '' -- Status 'REL' (Released)
UNION ALL
-- Production Plan Adjusted
SELECT
ch.ObjectValue AS ProductionOrder,
'Production Plan Adjusted' AS Activity,
ch.CreationDateTime AS StartTime,
'[_SourceSystemName]' AS SourceSystem,
CURRENT_UTCTIMESTAMP AS LastDataUpdate,
bo.MaterialNumber,
bo.Plant,
NULL as WorkCenter,
bo.PlannedEndDate,
NULL as OrderStatus
FROM I_ChangeDocument AS ch
JOIN BaseOrders bo ON ch.ObjectValue = bo.ProductionOrder
WHERE ch.ChangeDocumentObject = 'PRODORDER'
-- Monitoring changes in key fields like Total Quantity (GAMNG) or Basic Finish Date (GLTRP)
AND ch.FieldName IN ('GAMNG', 'GLTRP')
GROUP BY ch.ObjectValue, ch.CreationDateTime, bo.MaterialNumber, bo.Plant, bo.PlannedEndDate