MIT DATEN MEHR BEWEGEN.

Join

Funktionsbeschreibung und Anwendung

Der Join-Block fügt die Nachrichten mehrerer Kanäle (Topics) zusammen. Im Block erfolgt keine getrennte Verarbeitung anhand Source und Scope Werten.

Tabelle 1. Konfigurationsparameter Join-Block
Parameter Beschreibung

Main

Primärer Datenstrom

Meta

Metadatenströme mit konfigurierbarer Anzahl. Speichert die zuletzt eingetroffene Nachricht durch Überschreiben. Initial ist eine leere Nachricht gespeichert.

Modus

Modusauswahl für die Behandlung von JSON-Arrays. Wert ist optional, default = "Replace".

  • Concat: Arrays verketten.

  • Union: Arrays vereinigen, wobei bereits vorhandene Elemente übersprungen werden.

  • Replace: Ersetzen aller Array-Elemente.

  • Merge: Array-Elemente zusammenführen, abgestimmt auf den Index.

Trifft eine Nachricht im Main Input ein, werden die aktuell gespeicherten Nachrichten der Meta Inputs nacheinander auf die Main-Nachricht gepatcht. D.h. Nachrichten an höheren Meta Inputs überschreiben ggf. Werte aus niedrigen Meta Inputs.

Eine neue Nachricht an einem Meta Input aktualisiert die derzeit gespeicherte, triggert aber keine neue Result-Nachricht. Der timestamp wird nicht gespeichert. Die neue Nachricht kann auch leer sein. Der timestamp aus der Nachricht am Main Input bleibt für die resultierende Nachricht erhalten.

Beispielkonfiguration

Im Beispiel werden Nachrichten über die konfigurierten Topics aus dem Modbus- und OPC-Modul (Input-1, Input-2, Input-4) im Join-Block zusammengeführt und als Metadaten dem Main Input aus dem RuleEngine-Block angehangen.

join example
Abbildung 1. Konfiguration der Stream Processor
join
Abbildung 2. Konfiguration des Join-Block in der UI