Bericht (nur SCADA)¶
Reports werden in PROCON-WEB über ein ReportControl und darin eingebetteten CrystalReports (SAP) umgesetzt. Dazu ist eine Lizenz für die Erstellung von CrystalReports notwendig und Kenntnisse über den Aufbau von SQL-Datenbanken und SQL-Abfragen. Im Designer können für das ReportControl die zugehörigen Reports ausgewählt und die Dialoge für die Zuführung der dynamischen Reportparameter (z.B. Zeitauswahl) konfiguriert werden. Das ReportControl ist ausschließlich für Windows-Server (SCADA) verfügbar! Die Weidmüller GTI Software GmbH bietet als Service das Erstellen von komplexen Reports an.
OLEDB-Verbindung¶
Um OLEDB-Verbindungen zu einer Datenbank zu erstellen, verändern oder zu löschen, muss im Projektbaum der Punkt „Report - OLEDB-Verbindung“ geöffnet werden.

Nach einem Rechtsklick auf die erscheinende leere Fläche wird „Neue OLEDB-Verbindung“ ausgewählt. In der erscheinenden Zeile kann der Name der Verbindung verändert und durch einen Klick auf den Button im Textfeld „Connectionstring“ der Verbindungs-Assistent geöffnet werden.

Dieser Assistent hilft beim Erstellen einer Verbindung zu einer Datenquelle, auf die sich der Report zur Verarbeitung und Darstellung der Daten stützt. Zunächst kann ein sog. Provider ausgewählt werden. Für viele verschiedene Datenquellen steht ein Provider zur Verfügung, welcher einen Zugriff auf diese Daten ermöglich (z.B. für Oracle Datenbanken, SQL-Server usw.). Anschließend können weitere Informationen zur Datenquelle(Server/Datenbank-Name) sowie Login-Informationen eingegeben werden, falls der Zugriff auf die Datenquellen mit einem Passwort geschützt ist. Abhängig vom Provider finden sich noch erweiterte Einstellungen die verändert werden können, falls dies gewünscht ist (meist ist dies nicht nötig, bei Bedarf kann man diese Werte trotzdem ändern). Nach einem Klick auf „OK“ werden die eingegebenen Informationen in einen Connectionstring umgewandelt, welcher alle Informationen enthält und vom Report verarbeitet werden kann.
Report-Konfiguration¶
Wurde eine Verbindung ausgewählt, kann der nächste Punkt „Report-Konfiguration“ ausgewählt werden. Mit einem Rechtsklick und der Auswahl von „Report hinzufügen“ öffnet sich ein Datei-Auswahl-Dialog, in welchem sich eine Report-Datei (.rpt) auswählen lässt. Wurde ein Report ausgewählt, wird eine neue Zeile für diesen Report angelegt. Zusätzlich werden für alle Parameter, welche der Report enthält, untergeordnete Zeilen angelegt.


Direkt nach dem Hinzufügen des Reports ist ein roter Warnhinweis neben dem Namen des Reports zu sehen. Dieser weist darauf hin, dass noch eine standardmäßige OLEDB-Verbindung ausgewählt ist. Dieser Wert muss noch auf eine gültige Verbindung geändert werden. Dazu kann auf den Button in der Zelle unter „OLEDB-Verbindung“ geklickt werden, wodurch sich ein Auswahl-Dialog öffnet, in dem alle vorhanden Verbindungen angezeigt und die gewünschte durch Doppelklick oder einen Klick auf „OK“ (nach vorheriger Selektierung) ausgewählt werden kann. Neben dem Namen findet sich die Spalte „Report“, in der der Pfad samt Dateiname der ausgewählten Report-Datei zu finden ist. Daneben befindet sich eine Checkbox, mit der ausgewählt werden kann, ob der Report in der Projekt-Datenbank gespeichert werden soll.
Ist der Haken gesetzt, wird der Report zur Laufzeit aus dem Projektverzeichnis ausgelesen.
Ist der Haken nicht gesetzt, wird der Report vom eingestellten Pfad gelesen. Dass kann von Vorteil sein, wenn sich der Report noch nach der Projektierung ändert und so im Nachhinein ausgetauscht werden kann. Der Pfad kann durch Klicken in die Zelle noch verändert werden, falls sich der Report später an einer anderen Stelle befindet.
Anschließend können Einstellungen zu den Parametern vorgenommen werden:

Hier gibt es mehrere Spalten:
Spalte |
Beschreibung |
---|---|
Name |
Der Name des Parameters. Über diesen erfolgt die Übergabe an den Report, deshalb sollte er nicht geändert werden. |
Typ |
Der Typ des Parameters. Durch Änderung des Typs ändert sich das Bedienelement, welches bei der Parameter-Eingabe erscheint (z.B. bei Date erscheint ein Kalender-Control usw.) |
Eingabetext |
Dieser Text legt fest, was neben dem Eingabe-Bedienelement steht. Dies kann als Hinweis für Eingabe verwendet werden (z.B. „Chargennummer eingeben“) |
SQL-Befehl |
Wird als Eingabe-Bedienelement „Combo“ oder „ListView“ ausgewählt, so wird dieses Feld aktiviert. Dann kann ein SQL-Befehl eingegeben werden, welcher benutzt wird, um diese Elemente zu befüllen. So kann eine Combobox mit vorgefertigten Werten befüllt werden, um eine lange Eingabe überflüssig zu machen. |
Optional |
Durch das Setzen des Hakens bei „Optional“ kann die Eingabe zu einem Parameter auch leer bleiben, es wird also kein Wert gefordert. |
Start- und Endzeit-Parameter |
Gibt es im Report einen Zeitraum, welcher durch einen Start- sowie einen End-Parameter definiert ist, so können diese durch diese beiden Haken markiert werden. Später kann so, durch einfaches Klicken auf einen Button, durch verschieden Zeitbereiche geblättert werden und die komplette Neueingabe der Parameter entfällt |
Zeit als String |
Stützt sich ein Report zur Generierung auf Zeitangaben, welche allerdings als String in einem beliebigen Format vorhanden sind, so kann dieser Haken angeklickt werden. Allerdings nur, wenn als Parametertyp „Date“ oder „DateTime“ ausgewählt wurde. Es erscheint so ein Kalender-Bedienelement, welches die Auswahl eines Zeitpunkts erlaubt. Das Ausgewählte Datum wird dann in ein anderes Format konvertiert. Wie dieses Format aussieht, kann im nächsten Feld festgelegt werden. |
Datumsformat |
Wird ein individuelles Datumsformat verwendet, kann in der letzten Spalte ein Muster definiert werden, wie dieses Format aufgebaut ist. Durch einen Rechtsklick auf die komplette Zeile und die Auswahl von „Überprüfe Datumsformat“, kann getestet werden, welches Format das eingegebene Muster erzeugt. Dazu wird das aktuelle Datum entsprechend dem Muster konvertiert und in einer Box ausgegeben. Beispielsweise erzeugt die Eingabe „dd/MM/yyyy“ nach einer Überprüfung die Ausgabe „05.07.12“. |
Durch einen Rechtsklick auf einen Report können Parameter hinzugefügt oder entfernt werden. Das Hinzufügen von Parametern ist dafür gedacht, um das Befüllen von dynamischen Bedienelemente, die durch einen SQL-Befehl gefüllt werden („Combo“, „ListView“), noch weiter zu filtern. Beispielsweise kann ein zusätzlicher Parameter „Anlagennummer“ erstellt werden. Im SQL-Befehl kann dieser Parameter dann verwendet werden (z.B.: SELECT * FROM Produktion WHERE Anlagen_ID = {?Anlagennummer}). Er dann wird vor der Ausführung durch den ausgewählten Wert ersetzt. Dabei ist zu beachten, dass der Parametername in geschweiften Klammern stehen muss, angeführt von einem Fragezeichen ({?Parametername}). Durch einen Rechtsklick können neben Parametern auch „Header“ eingefügt werden. Dazu am Ende ein Beispiel.
Profil-Konfiguration¶
Anschließend muss ein Profil definiert werden. Dazu wird der Punkt „Profil-Konfiguration“ geöffnet und durch einen Rechtsklick ein Profil hinzugefügt. Wieder erscheint ein roter Hinweis neben dem Namen, da neue Profile auf einen Standard-Report verweisen. Durch einen Klick auf den Button in der zweiten Spalte („Report“) öffnet sich ein Auswahl-Dialog, in dem ein Report ausgewählt werden kann. Anschließend wird für jeden Parameter eine zusätzliche Zeile hinzugefügt, in der Einstellungen vorgenommen werden können.

In der oberen Zeile kann zusätzlich noch ein Benutzerlevel festgelegt werden, welches der Benutzer mindestens besitzen muss, um das Profil zur Laufzeit sehen zu können. Weiter unten befindet sich für jeden Parameter eine Zeile mit der Namensspalte, sowie einer Checkbox („Zur Laufzeit anzeigen“) und einem Feld für einen Wert. Wird der Haken in der Checkbox entfernt, wird dem Report zur Laufzeit immer und unveränderbar der Wert im Feld „Wert“ als Parameter-Wert übergeben. Dadurch ergibt sich folgende Möglichkeit: Ein Report hat einen oder mehrere Parameter, welche immer gleichbleiben sollen und so nicht jedes Mal eingegeben werden müssen (Überschrift, Kopf-/Fußzeile…). Wird der Haken bei diesen Parametern nicht entfernt und in Wert ist etwas eingetragen, wird dies als Vorauswahl im Eingabefeld zur Laufzeit angezeigt