Allgemeines Statistik System
Benutzerhandbuch
ASS-InterNet
DokumentationsübersichtAA SSSSSS SSSSSS AAAA SS SS SS SS AA AA SS SS AA AA SS SS AAAAAAAAAA SSSSSSS SSSSSSS AA AA SS SS AA AA SS SS AA AA SS SS SS SS AAA AAA SSSSSS SSSSSS Handbuch ASS-InterNet --------------------- Bürger Hahne Paulus Valz Bemerkung: slashes '/' in Pfadangaben sind als backslashes zu lesen.
ASS-InterNet ist eine strategische Erweiterung des ASS-Kernel. Damit können Statistiken und Anwendungen mit definiertem Aufbau über das Inter-/Intranet abgerufen werden. Die Auswertung der Datenbestände erfolgt dabei zum Zeitpunkt der Anforderung aus der Datenbasis (AdHoc). Statistiken und Zahlen erreichen den User somit weltweit in hoher Aktualität. Die Gestaltung der Statistiken orientiert sich am Erscheinungsbild unter ASS-Excel. Darüber hinaus kann der Aufbau auch frei gestaltet werden. Eine flexible technische Realisierung wurde durch eine mögliche Trennung der ASS-Datenhaltung vom Inter-/ Intranetserver erzielt. Dabei greift ein Windows-/Linux-/IBM- Webserver wie ein ASS-PC-Client auf ASS-Datenbestände zu. Er gibt die Anforderung des Clients an das Datenbanksystem und stellt das daraufhin erhaltene HTML-Dokument via Intra-/Internet zur Verfügung. Neben kurzen Antwortzeiten wird damit auch Unabhängigkeit bei Betriebs-, Datenbank-, und Webserver-System erzielt. Da auf jedem PC ein Browsers verfügbar ist, entfällt die clientseitige Software-Verteilung. Für zusätzlichen Komfort sorgen eine Schnittstelle nach Microsoft-Excel und eine Druckaufbereitung. Beides sind besondere HTML-Formate, die für die Weiterver- arbeitung auf dem Drucker oder in Excel optimiert sind. Das Erscheinungsbild der Statistik bleibt zusammen mit den Formatierungen weitestgehend erhalten.
Folgende Grafik spiegelt die Kommunikationsprozesse zwischen Client, Webserver und ASS-Datenbanksystem prinzipiell wieder:
Abb.: Kommunikation zwischen den Systemkomponenten - Über eine URL-Adresse im Browser wird vom Client eine Verbindung zum Webserver hergestellt. - Dort wird via Skript oder in ISAPI-Funktionen ein ASS-Programm mit bestimmten Parametern aufgerufen. Dieses Programm (PCL5000) ist Bestandteil der ASS-Webserver-Installation. Der Zugriff auf die ASS-Datenbestände kann mittels einer ASS-PC-Installation auf dem Webserver oder über eine Durchgriffsvariante (PCL1333) realisiert sein. Im zweiten Fall (vgl. Abbildung) sind ASS-Datenhaltung inkl. Auswertung auf einem separaten System installiert, das auch andere ASS-Komponenten bedienen kann (ST31 lokal, Batchauswertung oder Client-Server mit ASS-Excel). Das ASS-Datenhaltungssystem erstellt dann jeweils eine HTML-Datei, die vom Webserver aufbereitet an den Browser geschickt wird. Zwischen einzelnen Aufrufen des Clients (= Betätigen eines Buttons im Browser) hält ASS Informationen zu Dialogzuständen oder Statistiken innerhalb der SPA-Datenbank vor.
ASS: Eine Installation von ASS-InterNet ist in allen Umgebungen möglich, auf denen ASS mit einer Durchgriffsvariante eingesetzt werden kann. Dies setzt eine COBOL-Installation voraus. Für ASS-Kunden, die am Grossrechner ausschließlich PL/I einsetzen, ist eine lokale Installation von ASS-PC am Webserver mit Spiegelung der ASS-Datenbanken denkbar. Webserver: Folgende Software wurde bisher eingesetzt: - Apache Webserver - Apache Tomcat - MS Internet Information Server Beim IIS kann mit einer ISAPI-DLL (MCL5555) gearbeitet werden. Browser: Falls alle in Frage kommenden PCs einen Browser besitzen, der den HTML-Standard 4.0 unterstützt, können Framesets eingesetzt werden. Die ASS-Steuerung wird dann auf einen separaten Frame ausgelagert. Folgende Browser unterstützen lt. Hersteller diesen Standard: - MS Internet-Explorer ab Version 3 - Opera, ab Version 3 - Firefox Im ASS-Entwicklerteam wird mit neueren Versionen dieser Browser getestet. Bemerkungen: - Dem IE von Microsoft bereitet das Drucken mehrseitiger Statistikblätter in der Version 5.5 Schwierigkeiten. - Der Navigator der Firma Netscape hat Schwierigkeiten bei der Interpretation von Java-Scripten, die über Frames hinweggreifen. Bei Bedarf nehmen Sie bitte Kontakt zur ASS-Wartung auf.
1. Von einem Internet-Browser wird eine Verbindung zum Webserver aufgebaut. 2. Dann geht eine HTTP-Anfrage mit der Adresse des Perl-Scripts (z.B. "/cgi-bin/ASS.pl") an den Webserver. 3. Der Webserver startet das Perl-Script. 4. Das Perl-Script ruft das ASS auf, das dann aus den übergebenen Parametern eine HTML-Datei (z.B. mit der Anmeldemaske oder der Statistik) generiert und in einer temporären Datei abspeichert. 5. Das Perl-Script gibt die temporäre Datei per CGI (siehe "Funktionsweise von CGI") an den Webserver aus. 6. Der Webserver wiederum schickt die Datei an den Browser.
Abb.: Aufruf-Hierarchie bei der Perl-CGI-Lösung Diese Prozedur wiederholt sich pro Seitenaufruf noch zwei bis dreimal auf ähnliche Weise, da der Browser für jeden Frame eine zusätzliche Anfrage schickt. Dazu unter 3. Genaueres.
Grundsätzlich funktioniert CGI (Common-Gateway-Interface) folgendermaßen: Der Webserver ruft aufgrund der eingegebenen URL ein Programm auf (ein Script, z.B. Perl, oder eine ausführbare Datei). Das Programm gibt dann den HTML-Code per "print" oder "echo" o.ä. nach "stdout" (Standard-Output) aus. Dieser Standard-Output wird dann vom Webserver "abgefangen" und direkt zum Browser geleitet. Da diese Methode weitgehend sprachen-, webserver- und plattformunabhängig ist, hat sie sich heute sehr weit verbreitet. So funktioniert die Perl-CGI-Lösung auf allen Webservern, die CGI und Perl unterstützen.
Der IIS (Microsoft Internet Information Server) ist der Webserver von Microsoft. Er läuft im Gegensatz zu anderen Webservern auch nur unter Windows. Als Programmier-Schnittstelle, gibt es ein Application-Programming-Interface (API), das ISAPI. Das funktioniert technisch in Form einer eigenen DLL (Dynamic-Link-Library). Eine DLL ist ein kompiliertes Programm, was gegenüber Perl, das ja eine interpretierte Sprache ist, bereits einen Geschwindigkeitsvorteil bringt. Die DLL wird vom Information Server dynamisch geladen und bei einer Anfrage eine bestimmte Funktion in der DLL ausgeführt. Es handelt sich um einen direkten Aufruf. Es wird hier also kein eigener Prozess gestartet. Für die gleichzeitige Verarbeitung mehrerer Clients wird pro Client innerhalb des IIS ein neuer Thread gestartet. Die Anfrage wird dann von dem Thread unabhängig von anderen Anfragen verarbeitet.
Da die COBOL-Programme des ASS-Kernels nicht multithreading- fähig sind, wurde die Schnittstelle in 2 Programmteile zerlegt: - Eine DLL namens MCL5555.dll, die vom IIS geladen wird - Eine EXE-Datei namens PCL5555.exe, die das ASS lädt Ein PCL5555-Prozess kann das ASS nur einmal laden und zur selben Zeit nur eine Anfrage verarbeiten. Deswegen sollen mehrere Prozesse gleichzeitig laufen. Wenn das MCL5555 vom IIS geladen wird, startet es eine festgelegte Anzahl von Prozessen des PCL5555.exe (standardmäßig 3). Ein Prozess benötigt etwa 10 MB RAM bei der lokalen Variante und rund 3 MB bei der Durchgriffsvariante. Bei einer Anfrage von einem Browser kommuniziert das MCL5555 per Interprozesskommunikation mit den PCL5555-Prozessen. Ein Prozess, der gerade "frei" ist, wird dann "aufgeweckt" und leitet die Anfrage an den ASS-Datenbankserver weiter. ASS führt die Anfrage aus und generiert eine HTML-Seite, die in einer temporären Datei gespeichert wird. Danach geht der Prozess wieder in einen Wartezustand über. Der Prozess wird aber nicht beendet, was es ASS möglich macht, im Hintergrund eine Verbindung zu einem Server dauerhaft aufrechtzuerhalten. Abschließend wird die HTML-Datei vom MCL5555 eingelesen und zum Browser geschickt. Die HTML-Datei enthält wieder Verweise und Formulare, die beim Anklicken bestimmte Parameter an das ASS zurückschicken, woraufhin wieder die nächste Seite generiert wird. usw.
Abb.: Kommunikation zwischen MCL5555, PCL5555 und dem ASS-Kern Das Entladen des MCL5555 und Beenden der Prozesse funktioniert folgendermaßen: Das MCL5555 kann vom IIS "entladen" werden, und zwar: - Automatisch beim Beenden des IIS - Manuell auf der Administrationsoberfläche des IIS, wobei der IIS selbst nicht beendet wird. (siehe 3.2.3) Beim Entladen schickt das MCL5555 einen "Beenden-Befehl" an die PCL5555-Prozesse. Daraufhin entladen die Prozesse ASS und beenden sich danach selbst.
Der Übersicht halber werden die Frame-Sets in diesem PAP nicht berücksichtigt, da die Frame-Sets nur im MCL5555 behandelt werden, und keine Interprozesskommunikation mit dem PCL5555 benötigen.
Abb.: Programmablaufplan: Übersicht
Der "Beenden-Befehl" wurde bereits unter 3.3.3 erläutert und wird hier nicht berücksichtigt.
Abb.: Programmablaufplan: MCL5555.dll
Abb.: Programmablaufplan: PCL5555.exe
Die folgende Aussage bezieht sich auf Apache 1. Der Nachteil der Perl-CGI-Lösung ist, dass pro Anfrage ein neuer Prozess gestartet wird, der das Programm neu ausführt. Da ASS im "Client-Modus" für jede Anfrage auf den ASS-Datenbank-Server zugreift, muss für jede Anfrage die Verbindung vom Webserver (ASS-Client) zum ASS-Datenbank-Server neu aufgebaut werden, da kein Prozess vorhanden ist, der einmal aufgebaute Verbindungen aufrecht erhalten könnte. Das verlängert die Laufzeit teilweise erheblich. Die ISAPI-Lösung hat im Hintergrund einen "Prozess-Pool" laufen. Die Prozesse werden nicht nach jeder Anfrage beendet. Allerdings funktioniert die ISAPI-Lösung nur unter Windows.
Im Kontext Pfad /ass läuft das Java-Programm ASSInterNetServlet mit dem Anzeigenamen ASS-InterNet - Java-Servlet-Version. Ausgeliefert wird dies als ass.war für Linux, Unix und Windows. Im Hintergrund kommuniziert das Servlet via TCP/IP mit dem Daemon/Dienst PCL1333.
Der statistische Internetauftritt ist flexibel konfigurierbar. ASS-InterNet kann etwa ins firmeneigene Intranet oder in eine Internetseite eingebunden werden. Am Webserver besteht die Möglichkeit, steuernde Skripte so einzurichten, dass der ASS-Dialog an einer tiefen Ebene der Dialoghierarchie gestartet wird (z.B. direktes Ansteuern einer Anwendung via Link). Framesets, die den Browserbildschirm aufteilen, können nach Bedarf eingerichtet werden. Dabei sind die Anordnung von Hauptbild und Steuerframe und deren anteilige Größe von Angaben in der INI-Datei (siehe 3.2.2. bzw. 3.3.2.) abhängig. Zusätzlich kann die Anzeige auf drei Frames aufgeteilt werden. Im Kopfframe werden dann Überschriften und Kopfschlüssel angezeigt. Das Blättern über mehrere Seiten erfolgt dabei durch zusätzliche Buttons im Steuerframe. Ein zentrales Stylesheet-Dokument am Server bestimmt Schriftart, -farbe und -größe der Texte in den Steuerungsmasken und Hintergrundbild. Zentrale Texte, wie die Überschrift des Anmeldebildschirms, der Browser-Titel, oder der Beenden Link, sind kundenspezifisch. Die Konfigurationsmöglichkeiten sind in den mitgelieferten Beispiel-INI-Dateien der Scripts genauer erläutert.
Die Datei ASSPerl.pl muss zusammen mit der Datei ASSPerl.ini aus dem PGM-Verzeichnis in das "cgi-bin-Verzeichnis" des Apache kopiert werden. Das ist z.B. standardmäßig "C:/Programme/Apache Group/Apache/cgi-bin", kann aber auch anders heißen. Wenn die INI-Datei angepasst worden ist (siehe 3.2.2.), ist das Script einsatzbereit und man kann im Browser über die URL http://server/cgi-bin/ASSPerl.pl darauf zugreifen.
In der INI-Datei können sämtliche Einstellungen für die Perl-CGI-Schnittstelle vorgenommen werden. Die Datei ASSPerl.ini muss im selben Verzeichnis liegen, in der sich auch die ASSPerl.pl befindet. Ein Beispiel mit ausführlichen Kommentaren wird standardmäßig im PGM-Verzeichnis mitinstalliert. (ASSPerl.ini)
Das Perl-Script wird bei jedem Aufruf neu ausgeführt. Änderungen an der Konfiguration werden also sofort wirksam. Das Perl-Script muss also nicht extra beendet werden.
Die Datei MCL5555.dll muss zusammen mit der Datei MCL5555.ini aus dem PGM-Verzeichnis in das "Script-Verzeichnis" des IIS kopiert werden. Das ist z.B. standardmäßig "D:/InetPub/scripts", kann aber auch anders heißen. Man kann hier auch selbst ein Neues anlegen. Wenn die INI-Datei angepasst worden ist (siehe 3.3.2.), ist die Schnittstelle einsatzbereit und man kann im Browser über die URL http://server/scripts/MCL5555.dll darauf zugreifen.
In der INI-Datei können sämtliche Einstellungen für die Schnittstelle vorgenommen werden. Die Datei MCL5555.ini muss im selben Verzeichnis liegen, in der sich auch die MCL5555.dll befindet. Ein Beispiel mit ausführlichen Kommentaren wird standardmäßig im PGM-Verzeichnis mitinstalliert. (MCL5555.ini) Die grundsätzlichen Einstellungen der INI-Datei werden eingelesen, wenn das MCL5555 geladen wird. Detaillierte Einstellungen, wie z.B. für die Erzeugung von Frame-Sets, werden bei jedem Aufruf eingelesen. Wenn also am Frame-Set-Layout Änderungen vorgenommen werden, ist es nicht nötig, das MCL5555 neu zu starten.
Zum Beenden der Schnittstelle muss man zuerst die Microsoft Management-Konsole mit dem Information-Server-Snap-In starten. Hier klickt man das Script-Verzeichnis mit der rechten Maustaste an und klickt auf Eigenschaften. Dann sieht man etwa folgendes Fenster:
Hier klickt man dann unten auf den "Entladen"-Button. So wird die MCL5555.dll entladen und die PCL5555.exe-Prozesse beendet.
Die Installation kann mit dem Tomcat Webanwendungs-Manager oder durch Kopieren in das Tomcat webapps Verzeichnis erfolgen. Installiert und kopiert wird lediglich die ass.war. Beim Kopieren kann entweder die ass.war oder die entzippte Verzeichnisstruktur der ass.war genommen werden. Die Einstellungen erfolgen in der XML-Datei web.xml im Unterverzeichnis WEB-INF von ass.war. Die Angaben sind dort auch erklärt.
Gerade die offene Zugriffsform des Internets erfordert hohe Sicherheitsstandards. Die bisherige ASS-Security wurde deshalb um ein Passwort erweitert. Es kann via ST06 oder ASS-InterNet angelegt und geändert werden. Darüber hinaus bieten alle Webserver Sicherheits- und Verschlüsselungstechniken an. Die gängige 256-Bit-Verschlüs- selung kann der Browser mittels eines hinterlegten Zertifikats entschlüsseln. Außerdem schreibt jeder Webserver Log-Dateien. Daneben kann ASS wichtige Details von Anforderungen an die Datenbasis in einem ggf. einzurichtenden Statistik- Arbeitsgebiet aufsammeln. ASS-InterNet ist in dieses System vollständig integriert.
Die Benutzerführung in ASS-InterNet orientiert sich an bisherigen ASS-Oberflächen: -- ANMELDEBILDSCHIRM und ggf. BERECHTIGUNGSPROFILAUSWAHL -- BIBLIOTHEKSAUSWAHL: Anwendungen oder Anforderungen und Filtereingabe für Bibliothekselemente -- ANFORDERUNGSAUSWAHL -- PARAMETERBELEGUNG Dialogunterstützte Parameterinhaltsauswahl auf Anforderung bei entsprechender Parameter-Regel. -- STATISTIK (incl. Spaltensequenzen zum Links/Rechtsblättern) GRAPHIK zu einer Statistikseite, bei entsprechender Option in zugehöriger Anforderung -- VERZWEIGUNGSMOEGLICHKEITEN in Anwendungen: mittels Buttons zum Weiterschalten von Anforderung zu Anforderung; dabei Selektion von Parameterinhalten durch Auswahl von Optionsfeldern beim gewünschten Kopf- oder Zeilenschlüssel möglich
Bedienerfreundlichkeit steht bei ASS-InterNet im Vordergrund. In jedem Bild werden Rücksprungmöglichkeiten zu allen übergeordneten Bildern angeboten; Außerhalb von Anwendungen können die Standard-Verzweigungsknöpfe der Browser ('ZURUECK', 'VORWAERTS') verwendet werden. Alle nötigen Dialoginformationen wie Anmeldeinfo, Filter, Parameterinhalte werden in der ASS-SPA-Datenbank vorgehalten und bleiben über die gesamte Sitzung erhalten. Der Button, mit dem am wahrscheinlichsten weiterverzweigt wird, ist jeweils mit dem Tastaturfocus versehen. Durch Betätigung der Enter-Taste wird dieser Button angesprochen. Daneben kann mit der Tabulator-Taste navigiert werden.
Drucken von Statistiken ist auch im Online-Zeitalter ein zentrales Thema. Da die Standard-Druckoutputs der Browser nicht zufrieden stellen, kann ASS-InterNet eine eigene Druckaufbereitung der gelieferten Statistik erstellen. Diese wird in einem eigenen Frame ausgegeben und mit entsprechendem Seitenformat bei den Druckereinstellungen ausgedruckt. ASS geht beim Berechnen der Druckaufbereitung von Standard- werten beim Seitenrand (2 cm) aus. Um die Lesbarkeit zu unterstützen, erscheinen Seiten- und Zeilenköpfe auf jeder Druckseite.
Parallel zu ASS-Excel werden die Statistiken für das Internet
formatiert. Dabei bleiben zentrale Bestandteile der
Formatvorlagen und wesentliche Einträge im Bereiche-Blatt
erhalten.
HTML-STANDARD-FORMATIERUNGEN:
Falls bei einer Anforderung selbst keine HTML-Formate abgelegt
sind, ziehen ggf. die Standard-Formate, die bei der Anforderung
'DFLT_HTM' hinterlegt sind.
Per Dialog können unter ASS-Excel einzelne Formatierungen
in die Internet-Oberfläche übernommen werden
( Zusätze --> HTML...):
Abb.: ASS-Excel-Dialog 'Formate für HTML' Daneben gibt es die Möglichkeit ASS-Internet-Optionen maschinell von außen zu setzen: Im ASS-PGM-Verzeichnis befindet sich die Datei ASS_Internet_Optionen.xls Damit ist es möglich, mehrere Anforderungen auf einmal für die Darstellung im Internet zu speichern. Nach Betätigen des Buttons 'Anzeigen' werden die Elemente der eingestellten Bibliothek in der Listbox angezeigt. Zur Einschränkung der Auswahl kann ein Filter angegeben werden. Die Formatierungsbestandteile, die man übernehmen möchte, kann man in den Auswahlboxen anklicken. Standardmäßig sind alle aktiviert. Ist die Option 'nur Anforderungen ohne HTML-Option' aktiv, werden nur diejenigen Anforderungen angezeigt, bei denen diese Optionen noch nicht gesetzt oder alle deaktiviert wurden. In der Listbox ist analog zum Windows-Explorer das Markieren mehrerer Elemente möglich (mit Hilfe der Strg- oder Shift- Taste). Entsprechend stehen auch die Kommandos 'alles markieren' und 'Markierung umkehren' zur Verfügung. Jede zu bearbeitende Anforderung muss zuvor in der Listbox markiert werden. Die entsprechende Verarbeitung erfolgt durch die Schaltfläche 'Ändern'. Die gerade bearbeitete Anforderung wird in der Statusleiste angezeigt.
Abb.: Bestehende Anforderungen mit HTML-Optionen versehen
Bei den Formatvorlagen werden die im folgenden genannten Einstellungen für alle ausgewählten Formatvorlagen in eine Internet-Statistik übertragen: - Schriftart: alle am Client installierten Schriftarten - Schriftformatierung: normal, kursiv, fett oder fett-kursiv - Schriftgröße: entsprechend der HTML-Vorgaben in 7 Stufen - horizontale Ausrichtung: links, zentriert, rechts oder default (Text links-, Zahlen rechtsbündig) - vertikale Ausrichtung: hochgestellt, normal, tiefgestellt - Schriftfarbe und Hintergrundfarbe werden in Echtfarben übernommen (RGB-Codierung).
Über ASS-Excel können Bereiche für den Statistik-Kopf, für Zeilen/Spaltenüberschriften und für Fußtexte textiert und gestaltet werden. Die von ASS erstellten Standardtexte werden durch den entsprechenden Bereich überblendet. Wenn diese Bereiche von ASS-InterNet übernommen werden, bleiben alle unter 1. beschriebenen Formatierungsmerkmale erhalten. Darüber hinaus können pro Zelle 60 Zeichen eingetragen werden. Verweise ins Bezüge- und Tabelle-Blatt werden auch in der Internetversion aufgelöst. Des weiteren werden die Funktionen 'VERKETTEN', 'TEIL' (=Substring) und 'ASSMonat' umgesetzt.
Neben diesen von ASS-Excel bekannten Verfahren bietet ASS-InterNet an, den Statistikaufbau völlig frei zu gestalten. In einem MIS-System können damit beispielsweise ganz zentrale Ergebnisse von Anforderungen an die Datenbasis exponiert dargestellt werden. An einem Bezug in den Zahlenbereich des Tabelle-Blatts erkennt ASS-InterNet, dass der Standard-Zahlenteil unterdrückt und die Statistik frei gestaltet werden soll. Unter ASS-Excel wurde in folgendem Beispiel im Bereiche- Blatt der Kopfbereich auf die gesamte Statistik ausgedehnt und mit Zahlen aus dem Tabelle-Blatt gefüllt. Der eigentliche Zahlenbereich wurde durch geeignete Wahl von Formatvorlagen unsichtbar:
In ASS-InterNet sieht dieselbe Statistik gegenwärtig so aus:
In der Internet-Oberfläche kann das gelieferte Zahlenmaterial grafisch in verschiedene Grafiktypen umgesetzt werden. Um Dokumentgröße und Rechenaufwand zu minimieren wird zu einer Statistikseite ein Diagramm von definiertem Typ auf Anfrage erzeugt. Mit Hilfe von speziellen C++ -Bibliotheken, die in ein Programm am Webserver eingebunden sind, wird eine Datei vom Typ PNG (PortableNetworkGraphics) erstellt, die alle gängigen Applikationen verarbeiten können (vgl. das Copyright auf Diagrammen). Somit ist es möglich, das Bild in jede Office-Anwendung einzubinden (Browserfunktionen 'kopieren' oder 'Bild Speichern unter'). Die Darstellung der Grafiken orientiert sich gegenwärtig an einer Werteanforderung im Spaltenbereich der Statistik. Durch geeignete Spaltensequenzen kann die grafisch umzusetzende Datenbasis reduziert werden. Zu jeder Anforderung muss festgelegt werden, welche Grafiktypen zulässig sind (keine Voreinstellung , alle, ein bestimmter). Folgende Typen werden angeboten:
Pro Spalte wird ein Kreisdiagramm erzeugt, das die Zahlenverteilung aufgeschlüsselt nach den Zeilen zeigt: