Die Forms PL/SQL-Library t4flib.pll
Die Forms PL/SQL-Library t4f_lib.pll enthält alle projektunabhängigen Prozeduren des Forms APIs. Ein Grossteil der Funktionalität wird durch dieses Modul zentral zur Verfügung gestellt. Durch das Referenzieren der object groups aus t4flib.fmb wird die korrekte Anwendung dieser Prozeduren gewährleistet und die Komplexität weitgehend verdeckt.
Diese Library muss an jedes Form attached werden und muss in der Runtime-Umgebung in compilierter Form vorhanden sein. Allfällige Änderungen (ohne Änderung der Schnittstelle) innerhalb der Prozeduren erfordern kein neues Generieren der Applikation.
Liste der Prozeduren
Ausgabe von Debug-Information. Debugging kann über die Tabelle T4F_DEBUG dynamisch und selektiv ein-/ausgeschaltet werden. Ausgabe wahlweise als Message, in DB-Tabelle, über DBMS.output oder in ein Logfile (nur unter UNIX).
procedure t4f_detail (
Usage: internal, PL/SQL
formname in varchar2, -- aufzurufendes Modul
fldname1 in varchar2 := NULL, -- Primarykey-Item
fldname2 in varchar2 := NULL -- 2. Primarykey-Item
)
Aufruf eines Detailforms. Impliziter Aufruf bei Verwendung der Funktion t4f_detwbp.
procedure t4f_detexit (
Usage: Key-Exit-Trigger
f1 in varchar2 := NULL, -- Primarykey-Item
f2 in varchar2 := NULL -- 2. Primarykey-Item
)
Level: Form
Verlassen eines Detailforms. Parameterübergabe aus dem aktuellen Record.
procedure t4f_detpreform (
Usage: Pre-Form-Trigger
key1 in varchar2, -- Primarykey-Item
key2 in varchar2 := NULL -- 2. Primarykey-Item
)
Level: Form
Spezifikation des oder der Schlüsselfelder.
procedure t4f_detprequery (
Usage: Pre-Query-Trigger
f1 in varchar2 := NULL, -- Primarykey-Item
f2 in varchar2 := NULL -- 2. Primarykey-Item
)
Level: Form
Definiert dynamisch eine Where-Bedingung um automatisch Detailinformation anzuzeigen.
procedure t4f_detstartup
Usage: When-New-Form-Instance-Trigger
Level: Form
Falls ein Schlüsselwert übergeben wurde automatisches Ausführen der Query, andernfalls Wechsel in den EnterQuery-Mode (default).
procedure t4f_detwbp (
Usage: When-Button-Pressed-Trigger
frm in varchar2, -- aufzurufendes Modul
fld1 in varchar2, -- Primarykey-Item
fld2 in varchar2 := NULL -- 2. Primarykey-Item
)
Level: Item
Definiert Detailform und Schlüsselfeld auf aufrufendem Form. Einfacher Klick bewirkt List of Values, Doppelklick bewirkt Detailfunktion.
procedure t4f_detwmd (
Usage: When-Mouse-Down-Trigger
frm in varchar2, -- aufzurufendes Modul
fld1 in varchar2, -- Primarykey-Item
fld2 in varchar2 := NULL -- 2. Primarykey-Item
)
Level: Item
Gleiche Funktion wie t4f_detwbp für mutlirecord Blocks: automatische Navigation in den entsprechenden Block und Record ohne dass das Attribute mouse-navigate des Buttons eingeschaltet sein muss (was wiederum die Validierung erschweren würde).
procedure t4f_detwte
Usage: When-Timer-Expired-Trigger
Level: Form
Wenn dieser Trigger anspricht, wurde kein zweites mal auf den Detail-Button geklickt (kein Doppelklick). Also list_values ().
Definition der 'konstanten' Titelfelder.
procedure t4f_headstartup
Usage: When-New-Form-Instance-Trigger, implizit durch t4f_labstartup
Level: Form
Zusammenstellen und Anzeige der Windowbeschriftung. Wird implizit durch t4f_labstartup () aufgerufen.
procedure t4f_help
Usage: Key-Help-Trigger
Level: Form
Helpmeldungen aus DB-Tabelle (sprachabhängig) bzw. Datadictionary (Comments).
procedure t4f_helptxt (
Usage: internal, PL/SQL
item varchar2,
block varchar2,
form varchar2,
otext out varchar2
)
Bestimmen des Helptextes eines Items.
procedure t4f_labclear
Usage: Key-Clear-Form-Trigger
Level: Form
Refresh der Labels nach Clear-Form (z.B. nach Rollback).
procedure t4f_labstartup (
Usage: When-New-Form-Instance-Trigger
block_nr in varchar2 := NULL -- optionale Labelblock-Id
)
Level: Form
Anzeige, der über die Tabellen T4F_LABEL bzw. T4F_PROMPT definierten, dynamischen, sprachabhängigen und portablen Beschrifungsattribute.
procedure t4f_lbpopulate (
Usage: Pre-Form-Trigger
litem in varchar2, -- Name des List-Items
lbox in varchar2, -- Name der Listbox
dbinit in boolean := false -- Set start value by db
)
Level: Form
Poupulate eines List-Items aus der Datenbank.
procedure t4f_lovlist (
Usage: Key-List-Trigger
id in char, -- Schlüsselfeld
name in char := NULL, -- Bezeichnungsfeld
force in boolean := FALSE, -- 'long list'
range in char := '%' -- zus. Attribut
)
Level: Item
Ermöglicht Referenzierung von LOV's und Record Groups. Effiziente Auswahl über caseinsensitive Vorselektion (gute Performance auch bei grossen Tabellen).
procedure t4f_lovnextitem
Usage: Key-Next-Item-Trigger
Level: Form
Automatischer Aufruf von List of Values falls kein gültiger Schlüssselwert eingegeben wird (Eingabe wird als Suchmuster verwendet).
procedure t4f_message (
Usage: PL/SQL
id in integer, -- Message-Id
p in char := NULL -- optionaler Parameter
)
Sprachabhängige Ausgabe einer Meldung (mit optionalen Parametern) aufgrund eines Messagecodes. Fehlerbehandlung (raise form_trigger_failure) entsprechend der definierten Severity.
Report/Host-Interface.
procedure t4f_repstartup (
Usage: When-New-Form-Instance-Trigger
fname in varchar2, -- default filename
deflt in varchar2 := 'tty', -- default output mode
copies in integer := 1 -- default copies
)
Level: Form
Definition des Defaults für den Outputfilenamen sowie des Outputdevices.
procedure t4f_seconerror
Usage: On-Error-Trigger
Level: Form
Exception-Handler. Abfangen der durch DB-Trigger verursachten Exceptions (z.B. aufgrund spezieller Zugriffsregeln).
procedure t4f_secpreblock (bt in char := NULL) -- opt. Basetable für Views
Usage: Pre-Block-Trigger
Level: Form/Block
Setzen der Blockattribute aufgrund der Benutzerrollen. Toolbar aktualisieren. Funktioniert im Gegensatz zum Attribute column security auch in Child-Blocks.
procedure t4f_setmdiproperties (mode in varchar2)
Usage: When-New-Forms-Instance-Trigger bzw. Post_Form-Trigger
Level: Form
Vergrössern bzw. Rücksetzen der Grösse des MDI-Windows.
Abfüllen des Resultats der letzten Abfrage in eine Tagliste. Als sql kann normalerweise der Inhalt der Variable system.last_query verwendet werden.
procedure t4f_tagclose (
Usage: PL/SQL
typ in varchar2:= NULL, -- Art der Tagliste
tid in integer := NULL -- spezifische Taglisten-Id
)
Abschliessen einer oder mehrerer Taglisten.
procedure t4f_toolbarentqry (
Usage: Key-EntQry-Trigger
qm in char := NULL, -- opt. ALL_RECORDS
bm in char := NULL -- opt. Buttonmode
)
Level: Form
Modespezifische Modifikationen der Toolbar. Kennzeichnung des Querymodes durch Farbwechsel auf der Maske. Bei multirecord Blocks Query mit ALL_RECORDS.
procedure t4f_toolbarexeqry (qm in char := NULL) -- opt. ALL_RECORDS
Usage: Key-ExeQry-Trigger
Level: Form
Modespezifische Modifikationen der Toolbar. Bei multirecord Blocks Query mit ALL_RECORDS.
procedure t4f_toolbarset (qm in char := NULL) -- opt. ALL_RECORDS
Usage: internal
Dynamisches enable/disable der Toolbar.
procedure t4f_toolbarstartup (m in varchar2 := 'NORMAL') -- opt. Buttonmode
Usage: When-New-Form-Instance-Trigger
Level: Form
Initialisierung der Toolbar. Parameter 'EXIT' disabled alle Buttons ausser dem Exit-Button.
procedure t4f_toolbarwbp
Usage: When-Button-Pressed-Trigger
Level: Block T4F_TOOLBAR
Definiert die Buttonfunktionen zentral.
procedure t4f_toolbarwme
Usage: When-Mouse-Enter-Trigger
Level: Block T4F_TOOLBAR
Aktivierung des Timers für Balloonhelp.
procedure t4f_toolbarwml
Usage: When-Mouse-Leave-Trigger
Level: Block T4F_TOOLBAR
Desaktivierung des Timers für Balloonhelp.
procedure t4f_toolbarwte
Usage: When-Timer-Expired
Level: Form
Behandlung des Timeouts für Balloonhelp.