Objektzentrierte Event Sources erstellen |
Scroll Previous Topic Top Next Topic More |
Es ist sehr einfach, objektzentrierte Event-Quellen zu erstellen. Führen Sie einfach die folgenden Schritte aus. Wenn Sie Hintergrundinformationen über OCPM und OCPM Event Logs benötigen, dann gehen Sie hier.
1.Wechseln Sie zum Reiter 1A. OCPM Config
2.Setzen Sie die Variable mvIsOCPM auf 1
Let mvIsOCPM = 1;
3.Optional: Definieren Sie Farben für Ihre Objekte, indem Sie Farben aus der Farben-inline-Tabelle ändern/hinzufügen/löschen
Colors:
mapping load * inline [
No, Color
1 ,#adceff
2 ,#cc99ca
3 ,#aedfe0
4 ,#fac8a3
5 ,#333333
6 ,#85b6ff
7 ,#f7ac75
8 ,#993396
9 ,#86ced1
10,#8f85ff
];
Der große Unterschied zum traditionellen Mining besteht darin, dass für die Erstellung der Event Source zwei weitere Felder hinzugefügt werden (ObjectType und PrincipalObjectType), die in der Variablen mvEventFieldsToKeep aufgeführt und in der finalEventSourceTable definiert sind.
Außerdem ist die Erstellung der CaseID einfacher, da sich die Objekt-ID häufig in derselben Tabelle wie die Event-Daten befindet und daher weniger Tabellen-Joins und Schlüssel erforderlich sind, um zu einer herkömmlichen übergreifenden CaseID zu gelangen.
Um eine OCPM-Event Source zu erstellen, gehen Sie folgendermaßen vor:
1.Kopieren Sie die Registerkarte template_ocpm_eventSource aus dem Registerbereich OCPM-Vorlage
2.Geben Sie der neuen Registerkarte einen aussagekräftigen Namen
3.Geben Sie der eventSource einen Namen, indem Sie die Variable eventSourceName füllen:
let eventSourceName = 'templateEventSource';
let eventSourceName = 'invoice';
4.Laden Sie die Quelltabellen für die Definition der Events und führen Sie die notwendigen Transformationen durch, wie im folgenden Beispiel gezeigt:
eventSourceTable
LOAD
LEDGER & '_' & COMPANY & '_' & OPERATING_BUSINESS_UNIT & '_' & TRANSACTION_NUM as %DocumentID,
TRANSACTION_CLASS,
CREATED_BY,
TRANSACTION_DATE,
GL_DATE,
DUE_DATE,
CREATION_DATE,
LAST_UPDATE_DATE,
ENTRY_DATE
FROM [lib://mpmX_Data/Invoices_Headers.csv}]
(txt, codepage is 28591, embedded labels, delimiter is ';', msq).
Die Tabelle Invoice_Header enthält verschiedene Zeitstempel und die Objekt-ID, hier %DocumentID genannt. Die verschiedenen Zeitstempel sind in einer Spalte kreuztabelliert, um die Definition der Aktivitäten zu erleichtern.
rename table eventSourceTable to eventSourceTable_tmp;
eventSourceTable:
CrossTable (DateType,Timestamp,3)
load *
resident eventSourceTable_tmp;
drop table eventSourceTable_tmp;
5.Danach werden die Aktivitäten wie üblich definiert:
NoConcatenate
activityScenarioFieldsTable:
LOAD * Inline [
process; |
ActivityTypeID; |
ActivityTypeDescription_DE; |
ActivityType; |
QlikSourceWhereFilter |
y, |
110; |
Rechnungsbetrag fällig; |
Invoice Amount Due; |
DateType = 'DUE_DATE' |
y, |
120; |
Rechnungsupdate; |
Invoice Update; |
DateType = 'LAST_UPDATE_DATE' |
y, |
130; |
Rechnungs-Transaktion gestartet; |
InvoiceTransaction started; |
DateType = 'TRANSACTION_DATE' |
y, |
140; |
Technung gebucht; |
Invoice Entered; |
DateType = 'ENTRY_DATE' |
](delimiter is ';');
6.Erstellen des richtigen Formats in der finalEventSoruceTable für die Ableitung der Events:
a.Definieren Sie die CaseID
b.Start- und Endzeitstempel definieren
c.Optional: Definieren Sie den ActivityUserName
d.Definieren Sie den ActivityOrigin
e.Definieren Sie den ObjectType
f.Definieren Sie den PrincipalObjectType
g.Definieren Sie die ActivityOriginID
h.Definieren Sie die Filterfelder
i.Optional: Fügen Sie weitere Felder hinzu, die im Event nach dem Mining vorhanden sein sollen. Diese Felder müssen der Variablen mvEventFieldsToKeep als Komma-Liste hinzugefügt werden.
Informationen über den Zweck der Felder ObjectType, PrincipalObjectType und ActivityOriginID in OCPM finden Sie hier.
Um die Verknüpfung zwischen verschiedenen Objekten herzustellen, wird eine CaseID-Verknüpfungstabelle erstellt, die alle weiteren Objektbeziehungen für alle Objekt-Case-IDs enthält. Diese Tabelle kann im Frontend zur Filterung, im Datenmodell für aussagekräftige Kontextinformationen und bei der Erstellung von Event Logs zur einfachen Definition von Touch Point Events verwendet werden.
Als Best-Practice-Format schlagen wir vor, eine Tabelle mit einer Spalte CaseID und einer Spalte pro Objekttyp zu erstellen, die alle mit der jeweiligen CaseID verbundenen IDs enthält, z. B. CaseID | InvoiceID | CreditMemoID | SalesOrderID | TransportDocID.
Um die Verknüpfungstabelle CaseID zu erstellen, gehen Sie wie folgt vor:
1.Kopieren Sie die Registerkarte template_ocpm_link_table
2.Benennen Sie die Registerkarte entsprechend Ihrer bewährten Praxis um, zum Beispiel mit Objektverknüpfungstabelle
3.Setzen Sie die Registerkarte nach den Registerkarten der Event Source
4.Zeichnen Sie eine Liste aller CaseIDs aus den eventSource-Tabellen und erstellen Sie ID-Spalten für alle Objekt-ID-Typen
5.Verbinden Sie mit jeder CaseID nacheinander alle Objekt-IDs, die mit ihr verbunden sind
6.Wenn alle Objektbeziehungen in der Tabelle vereinigt sind, stellen Sie sicher, dass das endgültige Format eine Spalte CaseID und eine Spalte pro ObjekttypID ist
Achtung! Die endgültige Tabelle muss den Namen CaseID_Link_Table_$(mvProcessDescription).
7.Im weiteren Verlauf des Skripts wird die Verknüpfungstabelle gespeichert und im Ordner MPM_Model abgelegt.
Um die Interaktion zwischen verschiedenen Objekten darzustellen, können Ereignisse von mehreren Objekten verwendet werden, wir nennen diese Ereignisse Touchpoint-Ereignisse. Jedes Event hat ein Objekt als Hauptauslöser und ist daher bereits in einer der Event Sources modelliert.
Der nächste Schritt besteht darin, ein bestehendes Event für andere Objekte verfügbar zu machen. Es ist wichtig, dass die Verknüpfungstabelle CaseID zuvor erstellt wurde.
Weitere Informationen über Touchpoint Events finden Sie unter folgendem Link: https://help.mpmX-processmining.com/ins_how-to-create-an-event-log-for-ocpm.html
Je nach Anzahl und Komplexität der Touchpoint-Events kann es sinnvoll sein, mehrere Touchpoint-Event-Quellen zu erstellen.
Um die Touchpoint Events zu erstellen, gehen Sie wie folgt vor:
1.Kopieren Sie die Registerkarte template_ocpm_touchpoints
2.Benennen Sie die Registerkarte entsprechend Ihrer bewährten Praxis um, z. B. in "ocpm touchpoint events".
3.Legen Sie die Registerkarte hinter die Registerkarte der Link-Tabelle
4.Geben Sie der Event Source für den Touchpoint einen Namen
let eventSourceName = 'touchpoints';
5.Laden Sie die ursprüngliche Event Source, aus der das Event dupliziert werden soll
a.Ändern Sie die CaseID in die Objekt-ID aus der Verknüpfungstabelle CaseID
b.Ändern Sie das Feld ObjectType auf den neuen Objekttyp
[eventLog_$(eventSourceName)]:
LOAD
CaseID as %CreditMemoID,
ActivityTypeID,
ActivityStartTimestamp,
ActivityEndTimestamp,
ActivityType,
ActivityUserName,
ActivityOrigin,
'Invoice' as ObjectType
PrincipalObjectType,
ActivityOriginID,
RealUser
FROM [lib://mpmX_Data/ProcessAnalyzer_ProcessDescription/03_ProcessLogGeneration/DataSource_EventLogs/eventLog_ds_creditMemo.qvd]
(qvd)
where ActivityType = 'Credit Memo Entered';
6.Verbinden Sie die neue CaseID des neuen Objekts, das den Touchpoint erhalten soll, mit der Event-Quelle.
Achtung! Stellen Sie sicher, dass die Schlüssel für die Verknüpfung korrekt gesetzt sind und benennen Sie die neue Objekt-ID in CaseID um.
7.Löschen Sie die alte CaseID, die in Schritt 5a umbenannt wurde..
8.Weiterhin wird in der Reiter die Event-Quelle gespeichert.
Sobald die Ereignisquellen, die CaseID-Verknüpfungstabelle und die Touchpoint-Ereignisse erstellt sind, kann das Mining wie gewohnt durchgeführt werden.
Die Registerkartenstruktur könnte nun wie folgt aussehen: