Transformation zu einem Typ hinzufügen
In diesem Leitfaden wird beschrieben, wie Sie einem bestimmten Typ in Manufacturing Data Engine (MDE) eine Transformation hinzufügen.
Transformation auswählen
In MDE sind mehrere Transformationen verfügbar. Das Standardkonfigurationspaket enthält zwei Transformationen, die jedem der in diesem Standardkonfigurationspaket verfügbaren Typen zugeordnet werden können:
- Group Event Change-Transformation: Diese Transformation überwacht ein beliebiges Feld in einem Tag oder einer Gruppe von Tags und generiert ein Ereignis, wenn sich die überwachten Werte in einem dieser Tags ändern. Diese Transformation kann einem Typ eines beliebigen Archetyps zugeordnet werden.
- Windowing-Transformation: Bei dieser Transformation wird eine Windowing-Funktion auf alle Tags eines Typs angewendet. Windowing bezieht sich auf die Zusammenfassung mehrerer Datensätze über einen Zeitraum hinweg in einem einzigen Datensatz. Die Windowing Transformation kann jedem Typ eines beliebigen Archetyps zugeordnet werden. Sie kann die Aufzeichnungen von Tags zwischen 1 Minute und 60 Minuten zusammenfassen. Das Ergebnis der Transformation ist eine Rohdatenmeldung mit den Zusammenfassungswerten für den Werteausdruck im ausgewählten Zeitraum.
Das Standardkonfigurationspaket enthält die Message-Klassen, Parser und Typen, die zum Verarbeiten der Rohdaten erforderlich sind, die von diesen beiden Transformationen ausgegeben werden. Die beiden Typen, die zum Verarbeiten der Rohdaten-Nachrichten verwendet werden, die von jeder Transformation generiert werden, sind die folgenden:
group-event-change-records: Zieltyp für die Ausgabemeldungen der Transformation „Gruppenereignis ändern“.window-transformation-records: Zieltyp für die Ausgabemeldungen der Windowing-Transformation.
Damit eine Transformation aktiviert wird, muss die angegebene Transformation in der Weboberfläche des Typs ausgewählt oder über den Configuration API-Endpunkt mit dem Typ verknüpft werden.
Verfügbare Transformationen auflisten
So rufen Sie die Liste der verfügbaren Transformationen in einem MDE-System auf:
REST
Es gibt einen speziellen Configuration Manager API-Endpunkt, um die verfügbaren Transformationen aufzulisten:
GET /configuration/v1/transformations
Es wird das folgende JSON mit den verfügbaren Transformationen und ihren Funktionen zurückgegeben:
{
"transformations": [
{
"name": "eventChange",
"displayName": "MDE Event Change",
"description": "Monitors the value of one or more tag that has a common group key. Fires an event whenever any of the contributing tags changes its value",
"disabled": false,
"sample": {
"keyExpression": {
"displayName": "Key Expression",
"description": "A SpEL expression that extracts the group key from the MDE message.proto which groups one or more tags as one unit whose values will be monitored for a change. The key must evaluate to a string",
"value": "#message['tagName']"
},
"valueExpression": {
"displayName": "Value Expression",
"description": "A SpEL expression that extracts the value from the MDE message.proto to be monitored for a change. The value must evaluate to a string",
"value": "#message['data']['numeric'].toString()"
}
}
},
{
"name": "window",
"displayName": "MDE Numeric Value Windowing",
"description": "Create a periodic stats event that provides values such as average, min, and max for an expression that extracts a numeric value from the tag messages",
"disabled": false,
"sample": {
"durationMinutes": {
"displayName": "Window Duration in Minutes",
"description": "A positive integer that represents how long the window will summarize events before producing the summary tag, this is in the granularity of minutes and it cannot be higher than 2 hours",
"value": "1"
},
"valueExpression": {
"displayName": "Value Expression",
"description": "A SpEL expression that extracts the value from the MDE message.proto to be used as the numeric value of the tags that will be summarized. The value must evaluate to a number, and it's internally out",
"value": "#message['data']['numeric']"
},
"id": {
"displayName": "Window Unique ID",
"description": "A unique ID that represents this instance of the window transformation, this should be unique if you are adding multiple instances of the window transformation to the same type",
"value": "1-min-window"
}
}
}
]
}
Console
Öffnen Sie in der Weboberfläche im Bereich Types (Typen) das Menü Edit type version (Typversion bearbeiten) für einen bestimmten Typ und maximieren Sie den Bereich Transform & connect (Transformieren und verbinden).

Transformation einem Typ zuordnen
Wenn Sie einen vorhandenen Typ einer verfügbaren Transformation zuordnen, werden alle Tags dieses Typs transformiert. Das Ergebnis der Transformation wird als neue Tags in MDE vom Typ Transformed Types (Transformierte Typen) aufgenommen. Die transformierten Tagnamen haben einen neuen Namen, der sich aus dem ursprünglichen Tagnamen und dem Namen der Transformation ableitet.
So ordnen Sie einer Transformation einen Typ zu:
REST
Wenn Sie eine Transformation einem bestimmten Typ zuordnen möchten, rufen Sie die Methode PATCH in diesem Endpunkt der Configuration Manager API auf:
PATCH /configuration/v1/types/TYPE_NAME/versions/VERSION_NUMBER
Der Body der Anfrage sollte die Liste der Transformationen enthalten, die dem Typ angehängt werden sollen, sowie den Wert für die zugehörigen Konfigurationsparameter:
{
"transformations": [
{
"window": {
"id": "WINDOW_TRANSFORMATION_IDE",
"durationMinutes": WINDOW_TRANSFORMATION_MINUTES,
"valueExpression": "VALUE_EXPRESSION_VALUE"
}
},
{
"eventChange": {
"keyExpression": "KEY_EXPRESSION_VALUE",
"valueExpression": "VALUE_EXPRESSION_VALUE"
}
}
]
}
Ersetzen Sie im vorherigen Beispielaufruf die folgenden Elemente:
TYPE_NAME: Der Name des zu ändernden Typs.VERSION_NUMBER: Die Version des zu ändernden Typs.
Ersetzen Sie die folgenden Elemente im Text, um eine Fenster-Transformation zu konfigurieren:
WINDOW_TRANSFORMATION_ID: eine eindeutige Kennung der Transformation, die auch an die ursprünglichen Tag-Namen angehängt wird, nachdem sie von der Transformation verarbeitet wurden.WINDOW_TRANSFORMATION_MINUTES: die Dauer des anzuwendenden Fensters in MinutenVALUE_EXPRESSION_VALUE: Das Element des Tag-Protos, das als Wertfeld überwacht wird. Für ein numerisches Standard-Tag ist#message['data']['numeric'].
Ersetzen Sie die folgenden Elemente im Body, um eine Transformation vom Typ „Event Change“ zu konfigurieren:
KEY_EXPRESSION_VALUE: Das Element im Tag-Proto, das zum Gruppieren von Tags verwendet wird, die gemeinsam überwacht werden sollen. So überwachen Sie ein einzelnes Tag:#message['tagName']VALUE_EXPRESSION_VALUE: Das Element im Tag-Proto, das zum Überwachen der Wertänderung verwendet wird. Muss zu einemStringaufgelöst werden. In einem numerischen Standard-Tag ist#message['data']['numeric'].toString().
Console
Wenn Sie einem Typ eine Transformation zuweisen möchten, öffnen Sie im Tab Typ den Webinterface-Bereich Typversion bearbeiten.
Maximieren Sie den Bereich Transformieren und verbinden:

Wenn Sie eine Transformation hinzufügen möchten, wählen Sie die gewünschte Transformation aus der Liste aus und klicken Sie auf HINZUFÜGEN:

Geben Sie dann die erforderlichen Parameter an und klicken Sie auf SPEICHERN:

Für die Window-Transformation sind die Parameter:
WINDOW_TRANSFORMATION_ID: eine eindeutige Kennung der Transformation, die auch an die ursprünglichen Tag-Namen angehängt wird, nachdem sie von der Transformation verarbeitet wurden.WINDOW_TRANSFORMATION_MINUTES: die Dauer des anzuwendenden Fensters in MinutenVALUE_EXPRESSION_VALUE: Das Element des Tag-Protos, das als Wertfeld überwacht wird. Für ein numerisches Standard-Tag ist#message['data']['numeric'].
Für die Transformation von Ereignisänderungen sind die Parameter:
KEY_EXPRESSION_VALUE: Das Element im Tag-Proto, das zum Gruppieren von Tags verwendet wird, die gemeinsam überwacht werden sollen. So überwachen Sie ein einzelnes Tag:#message['tagName']VALUE_EXPRESSION_VALUE: Das Element im Tag-Proto, das zum Überwachen der Wertänderung verwendet wird. Muss zu einemStringaufgelöst werden. In einem numerischen Standard-Tag ist#message['data']['numeric'].toString().