Attribute und Zeitreihen
Attribute
Mihilfe von Attributen können Zeitreihen nicht nur kategorisiert werden, aber auch einfach aggregiert werden. So ist es möglich alle Zeitreihen eines Gebietes oder eines Lieferanten mit dem jeweiligen Attribut zu versehen und entsprechende Aggregate für Fahrplanmanagement oder Abrechnung zu berechnen.
In HAKOM TSM sind grundsätzlich 3 Gruppen von Attributstypen verfügbar:
Einfache Attribute und
Baumhierarchien
Einfache Attribute
Kategorien vs. Attribut Wert-Paare
Eine Kategorie ist ein Attribut ohne Wert, welche einer Zeitreihe zur Kategoriesierung (wie ein "Tag") zugewiesen wird.
Ein Attribut-Wert Paar ist hingegen ein Attribut mit Wert. Durch Attribut-Wert Paar kann eine Zeitreihe zweierlei kategorisiert werden:
Ist das Attribut zugewiesen oder nicht
Mit welchem Wert wurde das Attribut zugewiesen
Aggregation von einfachen Attributen
Kategorieaggregate können in TSM App Haputfenster via "Zeitreiheneigenschaftsaggregat" Funktion direkt aus dem Plugin ausgeführt werden.
Aggregation von weiterer Attribute inklusive wert-abhängige Aggregationen können sowohl aus der TSM App als auch aus der REST API mittels Formelfunktionen durchgeführt werden. Siehe Funktionen TSCA und TSAA in Formelzeitreihen)
Typen von einfachen Attributen
Für die TSM App stehen eine Reihe von unterschiedlichen Attribut-Typen (wie Text, Numeric, Date etc.) zur Verfügung (siehe auch Zeitreihen Erstellen, Bearbeiten und Löschen). Diese werden in TSM App entsprechend gegen Benutzereingaben validiert.
Dieselben Attribut-Typen können auch via WebTSM Services API verwaltet, zugewiesen werden, eine Validierung der Eingaben erfolgt in der API jedoch nicht.
Einfache Attribute in der Zeitreihensuche
In TSM App Zeitreihensuche ist es möglich gleichzeitig zwei Attribute in der Zeitreihensuche einzubeziehen. Wird ein Attribut-Wert Paar ausgewählt, so kann zusätzlich dessen Wert auch in die Suche einfließen.
In der WebTSM Services API ist die Anzahl der Attribute, bzw. Attribut|Wert Paare in der Zeitreihensuche unlimitiert. Es kann im Pfad /repositories/:repository/timeseries pro Attribut ein "attribute=Attributname" bzw. "attribute=Attributname|Attributwert" Parameter übergeben werden.
Anmerkung
In der WebTSM Services API kann mit derselben Logik auch ein Attribut der Typ Baumhierarchie in der Suche berücksichtigt werden.
Hierarchien mittels Attribute
Sogenannte Knotenattribute erlauben die Zuweisung von Zeitreihen zu komplexen Hierarchien. Dabei kann eine Zeitreihe in derselben Hierarchie nur in einem Knotenpunkt enthalten sein.

Aggregation von Knotenattribute
TSM App:
Klicke auf Öffnen im TSM Ribbon
Wähle Raster, Einheit und gegebenenfalls weitere Parameter (absteigend und / oder Fehlende leer) aus
Wähle im Bereich Knotenaggregat einen Hauptknoten oder einer dessen Unterknoten aus
Betätige die Öffnen Schaltfläche
Anmerkung
Ein Knotenaggregat in TSM App wird immer alle dem ausgewählten Knoten untegergordnete Knoten (Kinder) enthalten.
WebTSM Services API:
Aggregat auf Hauptknoten Ebene:
/repositories/:repository/trees/:id|name/sum
Aggregat auf Unterknoten Ebene:
/repositories/:repository/trees/:id|name/nodes/:nodeId/sum
Tipp
Anders als in TSM App ist es in WebTSM Services API steuerbar ob Unterknoten in die Berechnung miteinbezogen werden sollen oder nicht (siehe Parameter sumType
).
Knoten in der Zeitreihensuche
TSM App:
Klicke auf Öffnen im TSM Ribbon
Betätige die Suchen... Schaltfläche im Bereich Zeitreihe des TSM Fensters
Es werden alle Knotenstrukturen im rechten Knotenpanel angezeigt, sofern mindestens ein Knotenattribut definiert wurde:

