Desktop und einfache Client-Server-Applikationen

Gefahrenstoffe Tabelle ExcelExcel als intelligente Bedienoberfläche für datenbankbasierte Messwerte

Das Prozessleitsystem einer kommunalen Kläranlage generiert Messdaten, die täglich in Excel erfasst werden. Aus diesen Daten werden, ebenfalls in Excel, jeweils wöchentlich und jährlich Statistiken und Übersichten generiert.

Die Art der erfassten Daten, gewünschte Statistiken und das Format der Arbeitsmappen werden von den übergeordneten Dienststellen vorgegeben. Diese Anforderungen können sich im Laufe der Jahre ändern. Eine besondere Herausforderung stellt dabei die Notwendigkeit dar, jederzeit auch über Daten alter Jahrgänge neue Statistiken erstellen zu müssen.

Um diesen Vorgang zu erleichtern, wurde ein System entwickelt, dass:

  • die Speicherung von und den Zugriff auf Daten aus einer großen Menge heterogener Exceldatenblätter ermöglicht.
  • auch über die folgenden Jahre und deren wechselnden, zum Teil heute noch, unbekannten Anforderungen sauber skaliert.
  • die gewohnte Excel-Arbeitsoberfläche beibehält.

Damit entstehen drei Teilaufgaben:

  • Strukturiertes Erfassen bestehender und neuer Daten
  • Erhaltung der Schnittstellen und Arbeitsabläufe zur Erfassung und Visualisierung von Neudaten
  • Einfache Erweiterbarkeit durch den Endanwender

Client-Server-System

Lösung

Die in Excel-Arbeitsmappen vorhandenen Daten werden in eine SQL-Datenbank konvertiert. Dazu werden zunächst Namensbereiche für relevante Datengruppen in einer Excelmappe vergeben. Damit sind die Datengruppen durch den Namen, sowie Art und Datum des Excel-Dokumentes eindeutig referenzierbar. Dann werden die vorhandenen Datenbestände in die Datenbank übernommen.

Die Daten sind jetzt in der Excel-Oberfläche aus der Datenbank heraus abrufbar: Excel funktioniert als Frontend für die Datenbank. Neue Daten werden aus Excel in die Datenbank eingelesen.

Die Vergabe neuer oder die Änderung vorhandener Namensbereiche, sowie deren Aufnahme in die Datenbank werden direkt aus Excel erledigt.


Vorteile

  • Ein Suchen in den Dateien nach dem "richtigen" Excel-Dokument entfällt, die Daten sind durch Angabe des Datums sofort abrufbar.
  • Schnelles Vor- und Zurückblättern von Tagen, Monaten oder Jahren in der gleichen Arbeitsmappe.
  • Abrufen von Arbeitsmappen nach einer Reihe von Kriterien.
  • Datenbanken bieten ausgefeilte Datenschutzmechanismen, die Rechte zum Abrufen oder Ändern von Daten können individuell vergeben werden.
  • Notwendige Verwaltungsaufgaben wie Datensicherung sind wesentlich vereinfacht.
  • Mehrere Anwender können gleichzeitig an den Daten arbeiten ohne sich absprechen zu müssen, wer, was, wann und in welcher Version wohin abgespeichert hat.
  • Bei neuer Strukturierung der Arbeitsmappe oder neuen Datengruppen werden einfach die entsprechenden Namensbereiche angepasst.
  • Alle anderen Arbeitsschritte können wie gewohnt in Excel erledigt werden.

Technische Bemerkungen

  • Die Lösung ist mit einem in C# programmierten .NET Excel-Add-In realisiert. Das Add-In kann, wie jede andere Software auch, einfach installiert und upgedatet werden.
  • In Excel wird ein neuer Menüpunkt angelegt, über den die Verwaltung und Abruf von Daten und die Vergabe und Änderung der Namensbereiche erledigt wird.
  • Für kleinere (bis 2 Gigabyte Daten) Anwendungen verwenden wir die kostenlose Microsoft SQL Server 2000 Desktop Engine Datenbank, bei größeren Datenmengen oder mehr als 8 gleichzeitigen Anwendern empfehlen wir die vollwertige Microsoft SQL Server Datenbank. Ein Upgrade ist problemlos, da die beiden Systeme kompatibel sind.

Mögliche Erweiterungen

  • Da die Daten zentral in einer Datenbank zur Verfügung stehen, können sie leicht über geeignete Schnittstellen mit weiteren Softwaresystemen gekoppelt werden.
  • Die Daten lassen sich über ein Webinterface visualisieren, denkbar ist hier die Statusabfrage bestimmter Parameter mit einem Internetbrowser.

Die Oberfläche in Excel

Arbeitsmappe mit Messwerten und Verwalten der Namensbereiche

In der Abbildung sieht man, über einer Arbeitsmappe mit Messdaten, das Fenster zum Verwalten von Namensbereichen. Die referenzierten Daten, hier die Spalte mit den Stunden eines Tages (H10 bis H33), wird dabei farbig hervorgehoben.
In diesem Fenster werden alle in der Datenbank vorhandenen Namensbereiche für diese Arbeitsmappe angezeigt. Hier können Namensbereiche angelegt, verändert oder gelöscht werden.


Schulung/Einführung zu in diesem Projekt verwendeten Technologien