Konvertieren von MS-Access zu HTML DB in wenigen

Werbung
Konvertieren von MS-Access zu HTML
DB in wenigen Schritten
Autor: Heiko Küchler, ciT GmbH
DOAGNews Q4_2004
Dieses Werk ist urheberrechtlich geschützt. Die dadurch begründeten Rechte, insbesondere die der
Übersetzung, des Nachdrucks, des Vortrags, der Entnahme von Abbildungen und Tabellen, der Funksendung, der Mikroverfilmung oder der Vervielfältigung auf anderen Wegen und der Speicherung in
Datenverarbeitungsanlagen, bleiben, bei auch nur auszugsweiser Verwertung, vorbehalten. Eine Vervielfältigung dieses Werkes oder von Teilen dieses Werkes ist auch im Einzelfall nur in den Grenzen der
gesetzlichen Bestimmungen des Urheberrechtes der Bundesrepublik Deutschland vom 9. September 1965
in der jeweils geltenden Fassung zulässig. Sie ist grundsätzlich vergütungspflichtig. Zuwiderhandlungen
unterliegen den Strafbestimmungen des Urheberrechtsgesetzes.
©2004
Einleitung
Ein erklärtes Ziel von Oracle ist es, mit HTML DB Kunden im Segment der bisherigen Microsoft
Access Anwender zu gewinnen. Ob dieses Vorhaben gelingen kann, dürfte nicht zuletzt davon abhängig sein, inwieweit sich bestehende Microsoft Access Lösungen mit möglichst geringem
Anpassungsaufwand, in eine HTML DB-Anwendung übertragen lassen. Der Beitrag soll einen möglichen Lösungsansatz aufzeigen und den einen oder anderen Tipp geben, um das Vorhaben erfolgreich umzusetzen.
Die vorhandenen Datenbanklösungen bestehen oftmals aus einer Vielzahl von Tabellen, Abfragen
und Formularen. Die Tabellen und Abfragen müssen zunächst einmal in eine Oracle9i/10g Datenbank übertragen werden, bevor die neue HTML DB-Webapplikation die Aufgabe der bisherigen MSAccess Anwendung übernehmen kann. Dazu soll zunächst mit der Oracle9i Migration Workbench
eine Übertragung der Microsoft Access Daten in eine Oracle 9.2.0.3 Datenbank durchgeführt werden.
Damit schaffen wir die Basis für den Einsatz von HTML DB und erstellen anschließend ein geeignetes
Front-End mit HTML DB.
Die Ausgangssituation
Wir besitzen eine MS-Access 97 Datenbank mit einer ebenfalls in Access erstellten Benutzeroberfläche. Zur besseren Kontrolle des Datenbestandes wurde die Datenhaltung getrennt von
Formularen, Abfragen und Berichten gespeichert. Diese Konstellation erfüllt zwar prinzipiell ihren
Zweck, stellte sich jedoch bei Erweiterungsversuchen als recht eingeschränkt und wenig flexibel
heraus. Als wenig zufriedenstellend sind auch die Anmelde- und Datensicherheit, der Umgang mit
größeren Datenmengen sowie der Konfigurationsaufwand für jeden neuen Client zu bewerten.
Für uns Grund genug, um unser Microsoft-Access in eine Oracle9i Datenbank zu übertragen. Zur
Realisierung der Formulare, Berichte und Auswertungen verwenden wir HTML DB, da der pragmatische Ansatz dieses Produktes, die von uns erwünschte Flexibilität bereitstellt und eine intuitive
Benutzerführung bei Anpassungen, Erweiterungen und Administration erlaubt.
Datenmigration
Beginnen wollen wir mit der Übertragung unseres Datenbestandes. Hierfür verwenden wir die Oracle
9i Migration Workbench. Es gibt natürlich auch andere Wege, um Daten von Microsoft-Access nach
Oracle9i zu transferieren, aber mit dem Werkzeug haben wir bislang gute Erfahrungen gesammelt.
Die Oracle9i Migrationsworkbench ist ein Oracle-Feature, das zum Download unter www.oracle.com
bereitsteht. Neben der Hauptanwendung werden diverse Plug-Ins für die Migration zahlreicher
Datenbanksysteme angeboten.
Wir installieren die Migration Workbench samt Plug-In für MS- Access. Nach dem Start der Migration
Workbench werden wir aufgefordert, die zu migrierende Access- Datenbank, allerdings im XMLFormat, auszuwählen. Diese muss zunächst also in das XML-Format konvertiert werden, bevor wir
die Migration fortsetzen können. Das notwendige Werkzeug für diesen Arbeitsschritt wird mit der
Installation der Workbench von Oracle mitgeliefert. Dazu starten wir Microsoft-Access und öffnen die
Datei omwb97.mde bzw. omwb2000.mde, je nach vorhandener Version Ihrer Access- DB, die Sie im
Verzeichnis „omwb\msaccess_exporter\“ unterhalb der Installation ihrer Migration Workbench
befindet.
©2004
Wir laden unsere Access–DB im folgenden Dialog und vergeben einen geeigneten Namen
für die jetzt zu generierende XML-Datei. Anschließend wechseln wir wieder in die Migration
Workbench und wählen die eben erstellte XML-Datei im Feld Microsoft Access XML Data File.
Eine kurze Anleitung zu den eben beschriebenen Abläufen befindet sich im aktuellen Schritt 1
unserer Workbench, in dem wir uns gerade befinden.
©2004
Im Folgenden können wir Anpassungen hinsichtlich der zu verwendenden Datentypen vornehmen
sowie ein Datenmodell für die jeweilige Zieldatenbank erstellen lassen. Abschließend führt der
Assistent das Capturen der Datenbank in die Workbench durch. Dieser Vorgang läuft (in den meisten
Fällen in Verbindung mit Microsoft-Access ) reibungslos und wir können im nächsten Schritt mit der
Übertragung in unsere Oracle9i Datenbank beginnen. An dieser Stelle können in der Workbench
gegebenenfalls noch notwendige Anpassungen manuell vorgenommen werden. Für die Übertragung
in eine Oracle DB benötigen wir einen Benutzer mit DBA-Berechtigung, Zielhost, Port und SID. Der
Migrationsassistent legt mit dem Namen der ehemaligen Access Anwendung (wenn nicht von uns
geändert) in der Oracle9i DB einen eigenen Tablespace, Benutzer und Schema für die zu übertragenden Objekte an. Außerdem können wir wählen, mit oder ohne Tabellendaten zu migrieren.
Zusätzlich kann festlegt werden, welche weiteren Schema-Objekte (Sequenzen, Trigger …) mit
erstellt werden sollen. Im Anschluss an den Migrationprozess bietet der Assistent noch eine
Zusammenfassung und die Möglichkeit, die Tabellen in der ursprünglichen Access-DB zu löschen, um
statt dessen über eine ODBC- Verbindung mit dem neu erstellten Oracle Schema zusammen zu
arbeiten. Das können wir übergehen, denn wir wollen den Client ja auf der Basis von HTML DB
aufbauen.
Die Grundlage für den Einsatz von HTML DB wäre nun hergestellt und wir können uns der Erstellung
einer geeigneten Applikation zuwenden.
HTML DB – Die neue Anwendung
HTML DB – das neue Oracle- Werkzeug für die schnelle, effiziente und webbasierte Anwendungsentwicklung. Ein schlankes Tool, dass außer einem Repository in einer bestehenden Oracle
Datenbank 9.2.0.2 oder höher ( läuft bei mir auch mit 9.2.0.1 ) und dem Apache- Webserver mit
dem Modul mod_plsql für den Verbindungsaufbau zu Oracle, keiner zusätzlichen Installation bedarf.
HTML DB offenbart sich als ein sehr intuitives Werkzeug. Die Entwicklung wird unterstützt durch
zahlreiche Assistenten und vorbereitete Templates und ermöglicht so einen komfortablen Einstieg in
das Produkt. Nach einer kurzen Einarbeitungsphase bewegen wir uns bereits recht sicher in den
Komponenten unseres des Appliations Builder sowie der Administration. HTML DB kann natürlich
wesentlich mehr, als ein paar Assistenten zum erstellen von Web- Seiten mit Datenbankanbindung
©2004
aufzurufen. Es bestehen vielfältige Möglichkeiten der Erweiterung dieser Funktionalitäten, die HTML
DB zu einem äußerst flexiblen und vielseitigen Werkzeug werden lassen.
Einen eigenen Workspace für unsere Anwendung
Zunächst benötigen wir einen eigenen Arbeitsraum für unsere Anwendung. Für diesen Arbeitsschritt
ist es erforderlich, dass wir einen administrativen Zugang zum HTML DB- Repository besitzen. Haben
Sie diese Berechtigung nicht, müssen Sie Ihren Administrator damit beauftragen.
Für die Anwendung benötigen wir unsere migrierten Daten. Hierzu erstellen wir unseren eigenen
Workspace, aufbauend auf dem bereits bestehenden Schema in unserer Oracle Datenbank. Um
einen neuen Workspace zu generieren, melden wir uns mit dem Benutzer Admin am Workspace
Internal unserer HTML DB-Installation an. Wir gelangen in den administrativen Bereich von HTML
DB.
Wir wählen den Link neuen Workspace erstellen und vergeben einen geeigneten Namen, hinterlegen eventuell eine kurze Beschreibung und bestätigen den Schritt.
Im folgenden Dialog kann ein neues Schema anlegt oder ein vorhandenes verwendet werden. Wir
entscheiden uns für das Verwenden eines vorhandenen Schemas und wählen im Feld Schemaname
unser vorbereitetes Datenbankschema aus.
Anschließend an diesen Schritt ist noch ein Administrator für unseren neuen Workspace zu bestimmen, mit dessen Hilfe dieser verwaltet wird. Noch ein kurzer „Kontrollblick“ auf die Zusammenfassung, und schon kann der Workspace mit Button Provisioning fertig gestellt werden.
Die Benutzeroberfläche
©2004
Nun, da wir einen eigenen Workspace besitzen und dieser auch bereits unseren Access- Datenbestand verwaltet, können wir eine ansprechende Oberfläche für die täglichen Aufgaben erstellen.
Dazu melden wir uns zunächst am Workspace Internal ab, und an unserem soeben erstellten
Workspace mit dem Admin-User an. Wir gelangen in den Development-Bereich von HTML DB.
Auf der Startseite angekommen navigieren wir zum Link Application Builder, dem eigentlichen
„Herzstück“ von HTML DB. Wir wählen den Link Anwendung erstellen , da wir eine komplett neue
Applikation aufbauen möchten. In den folgenden Dialogen begleitet uns ein Assistent durch den
Erstellungsprozess unserer Anwendung. Da wir bereits Tabellen in unserem Schema besitzen, fällt
unsere Entscheidung zu Gunsten der Auswahl Auf vorhandenen Tabellen basierend. Im folgenden
wählen wir den Eigentümer der Tabellen und Views und übernehmen die Objekte, die wir für unsere
Anwendung benötigen. An dieser Stelle ist besonders vorteilhaft, dass wir direkt aus den
vorhandenen Objekten des Workspace und somit unseres Datenbankschemas wählen können. Durch
einen Mausklick auf das kleine Symbol neben dem ersten Textfeld gelangen wir an diese Stelle.
Wir bestätigen die getroffene Auswahl und können nun einen Namen für unsere Anwendung
eingeben. Zudem ist es an dieser Stelle noch möglich, die Primärschlüssel auf den Berichtsseiten
auszublenden und einen Hinweispfad in die Navigation einzubeziehen. Abschließend bestätigen wir
unsere Eintragungen und der Assistent generiert uns eine sofort lauffähige Web- Anwendung,
basierend auf unserem neu erstellten Oracle- Schema.
Wir wählen den Link Ausführen, um unser Werk erstmals zu betrachten. Nach Bestätigung des
ebenfalls gleich mit erstellten Anmeldedialogs bestaunen wir unsere erste Applikation mit HTML DB.
©2004
Das war ja für’ s erste nicht schlecht. Wir können von einer zentralen Oberfläche Berichte abrufen,
Daten editieren, neue Eintragungen vornehmen und sogar grafische Auswertungen erzeugen.
Letztere sind mit Hilfe der Adobe- Viewer- Erweiterung für unseren Web- Browser sogar interaktiv
und lassen durch Anklicken des jeweiligen Bereichs der Grafik eine direkte Navigation in den als
Basis dienenden Datenbestand zu. In diesem Modus, wir sind ja als Admin des Workspaces
angemeldet, besteht außerdem der sofortige Zugriff auf die Entwicklungsumgebung, um direkt aus
der Startseite heraus Änderungen und Anpassungen vorzunehmen.
Um unsere Anwendung weiter anzupassen haben wir mehrere Möglichkeiten.
©2004
Direkt aus der Anwendung heraus steht uns der Link Bearbeiten – Links anzeigen zur Verfügung, mit
dem wir das jeweilige Objekt direkt bearbeiten können.
Neben den Links Anwendung bearbeiten und Seite bearbeiten finden wir auch den Link Neu. Damit
werden wir unsere Anwendung jetzt um ein zusätzliches Register erweitern. Dieses beinhaltet eine
View, die wir beim Erstellen der ersten Anwendung nicht aufgenommen hatten. Nach der Auswahl
Neu, erhalten wir eine Darstellung mit mehreren Auswahl-möglichkeiten, abhängig davon, ob ein
Navigationsbereich, eine Region oder ein Bericht bzw. Formular erstellt werden soll.
Wir entscheiden uns für die Auswahl Komponente.
©2004
Im folgenden Schritt wählen wir das Formular und entscheiden uns schließlich für einen Bericht mit
zugehörigem Formular für unsere neue Seite.
Im Folgenden werden wir nach dem Eigentümer gefragt und um die Wahl der einzubindenden
Tabelle / View gebeten. Sollte dieser Auswahllink einmal nichts anzeigen oder eine Fehlermeldung
im Browser- Fenster erscheinen, können wir den Namen der Tabelle oder View auch einfach direkt in
das Textfeld eintragen. Jetzt folgen zunächst einige Angaben zum Bericht und dessen Layout,
gefolgt von Merkmalen für die Darstellung des zugehörigen Formulars. Daraufhin folgen Einstellungen zur Platzierung der neuen Seite in unserer Anwendung sowie Festlegungen zu Primärschlüsseln. Entscheiden Sie ganz individuell, wo Ihre neue Seite angeordnet werden soll.
Abschließend fragt uns der Assistent noch, welche Prozessoptionen auf unserer Seite erscheinen
sollen. Wir kontrollieren die abschließende Auflistung der von uns getroffenen Einstellungen. Ist
soweit alles OK, lassen wir den Bericht samt zugehörigem Formular generieren. Voller Erwartung
starten wir unsere Anwendung und siehe da, es gibt zwei neue Register (je nach Zuordnung
vielleicht auch andere Elemente) mit dem Bericht und einem Formular. Wenn wir Berichtsdaten
abrufen, finden wir neben jedem Datensatz auch gleich einen Button zum Editieren, mit dem wir
direkt in das zugehörige Formular gelangen.
Auf diese Weise bietet uns HTML DB eine große Vielfalt an Möglichkeiten zur Anpassung und
Erweiterung unserer Anwendung, sowohl wie beschrieben durch den Einsatz von Assistenten und
Templates, als auch durch SQL / PL/SQL oder die Verwendung von CSS. Da unserer Anwendung
©2004
Layout-Templates zu Grunde liegen, ist sie natürlich auch problemlos an das Coporate Identity (CI)
Ihres Unternehmens anpassbar. Unsere Anwendung wurde also von einer Microsoft-Access Datenbank in eine flexibel erweiterbare Oracle9i oder 10g Datenbank übertragen und besitzt eine
browserbasierte Benutzeroberfläche, die keine zusätzliche Client-Installation erfordert (von Browser
Plug- Ins für komfortable Diagramme einmal abgesehen). Auch für administrative Aufgaben oder
Veränderungen an der Anwendung benötigen wir lediglich einen Browser, was auch bedeutet, dass
wir diese Aufgaben von jedem beliebigen Arbeitsplatz aus, erledigen können.
Abschließend erstellen wir noch einen User-Namen für „normale“ (weder Administrator noch
Developer) Anwender unseres Systems.
Weitere Benutzer Verwalten
Um unsere Anwendung den Benutzern zur Verfügung zu stellen, legen wir zusätzliche User entsprechend ihrer Aufgaben, mit- bzw. ohne Entwickler-Berechtigung an. Auf der Startseite des HTML
DB- Application-Builder finden wir einen Link Verwaltung. Dahinter verbergen sich eine Reihe von
Überwachungs-, Log- und Berichtsoptionen sowie die Verwaltung neuer Benutzer. Wir wollen einen
neuen Benutzer anlegen der keine Entwickler-Berechtigungen besitzt, sodass er unsere Anwendung
nicht verändern kann. Wir folgen dazu dem Assistenten und bestätigen die Eingaben.
Anschließend starten wir unsere soeben erstellte Anwendung und melden uns zur Probe mit dem
neuen Benutzernamen an. Im Unterschied zu vorherigen Anmeldungen, sollte im unteren Teil
unserer Anmeldung die Leiste zum sofortigen Wechsel in den Entwicklungsbereich fehlen. Sollte Sie
dennoch vorhanden sein, obwohl der Benutzer keine entsprechende Berechtigung besitzt, ist dies
wahrscheinlich auf das Caching-Verhalten Ihres Browsers zurückzuführen. Das Entleeren des Caches
(auch eventuell Proxy- Server beachten) oder das Starten der Anwendung von einem anderen Client
wird dieses scheinbare Fehlverhalten beheben.
©2004
Nach der Anmeldung stehen dem Benutzer alle Funktionen unserer Anwendung zur Verfügung,
allerdings hat er nicht die Möglichkeit, die Anwendung zu ändern.
Auf die geschilderte Weise können wir nun unsere Anwendung jederzeit anpassen und somit zeitnah
und individuell auf sich ändernde Anforderungen reagieren.
Diskussionsforen
http://otn.oracle.com
http://www.oragis.de
Heiko Küchler
[email protected]
ciT Consulting Innovation Training GmbH
©2004
Herunterladen