Datensatz-Editor

Der Datensatz-Editor ist der Ausgangspunkt des Analysis-Moduls. Mit diesem Editor haben Sie die Möglichkeit, Daten für die Charts bereitzustellen. Beim Konfigurieren können unterschiedliche Datenquellen ausgewählt sowie Variablen hinzugefügt werden.

Das Modifizieren der Daten erfolgt durch separate sequentielle Blöcke (Modifikatoren), die in Reihe geschaltet werden können. Somit kann der Datensatz bestmöglich auf das gewünschte Endergebnis eingegrenzt werden. Gleichzeitig bleibt auch bei komplexen Prozessen die Übersicht über die einzelnen Skripte erhalten.

Die wichtigsten Schritte beim Erstellen und Editieren eines Datensatzes sind:

Datensätze erstellen/bearbeiten/löschen

In diesem Bereich können neue Datensätze hinzugefügt oder bestehende Datensätze bearbeitet bzw. gelöscht werden.
Die Datensätze werden automatisch nach der Datenquelle gruppiert.

Buttons und Icons
Button/Icon Beschreibung Funktion

Datensatz hinzufügen

Hinzufügen

Erstellt einen neuen Datensatz

Duplizieren

Kopiert den ausgewählten Datensatz inklusive aller Konfigurationen und fügt die Kopie ans Ende der Liste bzw. ans Ende der Gruppe an

Löschen

Entfernt den ausgewählten Datensatz

Gruppe öffnen

Zeigt alle diesem Datenquellentyp zugeordneten Einträge an

Gruppe schließen

Minimiert alle diesem Datenquellentyp zugeordneten Einträge

Datensatzeinträge sortieren

Es ist möglich, sowohl gruppierte als auch nicht gruppierte Datensatzeinträge auf- oder absteigend zu sortieren.
Bei gruppierten Einträge wird innerhalb der einzelnen Gruppe sortiert.
Bei nicht gruppierten Einträgen werden folglich alle Einträge sortiert.

Die Parameter, die zur Sortierung herangezogen werden, sind die Spalten (siehe Spalten ein- und ausblenden.

Spalten ein- und ausblenden

Für die Datensätze gibt es die folgenden Spalten:

  • Name: Name, der vom Anwender eingetragen wurde

  • Typ: Typ der Datenquelle, der in der Konfiguration ausgewählt wurde

  • ID: Von der Anwendung automatisch erzeugte Identifikationsnummer

  • Actions: Funktions-Icons zum Duplizieren bzw. Löschen eines Eintrags

Konfiguration von Datensätzen

Die Ansicht unterteilt sich in folgende Bereiche:

Übersicht Datensatz-Konfiguration
  • Bereich 1: Konfigurationen

  • Bereich 2: Vorschau

Konfigurationen

In den Konfigurationen gibt es drei verschiedene Teilbereiche, in denen Einstellungen vorgenommen werden können:

Anhand des -Buttons ist ersichtlich, ob alle eingegebenen Daten und Parameter zulässig und valide sind.
Bei fehlerhaften Eingaben verfärbt sich der -Button orange. Beim Drüberfahren mit dem Mauszeiger werden außerdem die fehlenden oder fehlerhaften Eingaben eingeblendet.

Allgemeine Einstellungen

Diese Gruppe beinhaltet grundlegende Konfigurationen eines Datensatzes.

Name

Die Benennung des Datensatzes.
Mögliche Eintragungen sind alle Zeichen von a-z, Nummern von 0-9 sowie Sonderzeichen.

Datenquelle

Quelle, aus der die Daten abgeholt werden.
Die Auswahl erfolgt aus der DropDown-Liste.
Abhängig von der Datenquelle sind spezifische Konfigurationen zu setzen (siehe auch Spezifische Einstellungen).

Aktuell werden folgende Quellen unterstützt:

  • OpenSearch: Daten der OpenSearch-Instanz, die als Datenbank des BPCs dient

  • JSON: statischer Datensatz, der zu Demonstrationszwecken dient

  • HTTP: JSON-Daten von einer externen Quelle, die über die eine URL abgerufen werden

  • INUBIT: in INUBIT erzeugte Berichte über die eigene Performance (Report-Daten)

Die beim Hinzufügen eines neuen Datensatzes vorausgewählte Datenquelle ist das OpenSearch, das mit dem BPC ausgeliefert wird.

Variablen

Variablen stellen dynamische Parameter beim Abfragen der Datenquelle dar. Sie können beispielsweise Zeiträume eingrenzen, auf die sich die Daten beziehen.
Die Variablen können bei der Visualisierung der Charts konfiguriert werden und wahlweise in Reports für den Anwender freigegeben werden. Dieser kann die Variable(n) dann bei Bedarf anpassen.

Aktuell werden Variablen nur für OpenSearch als Datenquelle unterstützt.

Eine Variable muss mindestens mit einem Namen versehen werden. Des Weiteren soll die Variable noch einen Typ zugewiesen werden. Aktuell sind 5 Variablentypen verfügbar: Text, Boolean, Nummer, Liste und Datum. Die Variablentypen und Konfigurationsmöglichkeit werden in folgender Tabelle dargestellt.

Variablentypen
Typ Mögliche Konfiguration Beschreibung Beispiel

text

Standardwert

Wenn im speziellen Kontext kein Wert gesetzt wird, wird dieser Wert verwendet.

"Testvariable"

boolean

Standardwert

Wenn im speziellen Kontext kein Wert gesetzt wird, wird dieser Wert verwendet.

Checkbox mit Häkchen (true) oder
ohne Häkchen (false)

number

Standardwert

Wenn im speziellen Kontext kein Wert gesetzt wird, wird dieser Wert verwendet.

"10"

Wertebereich

Nur Werte in diesem Bereich sind valide.

Min: "1",
Max: "999"

list

Wertliste

Werte, die im Chart/Report zur Auswahl angeboten werden.
Die einzelnen Werte werden beim Eintragen durch Kommas abgetrennt.

"1,2,3,4,5"

Standardwert

Ein Wert aus der Wertliste.
Wenn im speziellen Kontext kein Wert gesetzt wird, wird dieser Wert verwendet.

"3"

date

Datumsformat

Datumswerte werden in dieses Format konvertiert, bevor sie an die Datenquelle gesendet werden.
Siehe mögliche Datumsformate.

"Y-m-d"

Standard-Wert

Wenn im speziellen Kontext kein Wert gesetzt wird, wird dieser Wert verwendet.
Das Datum kann im Format "TT.MM.JJJJ" eingetragen oder über das -Symbol ausgewählt werden.

"22.02.2022"

Wertebereich

Nur Werte in diesem Bereich sind valide.
Beide Werte können im Format "TT.MM.JJJJ" eingetragen oder über das jeweilige -Symbol ausgewählt werden.

Min: "01.01.2022",
Max: "31.12.2022"

Spezifische Einstellungen

Hierbei handelt sich um spezielle Einstellung für einen bestimmten Typ von Datenquellen.
Die nachfolgende Tabelle gibt eine Übersicht über die spezifischen Konfigurationsmöglichkeiten der einzelnen Datenquellen:

Datenquelle Spezifische Einstellung Beschreibung Beispiel

OpenSearch

Index

Name des OpenSearch-Indexes, in dem sich die gewünschten Daten befinden.

"bpc-auditlog"

Query

OpenSearch-Abfrage im JSON-Format, siehe auch offizielle Dokumentation von OpenSearch.
In dieser Abfrage kann man die konfigurierten Variablen einsetzen.
Werte in dem JSON-Objekt können als Platzhalter {X} gesetzt werden.
Wenn ein Platzhalter in der Abfrage vorkommt, wird dieser Wert durch den Wert der Variable ersetzt (sofern diese konfiguriert wurde).

{"JSON_KEY" : "{NAME_DER_VARIABLE}"}

JSON

JSON Data

statischer Datensatz im JSON-Format (üblicherweise object oder array).

{
  "name" : "Max",
  "age" : 43
}

HTTP

URL

Externe URL-Adresse, von welcher JSON-Daten geholt werden.
Standardmäßig wird eine HTTP-GET-Anfrage vom BPC gesendet.

https://example.com/

INUBIT

INUBIT Connection

In Backend Connections vorkonfigurierte Verbindung (Typ: http_proxy) zu einem inubit-Server.

Auswahl aus der Drop-Down-Liste,
ein Klick auf führt zum Sprung in den entsprechenden Administrationsbereich.

Report ID

ID von einem Report, der in INUBIT konfiguriert wurde.

Auswahl aus der Drop-Down-Liste

Vorschau von Daten

Nach fertiger Konfiguration und dem Ausführen und Speichern des Datensatzes wird eine Vorschau der Daten angeboten. In dieser Vorschau kann auch eine Kontext-Variable gesetzt bzw. angepasst werden, die im Konfigurator erstellt wurde, siehe Variablen. Mithilfe der Kontext-Variable kann das Verhalten der Daten in Abhängigkeit zu veränderten Werten dieser Variable getestet werden.

Modifikation der Daten

Nach dem Abholen und Konfigurieren der Daten kann es sein, dass diese Daten noch nicht im passenden Format vorliegen, um daraus Charts zu generieren. Abhängig vom gewünschten Chart-Typ sollten Daten entsprechend formatiert werden. Diese Aufgabe wird bei der Modifikation des Datensatzes übernommen.

Ein Modifikator ist ein Code-Abschnitt, der Eingangsdaten manipuliert. Der Code-Abschnitt wird in der Regel im Backend ausgeführt und das Ergebnis wird ans Frontend zurückgesendet.
Modifikatoren werden im Sandbox-Modus ausgeführt. Das heißt, dass die Modifikatoren keinen Zugriff auf kritische Ressourcen (z. B. Dateisystem, Netzwerk etc.) haben.

Die Ansicht unterteilt sich in folgende Bereiche:

Übersicht Datensatz-Modifikation
  • Bereich 1: Modifikator-Schritte

  • Bereich 2: Konfiguration

  • Bereich 3: Vorschau

Modifikator-Schritte

In diesem Bereich werden alle erstellten Einzelschritte der Modifikation aufgelistet.
Hier besteht die Möglichkeit, einen Modifikator anzulegen, zu löschen, auszuführen oder alle Modifikatoren auszuführen.

Die Reihenfolge der Modifikator-Schritte kann per Drag&Drop geändert werden.

Icon/Button Beschreibung Funktion

Hinzufügen

Hinzufügen

Erstellt einen neuen Modifikator-Schritt

Bis zu diesem Schritt ausführen

Führt alle vorherigen (darüber befindlichen) Modifikator-Schritte, einschließlich dem ausgewählten Schritt, aus.

Löschen

Entfernt den ausgewählten Modifikator-Schritt

Alle ausführen

Alle ausführen

Führt alle vorhandenen Modifikator-Schritte nacheinander aus (von oben nach unten).

Konfiguration

Dieser Bereich beinhaltet grundlegende Konfigurationen eines Modifikators.

Name

Die Benennung des Modifikators.

Typ

Typ des Modifikators.
Aktuell werden folgende Typen unterstützt:

  • Javascript: Daten der OpenSearch-Instanz, die als Datenbank des BPCs dient

  • Groovy: statischer Datensatz, der zu Demonstrationszwecken dient

Der beim Hinzufügen eines neuen Modifikators vorausgewählte Typ ist Groovy.

Beschreibung

Zusätzliche Informationen über den Modifikator.

Modifikator

Modifikationsregeln als Quelltext.
Abhängig vom Typ muss entweder Javascript-Code oder Groovy-Code verwendet werden.

Modifikator-Typ Javascript

Bei diesem Typ wird ein Modifikator als Javascript-Quelltext definiert.
Der Einstiegspunkt dieses Modifikators ist die Methode: modify(data, vars). Darunter kann man auch eine Main-Methode verstehen.
Der Rückgabewert dieser Methode liefert die Eingangsdaten für den nächsten Modifikator-Schritt oder für einen Chart.

Die Methode verfügt über zwei Parameter:

data

Eingangsdaten.
Eingangsdaten sind in der Regel das Ergebnis des letzten Modifikators. Wenn der aktuelle Modifikator der erste ist, werden die Rohdaten des aktuellen Datensatzes verwendet.

vars

Beim Zugriff auf dieses Objekt hat man den Zugriff auf die Werte der Datensatz-Variablen, welche bei der Datensatz-Konfiguration erstellt wurden.

Code-Beispiel
function modify (data, vars) {
   const result = helper(data);
   return result;
}

function helper (data) {
   return data;
}

Modifikator-Typ Groovy

Es sind nur folgende Bibliotheken für die Groovy-Ausführung integriert:
groovy (groovy-core), groovy-datetime, groovy-json

Bei diesem Typ wird ein Modifikator als Groovy-Quelltext definiert.
Im Vergleich zum Javascript-Modifikator gibt es hierbei keine Einstiegsmethode. Die Modifikator-Regeln können direkt im Code-Block definiert werden.
Der Rückgabewert dieser Methode liefert die Eingangsdaten für den nächsten Modifikator-Schritt oder für einen Chart.

In diesem Code-Abschnitt werden zwei Objekte bereitgestellt:

data

Eingangsdaten.
Eingangsdaten sind in der Regel das Ergebnis des letzten Modifikators. Wenn der aktuelle Modifikator der erste ist, werden die Rohdaten des aktuellen Datensatzes verwendet.

vars

Beim Zugriff auf dieses Objekt hat man den Zugriff auf die Werte der Datensatz-Variablen, welche bei der Datensatz-Konfiguration erstellt wurden.

Code-Beispiel
data.collect { el -> return el * el }
return data

Anwendungsbeispiele

In den folgenden Beispielen werden Datensätze erstellt und konfiguriert, die aus unterschiedlichen Datenquellen stammen. Außerdem werden zwei verschiedene Modifikatortypen konfiguriert.

Datensatz erstellen und konfigurieren

  1. Im Analysis-Modul den Datensatz-Editor auswählen.

  2. Neuen Datensatz hinzufügen.
    Datenquelle hinzufügen

  3. Namen eingeben.

  4. "OpenSearch" als Datenquelle auswählen.

  5. Ggf. Beschreibung eintragen.

  6. "Index" auswählen.

    Elasticsearch als Datenquelle
  7. Query eintragen.

  8. Ggf. Variable(n) hinzufügen.

    1. Im Bereich Variablen auf Hinzufügen-Button klicken.

    2. Variablennamen eintragen.

    3. Variablentyp wählen (siehe Variablen).

    4. Ggf. Standardwerte eintragen

    5. Ggf. Min- und Max-Werte eintragen.

      Variable hinzufügen

    6. Speichern-Button klicken.

  9. Auf Ausführen klicken.
    Beim Ausführen werden die eingetragenen Daten automatisch gespeichert.
    Die Rohdaten werden im Vorschaufenster angezeigt.

    Elasticsearch Rohdaten

Im Vorschau-Fenster können die Variablen ausgeklappt und testweise angepasst werden (siehe Vorschau von Daten).

Falls Sie Änderungen in den Konfigurationen vornehmen, klicken Sie am Ende immer auf den Speichern-Button!

Datensatz modifizieren

Da die verschiedenen Chart-Typen jeweils spezifische Werte benötigen, sollten die Datensätze entsprechend modifiziert werden:

Chart-Typ Erwarteter Attribut-Wert

Gauge (Zeigerdiagramm)

number

Pie (Kuchendiagramm)

string für das Label,
number für die Y-Achse

XY-Chart (Linien-, Balkendiagramme)

string für die Text-Achse,
number für die numerische Achse,
JavaScript-Zeitstempel für die Datumsachse

Variable bearbeiten/entfernen

Bereits angelegte Variablen können auch später bearbeitet oder wieder gelöscht werden.

Variablen bearbeiten oder entfernen

Keywords: