Konfigurationsdatei

Die Konfigurationsdatei bietet die Möglichkeit, den Report zu organisieren, zu sortieren und individuell zu gestalten. Die Konfigurationsdateien müssen in dem Ordner .\TwinCAT\Functions\Reporting-Server\Configuration\ConfigFiles abgelegt werden.

Folgende Optionen werden in dem Reporting Server unterstützt.

Key

Beschreibung

Beispiel

Ebene

 

 

 

 

General

 

 

 

Store Type

Gibt an, welcher Store-Modus verwendet werden soll. Aktuell wird nur „Ram“ unterstützt.

"StoreType": "Ram"

1

Header

Bietet die Möglichkeit, drei untereinander angeordnete Überschriften darzustellen. Wenn die zweite und / oder dritte Überschrift nicht verwendet werden soll, kann ein leerer String angegeben werden.

"Header": [
"Header 1",
"Header 2",
"Header 3",
]

1

Footer

Der Footer einer PDF-Seite teilt sich in drei Bereich auf. Alle drei Bereiche lassen sich durch einen Freitext individualisieren. Um das Datum und die Uhrzeit der Erstellung dazustellen, muss der Platzhalter „{date} {time}“ angegeben werden. Um die Seitenzahl dazustellen, muss der Platzhalter „{page} of {total-pages}“ angegeben werden. Wenn ein Bereich frei bleiben soll, kann ein leerer String angegeben werden.

"Footer": [
"Footer Left",
"Footer Center",
"Footer Right",
]

1

Logo

Das Logo wird auf der ersten Seite oben rechts dargestellt. Das Logo kann als relativer Pfad zu dem Ordner Reporting-Server\Configuration\ConfigFiles angegeben werden. Alternativ kann das Logo als Base64String mit dem voranstehenden Encoding angegeben werden.

"Logo": ".//<Bildname.png>"
oder
"Logo": "data:image/<Encoding>;base64, <Base64String>"

1

StyleSheet

Bietet die Möglichkeit, einen Report designtechnisch zu individualisieren. Um ein anwenderspezifisches Stylesheet zu verwenden, muss dessen Name angegeben werden (siehe Stylesheet).

"StyleSheet": "StyleBeckhoff.css"

1

SignatureSettingsFile

Bietet die Möglichkeit, einen Report zu signieren (siehe Signierung).

"SignatureSettingsFile": "BeckhoffSignatures.json",

 

Email Text

Dieser Text wird in jede E-Mail eingefügt, sofern kein spezifischer Text angegeben ist.

"EmailText": "Custom of E-Mails send to all recipients with no or empty E-Mail-Text. Special. Ones"

1

Required Keys

Ist eine Sammlung aus Data Key. Sofern die Datenobjekte dieser Data Keys nicht im Reporting-Server vorliegen, wird der Report nicht generiert.

"RequiredKeys": ["Data101"]

1

Trigger On Required Key Received

Ist eine weitere Möglichkeit, um die Generierung eines Reports auszulösen. Wenn bei der Option true ausgewählt ist und alle Datenobjekten mit den erforderlichen Data Keys vorhanden sind, wird der Report generiert. Dadurch ist eine Trigger-Nachricht von einem Reporting Client nicht nötig.

"TriggerOnRequiredKeyReceived": false

1

 

 

 

 

Static Default Data

 

 

 

Default Data

In diesem Objekt können Datenobjekte definiert werden, die in jedem Report dargestellt werden sollen.

"DefaultData": {}

1

 

 

 

 

Text Fields

Dieses Element ist ein Array und kann mehrere Textfeld-Objekte mit den folgenden Elementen besitzen.

"TextFields": []

2

Key

Wird als Überschrift für das Textfeld verwendet.

"Key": "My Text Field"

3

Comment

Dient als Kommentar für das Datenobjekt. Der Kommentar wird im Report nicht dargestellt.

"Comment": "My Comment"

3

Sort Priority

Gibt die Position des Datenobjektes im Report an.

"SortPriority": 42

3

Value

Enthält einen individuellen Wert und muss als STRING angegeben werden.

