Please enable JavaScript to view this site.

mpmX Help Documentation

Navigation: Deutsch > Data Engineer Guide > Erstellen eines Event Logs aus Ihren Datenquellen > Event Generieren

Erstellen neuer Events durch Erstellen von Event Sources für traditionelles Mining

Scroll Previous Topic Top Next Topic More

 

Das Hauptkonzept der Erstellung eines Events besteht darin, eine Tabelle zu erstellen und dann eine "where"-Anweisung auf diese Tabelle anzuwenden, um die spezifischen Bedingungen jedes Events zu erfüllen. Diese Tabelle wird als "eventSourceTable" bezeichnet und kann die direkte Ausgabetabelle der Transform-Phase oder die Kombination mehrerer Tabellen aus der Transform-Phase sein. Um diesen Teil zu erläutern, werden die Schritte der Ereigniserzeugung aufgelistet und anschließend wird zu jedem Schritt ein Beispiel mit dem Event "Bestellung erstellen" beschrieben.

 

Die Schritte zur Erstellung eines Events sind:

1.Kopieren Sie den Inhalt des Szenarios "custom_logic_03eventsource.qvs" und fügen Sie ihn in "custom_logic_03eventsource_ eventSourceName.qvs" ein.

2.Stellen Sie sicher, dass der mpmXvAppConfigAlias in Ihrer TaskApp mit dem Namen Ihres Szenarios übereinstimmt, z. B. 03eventsource_ eventSourceName.

3.Geben Sie der Ereignisquelle einen verständlichen Namen in der Variablen "eventSourceName".

 

Beispiel

 

let eventSourceName = 'ChangeLog_RSEG';

 

 

4.Füllen Sie die Inline-Tabelle "activityScenarioFieldsTable" aus. Diese Tabelle enthält die Felder:

process

Setzen Sie ihn auf "y", um die Aktivität zu laden. Setzen Sie ihn auf "n", um sie nicht zu laden. Dies ist nützlich für die einmalige Fehlersuche in einer Aktivität.

ActivityTypeID

Eindeutige ID-Nummer der Aktivität.

ActivityType

Name der Aktivitätsart.

ActivityTypeDescription_EN

Beschreibung/Name der Aktivität. Dies sind die Aktivitätsnamen, die im ProcessAnalyzer angezeigt werden.

Durch Änderung des Feldnamens (z.B. in ActivityTypeDescription_DE für deutsche Sprache) können verschiedene Sprachen eingestellt werden. Dazu müssen Sie die Aktivitätsnamen in der entsprechenden Sprache einfügen.

QlikSourceWhereFilter

Dies ist eine Where-Anweisung, die auf die Event Source-Tabelle angewendet wird, um das gewünschte Event zu erhalten.

 

Example

 

process

Setzen Sie ihn auf "y", denn die Aktivität soll belastet werden.

ActivityTypeID

Es kann eine beliebige Nummer gewählt werden. Für dieses Beispiel wurde die ID 300 gewählt.

ActivityType

Create Purchase Order

ActivityTypeDescription_DE

Lege Bestellung an

QlikSourceWhereFilter

Wie bereits erläutert:

CDHDR_OBJECTCLAS = 'EINKBELEG' AND CDPOS_TABNAME = 'EKKO' AND CDPOS_FNAME = 'KEY' AND CDPOS_CHNGIND = 'I'

 

 

NoConcatenate

activityScenarioFieldsTable:

LOAD * Inline [        

process,

ActivityTypeID,

ActivityType,

ActivityTypeDescription_EN,

QlikSourceWhereFilter

y,

300,

CreatePurchaseOrder,

Create order,

CDHDR_OBJECTCLAS = 'EINKBELEG' AND CDPOS_TABNAME = 'EKKO' AND CDPOS_FNAME = 'KEY' AND CDPOS_CHNGIND = 'I'

];

 

 

5.Erstellen Sie Ihre eventSourceTable so, dass Sie die benötigten Events erhalten.

Info

Vergessen Sie nicht, die für die Prozessanalyse erforderlichen Felder aufzunehmen: CaseID, ActivityStartTimestamp und ActivityEndTimestamp, ActivityUserName und ActivityOriginID (ProcessAnalyzer-Felder) in diesen Prozess.

 

Beispiel

 

eventSourceTable:

LOAD

[CDPOS_MANDANT] & '_' & [CDPOS_OBJECTCLAS] & '_' & [CDPOS_OBJECTID] & '_' & [CDPOS_CHANGENR] & '_' & [CDPOS_TABNAME] & '_' & [CDPOS_TABKEY] & '_' & [CDPOS_FNAME] & '_' & [CDPOS_CHNGIND] as [%CDPOS_PKEY],

       '030_' & mid(CDPOS_TABKEY410as %EKKO_PKEY,

       CDPOS_TABNAME,

       CDPOS_FNAME,

       CDPOS_CHNGIND,

       CDHDR_AETST,

       CDHDR_OBJECTCLAS,

       CDHDR_USERNAME

FROM [$(mpmXvETLFolder)02_Transform/views/CDHDR_CDPOS_EINKBELEG.qvd] (qvd);

inner join (eventSourceTable)

Load

       RSEG_BELNR & '_' & RSEG_MANDT & '_' & RSEG_BUKRS & '_' & RSEG_GJAHR as CaseID_RSEG,

       RSEG_MANDT & '_' & RSEG_EBELN as %EKKO_PKEY

FROM [$(mpmXvETLFolder)01_Extract/transformed/RSEG.qvd] (qvd);

 

 

6.Schließlich werden die Felder des Process Mining in die finalEventSourceTable aufgenommen.

 

Beispiel

 

NoConcatenate

finalEventSourceTable:

Load *,

CaseID_RSEG as CaseID,

CDHDR_AETST as ActivityStartTimestamp,

CDHDR_AETST as ActivityEndTimestamp,

CDHDR_USERNAME as ActivityUserName,

%CDPOS_PKEY as ActivityOriginID

Resident eventSourceTable

 

 

Info

Nicht obligatorische Felder werden nicht in der eventSource gespeichert, es sei denn, Sie führen sie in der Variablen mvEventFieldsToKeep.

Es wird empfohlen, jede eventSource einzeln zu laden, um Fehler zu vermeiden. Setzen Sie daher mvExecuteEventSourceMining auf 1 und laden Sie jeweils ein Szenario nach dem anderen.

 

7.Um mehrere eventSource-Szenarien auszuführen, sollte Ihre TaskApp wie folgt aussehen:

SET mpmXvAppConfigAlias = ‘03eventsource _part1'; // the file name should then be custom_logic_03eventsource _part1.qvs 

 

$(Must_Include='lib://mpmX_scripts/V2.3.0/mpmX_api.qvs'); 

 

call mpmX_execute; 

 

 

 

SET mpmXvAppConfigAlias = '03eventsource _part2'; 

 

$(Must_Include='lib://mpmX_scripts/V2.3.0/mpmX_api.qvs'); 

 

call mpmX_execute; 

 

exit script; 

8.Sobald die Ereignisquelle definiert ist, verwenden Sie das Szenario 04processlog.

 

 

© by MEHRWERK GmbH