Tables

Tabellenübersicht

Das Tabellenmodul in PLCVisu ermöglicht die Anzeige und Interaktion mit strukturierten Daten innerhalb deiner Visualisierung. Es unterstützt verschiedene Tabellentypen mit unterschiedlichen Datenquellen – von der Live-Integration mit CODESYS bis zur datenbankgestützten historischen Anzeige.

Tabellentypen

PLCVisu bietet vier Haupttypen von Tabellen:

1. Online-Tabelle

  • Direkte Verbindung zu CODESYS (ohne Datenbank)
  • Zeigt Live-Datenströme aus dem laufenden System
  • Keine Historie oder zeitbasierte Filterung möglich
  • Ideal für Echtzeitüberwachung
  • Die CODESYS-Anbindung muss separat konfiguriert werden
    → Anleitung und Beispielprojekte sind verfügbar unter:
    PLCVisu CODESYS Projekt

2. Basis-Tabelle

  • Anbindung an eine ausgewählte Datenbank (z. B. SQLite, MySQL, MSSQL, Trends)
  • Zeigt historische Daten aus der Datenbank
  • Nur lesend – keine Bearbeitung im Frontend möglich
  • Ideal für Protokolle, Berichte oder Datenübersichten

3. Editierbare Tabelle

  • Ebenfalls mit einer Datenbank verbunden
  • Im Frontend bearbeitbar (Einfügen, Löschen, Ändern von Werten)
  • Bearbeitung ist abhängig von den Benutzerrechten
  • Geeignet für manuelle Eingaben, Operatorenprotokolle oder Nutzerdaten

4. Erweiterte Tabelle

  • Basiert auf der editierbaren Tabelle, bietet aber visuelle Logik
  • Unterstützt dynamische Bilder innerhalb von Zellen per JSON-Regeln
  • Beispiel: Eine Batterie-Ikone ändert sich je nach Ladezustand

Beispiel-Logik für Bildanzeige:

{
    "conditions": [
        {
            "script": "value == 0",
            "url": "",
            "value": "ready"
        },
        {
            "script": "value >= 0 && value < 20 ",
            "url": "./Example/upload/files/battery/battery_1.png"
        },
        {
            "script": "value >= 20 && value < 40",
            "url": "./Example/upload/files/battery/battery_2.png"
        },
        {
            "script": "value >= 40 && value < 60",
            "url": "./Example/upload/files/battery/battery_3.png"
        },
        {
            "script": "value >= 60 && value < 80",
            "url": "./Example/upload/files/battery/battery_4.png"
        },
        {
            "script": "value >= 80",
            "url": "./Example/upload/files/battery/battery_5.png"
        }
    ],
    "img": {
        "style": "margin-right:8px;"
    },
    "value": {
        "style": "font-weight:bold;"
    },
    "suffix": {
        "style": "font-weight:bold;"
    }
}
{ "conditions": [ { "script": "value == 0", "url": "", "value": "ready" }, { "script": "value >= 0 && value < 20 ", "url": "./Example/upload/files/battery/battery_1.png" }, { "script": "value >= 20 && value < 40", "url": "./Example/upload/files/battery/battery_2.png" }, { "script": "value >= 40 && value < 60", "url": "./Example/upload/files/battery/battery_3.png" }, { "script": "value >= 60 && value < 80", "url": "./Example/upload/files/battery/battery_4.png" }, { "script": "value >= 80", "url": "./Example/upload/files/battery/battery_5.png" } ], "img": { "style": "margin-right:8px;" }, "value": { "style": "font-weight:bold;" }, "suffix": { "style": "font-weight:bold;" } }