"Value": "253-5553-9421"

3

 

 

 

 

Tables

Dieses Element ist ein Array und kann mehrere Tabellen-Objekte mit den folgenden Elementen besitzen.

"Tables": []

2

Key

Wird als Überschrift für die Tabelle verwendet.

"Key": "My Table"

3

Comment

Dient als Kommentar für das Datenobjekt. Der Kommentar wird im Report nicht dargestellt.

"Comment": "My Comment"

3

Sort Priority

Gibt die Position des Datenobjektes im Report an.

"SortPriority": 42

3

Value

Dieses Element ist ein Objekt und enthält die folgenden Elemente.

"Value": {}

3

Header

Dieses Element ist ein Array und erhält die Spaltenüberschriften der Tabelle. Die Anzahl der Spaltenüberschriften muss gleich der Spalten der Tabelle sein.

"Header": ["Table Header 1", "Table Header 2"]

4

DataTypes

Dieses Element ist ein Array und erhält die Datentypen der Tabellenspalte. Folgende Datentypen sind möglich: BOOL, BYTE, SBYTE, CHAR, DECIMAL, DOUBLE, FLOAT, INT, UINT, LONG, ULONG, SHORT, USHORT, STRING. Die Anzahl der Datentypen muss gleich der Spalten der Tabelle sein.

"DataTypes": ["string", "double"]

4

Values

Dieses Element ist ein 2D-Array und erhält die Wert der Tabelle. Ein Array in dem Array repräsentiert eine Tabellenspalte. Die Tabellenspalte muss zu dem angegebenen Datentyp passen. Die Anzahl der Arrays muss gleich der Spalten der Tabelle sein. Die Arrays sollten gleich groß sein.

"Values": [[],[]]

4

 

 

 

 

Images

Dieses Element ist ein Array und kann mehrere Bild-Objekte mit den folgenden Elementen besitzen.

"Images": []

2

Key

Wird als Überschrift für das Bild verwendet.

"Key": "My Image"

3

Comment

Dient als Kommentar für das Datenobjekt. Der Kommentar wird im Report nicht dargestellt.

"Comment": "My Comment"

3

Sort Priority

Gibt die Position des Datenobjektes im Report an.

"SortPriority": 42

3

Value

Enthält den Base64String mit PNG-Encoding.

"Value": "<Base64String PNG-Encoding>"

3

 

 

 

 

Value Pairs

Dieses Element ist ein Array und kann mehrere Key-Value-Paar-Objekte mit den folgenden Elementen besitzen.

"ValuePairs": []

2

Key

Wird als Überschrift für die Sammlung aus Key-Value-Paaren genutzt.

"Key": "My Value Pair"

3

Comment

Dient als Kommentar für das Datenobjekt. Der Kommentar wird im Report nicht dargestellt.

"Comment": "My Comment"

3

Sort Priority

Gibt die Position des Datenobjektes im Report an.

"SortPriority": 42

3

Value Pair Collection

Dient als Sammlung von Key-Value-Paaren. Dieses Element ist ein Array und kann mehrere Objekte mit den folgenden Elementen besitzen.

"ValuePair_Collection": []

3

Key

Enthält einen individuellen Wert und wird auf der linken Seite dargestellt.

"Key": "Serial number"

4

Data Type

Beschreibt den Datentyp des Elements „Value“.

"DataType": "string"

4

Value

Enthält einen individuellen Wert und wird auf der rechten Seite dargestellt. Der Value muss als STRING angegeben werden.

"Value": "253-5553-9421"

4

 

 

 

 

Data Configurations

 

 

 

Data Configurations

Über die Data Configurations können die Daten, die dynamisch von den Reporting Clients versendet werden, sortiert und individualisiert werden. Dieses Element ist ein Array und kann mehrere Objekte mit den folgenden Elementen besitzen.

"DataConfigurations": []

1

Key

Ist dem Data Key des Datenobjektes entsprechend. Dadurch wird sichergestellt, dass diese Datenkonfiguration auf ein eindeutiges Datenobjekt angewendet wird. (Required)

"Key": "DataTable101"

2

Title

Bietet die Option einen besseren Namen als Überschrift. (Optional)

"Title": "Rotations and vibrations"

2

SortPriority

Gibt die Position des Datenobjektes im Report an. (Required)

"SortPriority": 42

2

IsRequired

Gibt an, ob dieses Datenobjekt für die Generierung des Reports erforderlich ist. (siehe: TriggerOnRequiredKey)

"IsRequired": false

2

StoreMode

Bietet die Option, einzelne Datenobjekte auf bestimmte Art zu speichern und dementsprechend darzustellen. Aktuell werden vier unterschiedliche Store Modi unterstützt:

  • Blocking: Das erste Datenobjekt wird gespeichert und alle nachfolgenden Datenobjekte mit dem gleichen Data Key werden verworfen.
  • Overwriting: Das neu empfangene Datenobjekt ersetzt das letzte Datenobjekt mit dem gleichen Data Key.
  • Appending: Das neu empfangene Datenobjekt wird gespeichert. Die zuvor empfangenen Datenobjekte werden ebenfalls gehalten und im Report dargestellt. Bei einer Tabelle werden die Daten zusammengeführt.
  • Appending_Series: Dieser Store Modus entspricht dem Store Modus „Appending“. Jedoch werden die Datenobjekte nummeriert und in einzelne Tabellen dargestellt.
"StoreMode": "Overwriting"

2

RoundTo

Bietet die Option, Gleitkommazahlen auf eine bestimmte Nachkommastelle zu runden.

"SortPriority": 4

2

TimestampFormat

Bietet die Option, Timestamp in ein bestimmtes Format zu konvertieren. Standardmäßig ist folgende Formatierung ausgewählt: "yyyy-MM-dd HH:mm:ss.ffff"
(Siehe auch: Custom date and time format strings)

"TimestampFormat": "HH:mm:ss.ffff"

2

IsAsc

Bietet die Option, die Sortierung einer Datentabelle festzulegen. Ist der Wert auf true, wird der erste Datensatz in der ersten Zeile dargestellt.

"IsAsc": true

2

StyleClass

Bietet die Option eine benutzerdefinierte CSS-Style-Klasse zu verwenden. Die CSS-Style-Klasse muss in der CSS-Datei definiert sein und die CSS-Datei muss unter der Option StyleSheet referenziert werden.

"StyleClass": "CustomClass"

2

 

 

 

 

Publish Locations

 

 

 

Publish Locations

 

"PublishLocations": []

1

Email Publish Location

Wird verwendet, um den Report als E-Mail weiterzuleiten. Dieses Element ist ein Array und kann mehrere Objekte mit den folgenden Elementen besitzen.

"EmailPublishLocations": []

2

Type

Gibt den Typ der Verteilung an.

"Type": "File"

3

Format

Bietet die Option, nur eine Auswahl an Formaten per E-Mail zu versenden.

"Format": ["PDF", "HTML", "JSON"]

3

Address

Bietet die Möglichkeit, den Report an mehrere E-Mail-Adressen zu verschicken.

"Address": [ "m.mustermann@tester.com "]

3

Use Bcc

Bietet die Option, die E-Mail-Adressen in BCC zu setzen.

"UseBcc": false

3

Text

Bietet die Option, einen spezifischen E-Mail-Text anzugeben. Dieser Text ersetzt den Standard-E-Mail-Text.

"Text": "Hello, \n insert email text here.\n Your Reporting Service.

3

File Publish Location

Wird verwendet, um den Report in einen bestimmten Ablageort zu kopieren. Dieses Element ist ein Array und kann mehrere Objekte mit den folgenden Elementen besitzen.

"FilePublishLocations": []

2

Type

Gibt den Typ der Verteilung an.

"Type": "File"

3

Format

Bietet die Option ,nur eine Auswahl an Formaten per E-Mail zu versenden.

"Format": ["PDF", "HTML", "JSON"]

3

Path

Bietet die Möglichkeit, einen Zielpfad für den Report anzugeben. Der Zielpfad darf keine Administrator-Rechte erfordern.

"Path": "C:\\tmp\\CpyFolder"

3