Anmerkung
Wird ein Knoten ausgewählt werden in der Suche alle Zeitreihen berücksichtigt die exakt dem ausgewählten Knoten zugewiesen sind. Zeitreihen aus Unterknoten werden derzeit in TSM App - Zeitreihensuche nicht berücksichtigt.
WebTSM Services API:
unter dem
/repositories/:repository/timeseries
Pfad können Hierarchien via Parameter "attribute=Knotenattributname|KnotenID
" exakt gesucht werden.Ferner ist es möglich alle Zeitreihendefinitionen auszugeben, die einem Knoten bzw. Unterknoten zugewiesen sind:
Hauptknoten:
/repositories/:repository/trees/:id|name/sum
– sieheincludeTimeSeries
undincludeSubNodes
ParameterUnterknoten:
/repositories/:repository/trees/:id|name/nodes/:nodeId/sum
– sieheincludeTimeSeries
undincludeSubNodes
Parameter
Sonderfall: Attribute mit Gültigkeitsbereich
In bestimmten Konstellationen ist es notwendig, dass zugewiesene Attributswerte sich über die Zeit ändern. Das kann der Fall sein, wenn zum Beispiel ein Attribut "Lieferant" ab einem Stichtag einen anderen Liefernaten widerspiegeln soll. Hierzu können in HAKOM TSM Attributswerte Stichtage ab denen sie gelten sollen vergeben werden. D.h. ein Attributswert ist immer bis zum nächsthöchsten Stichtag mit einem neuen Wert gültig. Solche Stichtage werden dann auch bei der Aggregation nach gewählten Attributswerten berücksichtigt.
Attribute verwalten
Attribute anlegen und anpassen
TSM App:
Klicke auf Öffnen im TSM Ribbon
Betätige die Suchen... Schaltfläche im Bereich Zeitreihe des TSM Fensters
Wähle den Reiter Stammdaten im Fenster Zeitreihen Suche
Die Liste der Attribute befindet sich in Tabelle Attribute

Mehr zum Thema Attribute in TSM App verwalten finden Sie hier: ZAMS - Zeitreihen Erstellen, Bearbeiten und Löschen
In der WebTSM Services API sind Attribut Management Funktionalitäten unter folgenden Pfaden erreichbar:
/attributetypes
> GET: Liste der Attributstypen
/repositories/:repository/attributes
> GET: Liste aller Attributen im System
> POST: ein neues Attribut anlegen
/repositories/:repository/attributes/:id|name
> GET: ein bestimmtes Attribut abrufen
> POST: ein bestehendes Attribut anpassen
Body eines Attributes in REST API:
{
"ID": -1,
"Name": "SensorName",
"Description": "string",
"Type": 2
}
Anmerkung
ID: -1 wird für neue Objekte verwendet.
Attribute Zeitreihen zuweisen
TSM App:
Klicke auf Öffnen im TSM Ribbon
Betätige die Suchen... Schaltfläche im Bereich Zeitreihe des TSM Fensters
Wähle die gewünschte Zeitreihe durch Eingabe der Suchparameter, Betätigen der Suche und Anklicken der Zeitreihenname aus
Wähle den Reiter Bearbeiten im Fenster Zeitreihen Suche > die Definition der gewählten Zeitreihe wird geladen
Klicke auf Reiter Attribute
Klicke auf das grüne Plus Ikon
um die Attributsuche zu öffnen
Wähle die gewünschte Attribute aus und bestätige mit OK

Tipp
Es ist auch möglich eine vordefinierte Liste von Attributen auf einmal mithilfe von Attribut-Templates zuzuweisen.
Mehr zur Zuweisung von Attributen zu Zeitreihen finden Sie hier: TSM: Users - Standard Plug-ins: ZAMS - ZeitreihenErstellen, Bearbeiten und Löschen (de) - Attribute
In der WebTSM Services API können Attribute über folgende Pfade Zeitreihen zugewiesen werden:
/repositories/:repository/timeseries/:id|name/attributes
> GET: liest alle Attribute einer Zeitreihe aus
> POST: wenn in Body ein Einzelattribut > weist ein neues Attribut zu oder wenn in Body ein Listenobjekt > überschreibt alle zugewiesenen Attribute der Zeitreihe
Anmerkung
Wird via POST eine leere Liste übermittelt, so werden alle Attributszuweisungen der jeweiligen Zeitreihe gelöscht
/repositories/:repository/timeseries/:id|name/attributes/:id|name
> GET: liest ein bestimmtes Attribute einer Zeitreihe aus
> PUT: updatet ein bestimmtes Attribut
> DELETE: löscht ein bestimmtes Attribut
/repositories/:repository/timeseries/:id|name/attributes/:id|name/values
> GET: liest alle Werte aus (Response enthält nur eine "Dictionary" der Werte mit deren jeweiligen Gültigkeiten – siehe unten)
> PUT: überschreibt alle zugewiesenen Werte des Attributs
> DELETE: löscht alle zugewiesenen Werte für das jeweilige Attribut
/repositories/:repository/timeseries/:id|name/attributes/:id|name/values/:key
> GET: ruft den zugewiesenen Wert eines Attributs zum gewählten Stichtag (Schlüssel) aus
> PUT: überschreibt den zugewiesenen Wert eines Attributs zum gewählten Stichtag
> DELETE: löscht den zugewiesenen Wert zum gewählten Stichtag inklusive Stichtag.
/repositories/:repository/trees
> GET: liest die Hauptknoten aller definierten Hierarchien aus
> POST: legt einen neuen Haupknoten für einen neuen Baumstruktur an
/repositories/:repository/trees/:id|name
> GET: liest den Hauptknoten der gewählten Hierarchie aus
> PUT: überschreibt den Haupknoten der gewählten Hierarchie
> DELETE: löscht den gewählten Hauptknoten
/repositories/:repository/trees/:id|name/nodes
> GET: liest den kompletten Baumstruktur der gewählten Hierarchie aus
> POST: überschreibt den kompletten Baumstruktur der gewählten Hierarchie
Mehr über Attributen erfahren Sie hier: ZAMS - Zeitreihen Erstellen, Bearbeiten und Löschen