Oracle Forms - Datenbanken

Werbung
Oracle Forms
• Oracle Forms ist eine Applikation für den Entwurf
und die Erstellung Forms-basierender Anwendungen.
• Diese Forms umfassen
¾ Dateneingabe-Formulare
¾ Datenabfrage-Formulare
¾ Browser-Formulare
Oracle Forms ist ein Teil der Oracle Developer Suite
Oracle Forms Dr. Annemarie Herrmann
Starten von Oracle Forms
1. Start OC4J (Oracle
Components for
Java) muss im
Hintergrund laufen
wegen der Ausführung im Browser
2. Start Forms Builder
(in der Oracle
Developer Suite)
3. Es erscheint der
Objektnavigator
Oracle Forms Dr. Annemarie Herrmann
Aufbau und Bestandteile von Formularen
Ein Formular ist eine Zusammenstellung von Objekten.
Objekte sind z. B.:
¾Datenblöcke (aus Tabellen oder Views)
¾Steuerblöcke (z. B. Buttons)
¾Leinwände (Canvas)
¾Datensatzgruppen (Record group)
¾Wertelisten (LOV's)
¾Trigger
¾Fenster
¾...
Oracle Forms Dr. Annemarie Herrmann
Erstellen eines neuen Blocks
1. Der Assistent (Werkzeuge / Datenblockassistent)
wird gestartet
2. Tabelle oder View dient als Datenquelle
3. Um Spalten aus einer Tabelle oder View auswählen
zu können, muss man sich mit der Datenbank
verbinden
Oracle Forms Dr. Annemarie Herrmann
Windows und Canvas (Leinwand)
Leinwand (Canvas) erstellen (1)
1. Ein Window (Fenster) ist ein Container für
graphische Objekte (inklusive ≥ 1 Canvas-Objekte)
1. Nachdem die Spalten für den Datenblock
ausgewählt und der Layout-Assistent
gestartet wurde, wird eine Leinwand erstellt.
2. Ein Fenster beinhaltet einen Titel, evt. Bildlaufleisten
(scroll bars) und erlaubt fensterbezogene
Benutzerinteraktionen (z.B. Größenänderung)
2. In dieser werden die Attribute ausgewählt,
die dargestellt werden sollen.
3. Eine Form kann beliebig viele Fenster
beinhalten, besitzt aber mindestens ein Fenster
(ROOT WINDOW)
3. Hier kann auch das Layout verändert
werden. Günstiger ist es aber, dies später
im Layout-Editor zu tun.
Oracle Forms Dr. Annemarie Herrmann
Leinwand (Canvas) erstellen (2)
Oracle Forms Dr. Annemarie Herrmann
Layoutfenster
Im entstehenden Layoutfenster können nun die Layoutparameter
Schrifthöhe und –breite, Anordnung, Farben usw. eingestellt werden
Oracle Forms Dr. Annemarie Herrmann
Oracle Forms Dr. Annemarie Herrmann
Formular im Browser (1)
Sortieren
Im Forms Builder im
Objektnavigator den
Datenblock (z. B.
Kunden)
doppelklicken damit
die Attributpalette
erscheint.
In der Attribut-Palette
'ORDER BY' suchen.
Hinter 'ORDER BY'
LASTNAME,
FIRSTNAME
eintragen.
Speichern und Form
ausführen.
Oracle Forms Dr. Annemarie Herrmann
Mit Programm Æ Form ausführen erhält man das fertige Formular
im Browser
Standardmäßig befindet man sich im Eingabemodus:
mit Klick auf das grüne Kreuz können Sätze hinzugefügt werden
(Klick auf das Diskettensymbol Æ commit)
Oracle Forms Dr. Annemarie Herrmann
Formular im Browser (2)
Abfrage kann eingestellt werden. Z. B. in Kundenname L% Æ alle
Datensätze von Kunden, deren Name mit L beginnt usw., dann
auf ausführen klicken – auch ändern möglich
Oracle Forms Dr. Annemarie Herrmann
Master-Detail-Formular (1)
Zur Darstellung von zwei miteinander verbundenen Relationen gibt
es das Master-Detail-Formular
Oracle Forms Dr. Annemarie Herrmann
Master-Detail-Formular (2)
Der zweite Block wird wiederum durch den Datenblock-Assistenten
Erstellt.
Achtung! Im Objektnavigator darf nicht der vorherige Block markiert sein.
Master-Detail-Formular (3)
Die Joinbedingung kann automatisch erstellt werden.
Im Beispiel auf der vorherigen Folie wurde der zweite Block
in Tabellenform angegeben.
Es können auch noch andere verbundene Tabellen
angezeigt werden.
Beachte:
Im Layout-Manager müssen alle Formulare auf die
Leinwand passen, sonst werden diese nicht angezeigt.
Oracle Forms Dr. Annemarie Herrmann
Oracle Forms Dr. Annemarie Herrmann
Wertelisten (LOV) (1)
Vereinfachung der Eingabe für Felder mit einer diskreten Anzahl
von Werten.
Beispiel Tabelle TITEL:
1. Formular erstellen
bis zum
Layouteditor
2. Wertelistenassistenten aktivieren
(unter Werkzeuge
oder im Objektnavigator)
3. SQL-Anfrage,
welche die Werte
erzeugt, eingeben.
Oracle Forms Dr. Annemarie Herrmann
Wertelisten (2)
4. Datensatzgruppe im
nächsten Fenster in
die Werteliste
übernehmen.
5. Aus Liste validieren
'Ja'
6. Assistenten beenden
7. Werteliste mit dem
entsprechenden
Formularfeld
verknüpfen. Dazu die
Attributpalette des
Attributs (Nachname)
öffnen und die
Werteliste eintragen
Oracle Forms Dr. Annemarie Herrmann
Wertelisten (3)
Wertelisten - Ergebnis
8. In der Attributpalette der Werteliste
unter Funktional|Attribute Spaltenzuordnung die Verknüpfung vornehmen, indem das
betreffende Formularfeld als Rückgabeobjekt gewählt wird.
9. 'Automatische Auswahl' auf 'Ja' setzen
10. Form ausführen
Oracle Forms Dr. Annemarie Herrmann
Trigger
Trigger besitzen in Oracle Forms vier Grundtypen:
• PRE - Trigger wird vor einen Ereignis ausgelöst.
Oracle Forms Dr. Annemarie Herrmann
Einfache Trigger (1)
Gleich beim Öffnen des Formulars sollen Datensätze angezeigt
werden:
Im Objektnavigator einen neuen Trigger vom Typ WHEN-NEWFORM-INSTANCE im ’Wurzelverzeichnis’ des Formulars anlegen.
Im PL/SQL-Editor 'execute_query;' eintragen.
• POST - Trigger wird nach einem Ereignis ausgelöst.
• WHEN - Trigger löst nach einer Überprüfung aus.
• KEY - Trigger wird nach bestimmten Tastendruck ausgelöst.
Um sich über die Trigger zu informieren, doppelklicken Sie im
Objektnavigator auf Trigger. Es wird eine Liste aller möglichen
Tirgger angeboten.
Beschreibung und Beispiele finden Sie in der zugehörigen OnlineHilfe
Im folgenden 3 Beispiele:
Oracle Forms Dr. Annemarie Herrmann
Oracle Forms Dr. Annemarie Herrmann
Einfache Trigger (2)
Zusätzlich zur Tabelle sollen Werte aus anderen Tabellen angezeigt werden (non-base-Tabellenfeld).
Beispiel: zur Tabelle VERLEIH soll der Kundenname ausgegeben werden.
1. Eine Form mit der ursprünglichen Tabelle VERLEIH anlegen
2. Ein neues Textobjekt einfügen
Einfache Trigger (3)
3. In dessen Attributpalette den Namen ändern (z. B. in 'Name')
4. Die Eigenschaft Datenbank|Datenbankobjekt auf Nein setzen.
5. Im Datenblock einen neuen Trigger vom Typ POST-QUERY anlegen,
dessen PL/SQL Code sollte folgendermaßen lauten:
6. Trigger kompilieren
7. Form ausführen
Oracle Forms Dr. Annemarie Herrmann
Einfache Trigger (4) -Ergebnis
Oracle Forms Dr. Annemarie Herrmann
Einfache Trigger (5)
Zum Vor- und Zurückblättern der einzelnen Datensätze
sollen Buttons eingeführt werden.
1. Im Layout-Editor zwei Schaltflächen anlegen, in dem
links der entsprechender Button geklickt wird
2. Buttons unter den Eingabefeldern positionieren.
3. In der Attributpalette des jeweiligen Buttons Namen
und Beschriftung ändern.
4. Durch Rechtsklick den PL/SQL-Editor öffnen und den
Trigger WHEN-BUTTON-PRESSED auswählen.
5. Die Triggercodes sind begin previous_record; end;
bzw. begin next_record; end;
6. Trigger jeweils übersetzen
7. Form ausführen
Oracle Forms Dr. Annemarie Herrmann
Oracle Forms Dr. Annemarie Herrmann
Einfache Trigger (6)
Oracle Forms Dr. Annemarie Herrmann
Herunterladen