AAA IT Consulting™ applied advanced ambitious DI Stingl und MMag. Bürger OEG Friedelstraße 30 A-9020 Klagenfurt Dokumentation Klagenfurt, 1. März 2006 SQL Web Broker Einsatz und Entwicklung von webbasierten Datenbankapplikationen 1 ÜBERSICHT .................................................................................................. 2 2 TECHNISCHES KONZEPT .............................................................................. 3 3 METADATENBANK ........................................................................................ 4 4 DATENEXPLORER ......................................................................................... 5 5 WEB FORMULARE ......................................................................................... 7 6 WEB BERICHTE ............................................................................................ 9 7 WEB KALENDER ......................................................................................... 10 8 WEB CHARTS.............................................................................................. 11 9 ENTWICKLUNGSUMGEBUNG....................................................................... 12 10 SYSTEMVORAUSSETZUNGEN................................................................... 13 applied advanced ambitious AAA IT Consulting™ DI Stingl und MMag. Bürger OEG Friedelstraße 30 A-9020 Klagenfurt 1 Übersicht Der SQL Web Broker ist ein System zum Einsatz und zur Entwicklung von webbasierten Datenbankapplikationen. applied advanced ambitious AAA IT Consulting™ Web Formulare Datenexplorer n ate tad kk e M bann Web Berichte Web Kalender Web Charts Ms Excel Abbildung 1: Darstellungsobjekte des SQL Web Brokers Der SQL Web Broker weist folgende Hauptmerkmale auf: • Realisierung und Verknüpfung von unterschiedlichen Darstellungsobjekten in einer Webapplikation, die in einer Metadatenbank parametriert werden • Unabhängigkeit vom zugrunde liegenden Datenbanksystem • Generierung reiner HTML-Seiten - keine kommerzielle Zusatzsoftware auf dem Webserver und auf den Web Clients wird benötigt • Minimaler Ressourcenverbrauch am Webserver und optimierte Datenübermittlung über eine XML-Schnittstelle zu den Web Clients • Bereitstellung eine Entwicklungsumgebung zur Erstellung von webbasierten Datenbankapplikationen • Einsatz eines offenen Systems – über den SQL Web Broker können andere Internetseiten aufgerufen werden und Darstellungsobjekte des SQL Web Broker können von anderen Internetseiten gestartet werden. Seite 2 von 13 applied advanced ambitious AAA IT Consulting™ DI Stingl und MMag. Bürger OEG Friedelstraße 30 A-9020 Klagenfurt 2 Technisches Konzept AAA IT Consulting™ applied advanced ambitious 2 Datenbankserver Metadaten Fachdaten 1 Entwicklungsumgebung MS Access Ex po rt Web Clients Html-Builder Html Editor XML Template Server Komponente 3 Webserver Abbildung 2: Technisches Konzept des SQL Web Brokers Jedes Darstellungsobjekt des SQL Web Brokers setzt sich aus den folgenden Komponenten zusammen: 1. Vorlagen (Templates) Vorlagen sind (HTML-)Dateien, die das Layout eines Darstellungsobjektes, zum Beispiel eines Web Formulares, beinhalten 2. Fachdaten Fachdaten sind Daten aus einer Datenbank, die durch Templates visualisiert werden 3. Metadaten Metadaten definieren, welche Fachdaten in einem Darstellungsobjekt des SQL Web Brokers dargestellt werden und welche Eigenschaften (Verhalten) das Darstellungsobjekt am Web Client aufweist Die Server Komponente des SQL Web Brokers generiert zur Laufzeit aus einem Template, den zugehörigen Metadaten und den Fachdaten eine komprimierte HTMLSeite, die am Web Client dargestellt wird. Zusätzlich wird zu jeder HTML-Seite eine XMLVerbindung aufgebaut, die zur Laufzeit zur Kommunkation des Darstellungsobjektes mit der Server Komponente herangezogen wird. Im SQL Web Broker ist außerdem eine Entwicklungsumgebung integriert, die die einfache Erstellung von Templates und Bearbeitung der Metadaten ermöglicht, ohne dass HTML- und Programmierkenntnisse erforderlich sind. Seite 3 von 13 AAA IT Consulting™ applied advanced ambitious DI Stingl und MMag. Bürger OEG Friedelstraße 30 A-9020 Klagenfurt 3 Metadatenbank In der Metadatenbank werden Daten abgelegt, auf die der SQL Web Broker zur Laufzeit zugreift. Folgende Daten stehen zur Verfügung: • Definition der Struktur des Datenexplorers • Definition aller Darstellungsobjekte des SQL Web Brokers (Web Formulare, Web Berichte, Web Kalender, Web Charts, etc.) o o o o Multilingualität bei der Darstellung aller Objekte (Textmarken, Menüs, Überschriften, etc.) Datensatzherkunft eines Darstellungsobjektes Beispiele: Welche Daten werden in einem Web Formular angezeigt Welche Daten werden in einer Web Chart oder einem Web Kalender visualisiert Die verfügbaren Datenoperationen in einem Web Formular Beispiele: Daten ändern, Daten löschen, Daten neu eingeben, Filtern, Sortieren, Kopieren (Copy/Paste), etc. Bedingte Formatierung (Conditional Formatting) Felder werden abhängig von definierten Bedingungen in einem bestimmten Layout visualisiert. Beispiel: • Farbliche Unterscheidung der Stati in einem Workflow-Prozess • Definition der Verlinkung des Datenexplorers mit den einzelnen Darstellungsobjekten und der Darstellungsobjekte untereinander Beispiele: o Welches Web Formular oder welcher Web Bericht kann von welchem Knoten im Datenexplorer geöffnet werden o Welche Web Chart oder welcher Web Bericht kann von einem Web Formular aus geöffnet werden • Definition der Layouteigenschaft für jedes Feld in einem Web Formular o Typ des Feldes. Beispiele: Datumsfeld, Nummernfeld, Währungsfeld,... o Tooltip des Feldes • Benutzerspezifische Einstellungen Beispiele: o Position, Größe der Web Formulare o Anzahl der angezeigten Daten pro Web Formular Die Metadatenbank ist ein Instrumentarium, mit dem Änderungen, Anpassungen und Erweiterungen ohne zusätzlichen Programmieraufwand im Echtbetrieb durchgeführt werden können und sofort allen Benutzern zur Verfügung stehen (siehe auch Kapitel 9). Seite 4 von 13 AAA IT Consulting™ applied advanced ambitious DI Stingl und MMag. Bürger OEG Friedelstraße 30 A-9020 Klagenfurt 4 Datenexplorer Der Datenexplorer ist eine zentrale Internetplattform, über die sämtliche Daten einer Unternehmung übersichtlich dargestellt und verwaltet werden können. Abbildung 3: Datenexplorer • Die Visualisierung erfolgt in Form einer Baumstruktur analog zum MS Explorer • Dynamischer Aufbau der Baumstruktur - die Baumstruktur wird zur Laufzeit geladen (nachgeladen) • Definition der Baumstruktur durch Überschriften und SQL-Anweisungen – Anpassungen an die Daten eines Unternehmens sind einfach durchführbar und sofort verfügbar • Einbindung von Bildern, die in einer Verzeichnisstruktur abgelegt sind • Generieren von HTML-Tabellen mit bedingter Formatierung (Conditional Formatting) der Inhalte. Die Inhalte sind Daten eines Unternehmens. Seite 5 von 13 AAA IT Consulting™ applied advanced ambitious DI Stingl und MMag. Bürger OEG Friedelstraße 30 A-9020 Klagenfurt • Öffnen von Web Formularen, Web Berichten, Web Charts, Web Kalendern, etc. über kontextsensitive Menüs • Vollständige Integration des Datenbank-Berechtigungssystems • Generierung von dynamischen URLs - es steht die Möglichkeit bereit, andere Internetseiten (z.B. ASP-Dateien) in einem eigenen Browser-Fenster zu öffnen. Beim Aufruf der Internetseiten können Parameter (Daten aus der Baumstruktur des Datenexplorers) übergeben werden. Beispiel für eine dynamische URL mit einem Parameter (%1): http://intragis.ktn.gv.at/gis_intranet/viewer.aspx?fluss_id=%1 Seite 6 von 13 AAA IT Consulting™ applied advanced ambitious DI Stingl und MMag. Bürger OEG Friedelstraße 30 A-9020 Klagenfurt 5 Web Formulare Ein Web Formular ist ein HTML-Formular, in dem Daten aus einem Datenbanksystem unter der Berücksichtigung des zugrunde liegenden Berechtigungssystems verwaltet werden können. Abbildung 4: Web Formulare • Die folgenden Operationen stehen standardmäßig in allen Formularen zur Verfügung: Einfügen, Ändern, Löschen, Suchen und Filtern, Sortieren, Scrollen, Kopieren (Copy/Paste) • Look and Feel Verhalten der Formulare basierend auf der Technologie der Microsoft-Produkte (geringer Schulungsaufwand) • Mehrsprachigkeit (Multilingualität) steht zur Verfügung • Master-Detail-Formulare mit beliebiger Anzahl von Hierarchiestufen können verwendet werden Seite 7 von 13 AAA IT Consulting™ applied advanced ambitious DI Stingl und MMag. Bürger OEG Friedelstraße 30 A-9020 Klagenfurt • Kontextsensitive Menüs können über jedem Eingabefeld und über jeder Schaltfläche innerhalb eines Web Formulares definiert werden. Von diesen Menüs aus können Web Formulare, Web Berichte, Web Charts und Web Kalender geöffnet werden • Registerkarten (Reiter) mit mehreren Seiten stehen zur Verfügung, um Detailinformationen und Unterformulare (Master-Detail) anzuzeigen • Bedingte Fomatierung steht zur Verfügung • Erweiterte Html-Auswahlfelder (Comboboxen) Auswahlfelder, die auf großen Datenmengen basieren. Beispiel: Rechnungsleger mit 10.000 Auswahlmöglichkeiten • Cascading Style Sheets (CSS) können für jedes Webformular definiert werden und die Schriftgröße kann benutzerspezifisch eingestellt werden • Alle Formulare sind optimiert für das Bearbeiten von großen Datenmengen Beispiel: Bei einem Buchungssystem im Land Kärnten werden 20.000 Datensätze pro Monat erfasst. Seite 8 von 13 applied advanced ambitious AAA IT Consulting™ DI Stingl und MMag. Bürger OEG Friedelstraße 30 A-9020 Klagenfurt 6 Web Berichte Ein Web Bericht stellt Daten aus einem Datenbanksystem in Berichtsform dar. Abbildung 5: Web Berichte • Bereitgestellte Formate: PDF, Snapshot, RTF • Flexible Erstellung der Berichte mittels Ms Access innerhalb der Entwicklungsumgebung. Mittels ODBC kann auf die wichtigsten Datenbanksysteme zugegriffen werden. • Uploadfunktionalität der Ms Access Berichte aus der Enwicklungsumgebung zum Datenexplorer. Damit stehen die Berichte sofort allen berechtigten Benutzern zur Verfügung. • Mehrsprachigkeit steht zur Verfügung • Bedingte Formatierung steht zur Verfügung • Aufrufmöglichkeit der Berichte aus Fremdsystemen mit einfacher Parameterübergabe (z.B. von anderen Internetseiten) Seite 9 von 13 AAA IT Consulting™ applied advanced ambitious DI Stingl und MMag. Bürger OEG Friedelstraße 30 A-9020 Klagenfurt 7 Web Kalender Ein Web Kalender ist ein HTML-Formular, in dem Daten aus einem Datenbanksystem in Kalenderform dargestellt werden können. Beispiele: Termine, Schulungen, Rechnungen Abbildung 6: Web Kalender (Tagesbuchungen grün, Rechnungen rot) • Templatekonzept für Web Kalender Es können Templates definiert werden, die zur Laufzeit mit den Daten (basierend auf den SQL-Anweisungen) verknüpft und anschließend visualisiert werden. Die Vorlagen werden mit einem Editor erstellt und in der Metadatenbank gespeichert. Folgende Möglichkeiten stehen zur Verfügung: o o • Tagesansicht, Wochenansicht, Monatsansicht, Jahresansicht, etc. Cascading Style Sheets (CSS) für die Gestaltung des Layouts Die Daten, die in einem Web Kalender visualisiert werden, werden mittels SQLAnweisungen definiert o Kein Programmieraufwand erforderlich Seite 10 von 13 AAA IT Consulting™ applied advanced ambitious DI Stingl und MMag. Bürger OEG Friedelstraße 30 A-9020 Klagenfurt 8 Web Charts Eine Web Chart ist ein HTML-Formular, in dem Daten aus einem Datenbanksystem graphisch dargestellt werden. Abbildung 7: Web Charts (Soll-Ist-Vergleich mit zwei Y-Achsen) • Templatekonzept für Web Charts Es können Templates definiert werden, die zur Laufzeit mit den Daten (basierend auf den SQL-Anweisungen) verknüpft und in einem HTML-Formular angezeigt werden. Die Templates werden mit einem Chart Editor erstellt und in der Metadatenbank gespeichert. Folgende Möglichkeiten stehen zur Verfügung: o o o o o o o o • 2-dimensionale Darstellung, 3-dimensionale Darstellung beliebig viele Datenreihen (Zeitreihen) 40 unterschiedliche Darstellungsformen (Balken, Linien, Punkte, Flächen, Histogramme, etc.) beliebig viele Y-Achsen Vergrößern/Verkleinern, Scrollen Exportieren in unterschiedliche Formate. Beispiele: Ms Excel, JPEG, etc. Drucken etc. Die Daten, die in einer Web Chart visualisiert werden, werden mittels SQLAnweisungen definiert o Kein Programmieraufwand erforderlich Seite 11 von 13 AAA IT Consulting™ applied advanced ambitious DI Stingl und MMag. Bürger OEG Friedelstraße 30 A-9020 Klagenfurt 9 Entwicklungsumgebung Der SQL Web Broker stellt eine Entwicklungsumgebung zur Erstellung von webbasierten Datenbankapplikationen bereit, die folgende Merkmale aufweist: • Sie ermöglicht die Bearbeitung der Metadatenbank, das heißt: o o o Den Aufbau der Baumstruktur des Datenexplorers Die Erstellung der Darstellungsobjekte des SQL Web Brokers - Web Formulare, Web Berichte, Web Charts und Web Kalender Die Verlinkung des Datenexplorers mit den einzelnen Darstellungsobjekten und der Darstellungsobjekte untereinander (siehe auch Kapitel 3) • Sie ermöglicht die Erstellung von webbasierten Datenbankapplikationen ohne dass HTML -und Programmierkenntnisse erforderlich sind • Sie stellt die Möglichkeit bereit, eine Applikation, die in Ms Access entwickelt wurde, ohne HTML– und Programmierkenntnisse in eine Webapplikationen zu migrieren • Die Entwicklungsumgebung selbst wurde mittels der Entwicklungsumgebung erstellt AAA IT Consulting™ applied advanced ambitious Export Abbildung 8: Entwicklungsumgebung Export eines Ms Access Formulars in ein Web Formular Seite 12 von 13 AAA IT Consulting™ applied advanced ambitious DI Stingl und MMag. Bürger OEG Friedelstraße 30 A-9020 Klagenfurt 10 Systemvoraussetzungen Systemvoraussetzungen für den Einsatz des SQL Web Brokers sind: • • • Webserver o Installation des Internet Information Server (IIS 5.0 oder höher) o Datenbankverbindung zu einer relationalen Datenbank (Oracle, Ms SQL Server,...) o Für den Einsatz von Web Berichten: Installation von Microsoft Access 97, 2000, XP oder 2003. o Für den Einsatz von Web Charts: Installation der Teechart-Grafikkomponente von Steema (Teechart Active X v6 oder höher) – Kosten: ungefähr 350€ o Minimaler Ressourcenverbrauch am Webserver die Serverkomponente benötigt etwa 40 MB Web Clients o Internet Explorer 5.5 oder höher o ActiveX-Steuerelement oder Plugins müssen aktiviert sein Clients, die für die Entwicklung und Parametrierung (mittels der Entwicklungsumgebung) einer Applikation herangezogen werden o Installation von Microsoft Access 97, 2000, XP oder 2003 o Datenbankverbindung zu einer relationalen Datenbank (Oracle, Ms SQL Server,...) o Für die Erstellung von Web Charts: Installation der Teechart-Grafikkomponente von Steema (Teechart Active X v6 oder höher) Seite 13 von 13