Zum Inhalt springen

„Oracle Forms“ – Versionsunterschied

aus Wikipedia, der freien Enzyklopädie
[gesichtete Version][gesichtete Version]
Inhalt gelöscht Inhalt hinzugefügt
K Tippfehler entfernt, Leerzeichen vor Beleg entfernt, Kleinkram
K Weblinks: Dateigröße angepasst
 
(39 dazwischenliegende Versionen von 19 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{QS-Informatik|Das ist kein enzyklopädischer Artikel für jedermann; das ist ein Change Log und Newsticker für Datenbankadministratoren ([[Wikipedia:Was Wikipedia nicht ist|WWNI]]). Der Artikel driftet völlig vom Wesentlichen ab (Termin für den nächsten ''Formsday''; Smartbarheight etc.). --[[Benutzer:Siegbert v2|Siegbert v2]] ([[Benutzer Diskussion:Siegbert v2|Diskussion]]) 11:04, 19. Mai 2024 (CEST)}}
'''Oracle Forms''' ist ein [[Entwicklungswerkzeug]] der Firma [[Oracle]] und erlaubt die [[WYSIWYG]]-Erstellung sowie die Programmierung von Datenbank-gestützten, interaktiven [[Bildschirmmaske|Dialogmasken]]. Außer der Oracle-Datenbank werden auch diverse andere SQL-Datenbanken unterstützt; die Programmierung erfolgt in [[PL/SQL]] oder [[Java (Technologie)|Java]] (importierte Java-Klassen).
'''Oracle Forms''' ist ein [[Entwicklungswerkzeug]] der Firma [[Oracle]] und erlaubt die [[WYSIWYG]]-Erstellung sowie die Programmierung von Datenbank-gestützten, interaktiven [[Bildschirmmaske|Dialogmasken]]. Außer der Oracle-Datenbank werden auch diverse andere SQL-Datenbanken unterstützt; mit den neuesten Version können auch REST-Services nativ mit lokalen JSON-PL/SQL-Packages konsumiert werden. Die Programmierung von Masken, Reports, Bibliotheken und Menüs erfolgt in [[PL/SQL]]. Die Masken können optional über [[Java (Technologie)|Java]] (importierte Java-Klassen) oder C(dlls) oder [[WebSocket]]s (Kommunikation mit Webservern) erweitert werden. Mit der optionalen, aber mitgelieferten WEBUTIL-Funktion (Package, JAVA Plugin, DLLs.) lassen sich auch umfangreiche lokale Windowsfunktionen ausführen oder Office-Automationen durchführen.


== Produktversionen ==
== Produktversionen ==


Oracle Forms wurde 1979 von Bill Friend entwickelt<ref>{{Internetquelle |autor=Frank Hoffmann, Bill Friend, Sohaib Abassi |url=https://cologne-data.de/2019_01_DOAG_RedStack_oracleforms_is_stronger_than_time.pdf |titel=40 years Oracle Forms |werk= |hrsg=DOAG |datum=2019-01-01 |format=PDF |sprache=en |abruf=2019-04-23}}</ref> und gemeinsam mit der ersten kommerziellen ORACLE Datenbank unter der Bezeichnung IAF (Interactive Application Facility) vertrieben. Später, etwa 1982, kam mit RPT noch eine Reportsvariante (RPT) dazu. Es folgten weitere Versionen unter dem Namen „Fastforms“, „SQL Forms“ und dann schließlich „Oracle Forms“. Von 1985 bis 2002 wurde Forms von Sohaib Abbassi weiterentwickelt. Meilensteine waren die PL/SQL Integration (lange vor der Datenbank), der Screen-Builder (Möglichkeit des visuellen Maskendesigns) und 1999 eine Internet 3-Schicht Architektur. Seit 2002 waren Grant Ronald und Michael Ferrante die weiteren Produktmanager von ORACLE Forms.
Oracle Forms wurde 1979 von Bill Friend entwickelt<ref>{{Internetquelle |autor=Frank Hoffmann, Bill Friend |url=http://www.oraworld.org/fileadmin/documents/16-ORAWORLD.pdf |titel=40 years Oracle Forms |werk=Oraworld |hrsg=EOUC/DOAG |datum=2019-01-01 |format=PDF |sprache=en |abruf=2019-04-23}}</ref> und gemeinsam mit der ersten kommerziellen Oracle-Datenbank unter der Bezeichnung IAF (Interactive Application Facility) vertrieben. Später, etwa 1982, kam mit RPT noch eine Reportsvariante (RPT) dazu. Es folgten weitere Versionen unter dem Namen „Fastforms“, „SQL Forms“ und dann schließlich „Oracle Forms“. Von 1985 bis 2002 wurde Forms von Sohaib Abbassi weiterentwickelt. Meilensteine waren die PL/SQL-Integration (lange vor der Datenbank), der Screen-Builder (Möglichkeit des visuellen Maskendesigns) und 1999 eine Internet-[[Schichtenarchitektur#Drei-Schichten-Architektur|3-Schichten-Architektur]]. Von 2002 bis 2011 war Grant Ronald und seit 2011 ist Michael Ferrante der Produktmanager von Oracle Forms.


Ab der Produktversion 9 wird ausschließlich die Web-basierte [[3-Tier-Architektur]] unterstützt. Für den produktiven Betrieb von Forms-Anwendungen ist der [[Oracle WebLogic]] Server Voraussetzung (in früheren Versionen von Forms war dieses der Oracle Application Server).
Ab der Produktversion 9 wird ausschließlich die Web-basierte [[3-Tier-Architektur]] unterstützt. Für den produktiven Betrieb von Forms-Anwendungen ist der [[Oracle WebLogic]] Server Voraussetzung (in früheren Versionen von Forms war dieses der Oracle Application Server). Einige Produkte der Oracle Applications Produktfamilie (EBS) verwenden bis heute Forms für die Realisierung der Dialogmasken in einer älteren 10er Version. Oracle Forms wird schon aus diesem Grund weiterhin von Oracle langfristig unterstützt und weiterentwickelt. Mit dem ''{{lang|en|Statement of Direction}}'' hat Oracle den weiteren Werdegang der Forms-Entwicklung beschrieben.<ref>[https://www.oracle.com/a/tech/docs/oracleformssod.pdf Oracle Application Development Tools Statement of Direction: Oracle Forms, Oracle Reports and Oracle Designer.] (PDF; 211&nbsp;kB) [[Oracle]], Mai 2021 (englisch)</ref> Die aktuelle Version 14.1.2, erschienen am 19. Dezember 2024, hat einen Premium Support bis Dezember 2029 und einen Extended Support bis Dezember 2032.<ref>{{Internetquelle |autor=Oracle |url=http://www.oracle.com/us/support/library/lifetime-support-middleware-069163.pdf |titel=Live Time Support für Forms |werk= |hrsg=Oracle |datum=2024-12-19 |format=PDF |sprache=en |abruf=2024-12-30}}</ref> Es sind bereits weitere Nachfolgeversionen geplant.
Einige Produkte der Oracle Applications Produktfamilie (EBS) verwenden Forms für die Realisierung der Dialogmasken. Oracle Forms wird schon aus diesem Grund weiterhin von ORACLE langfristig unterstützt und weiterentwickelt. Mit dem ''{{lang|en|Statement of Direction}}'' hat Oracle den weiteren Werdegang der Forms-Entwicklung beschrieben.<ref>[https://www.oracle.com/a/tech/docs/oracleformssod.pdf Oracle Application Development Tools Statement of Direction: Oracle Forms, Oracle Reports and Oracle Designer.] (PDF; 211&nbsp;kB) [[Oracle]], September 2019 (englisch)</ref> Die aktuelle Version 12.2.1.4 hat einen Premium Support bis August 2022 und einen Extended Support bis August 2025.<ref>{{Internetquelle |autor=Oracle |url=http://www.oracle.com/us/support/library/lifetime-support-middleware-069163.pdf |titel=Support |werk= |hrsg=Oracle |datum=2019-04-01 |format=PDF |sprache=en |abruf=2019-04-23}}</ref> Es sind bereits weitere Nachfolgeversionen geplant. Das nächste Release soll Ende 2021 als Major Release (14/21) erscheinen und zur Zeit werden Modernisierungen in folgenden Bereichen diskutiert :

''1.  Improvements to Java client UI - GUI Verbesserungen für das Java Interface''

''2.  HTML/JS replacement for Java client - Ein neuer Javascript Client als Alternative zum Javaclient''

''3.  More installation options (e.g. standalone Form Builder with lightweight runtime) - Entschlackte Installation des Forms Builders''

''4.  Improved integration with other technologies and products - Integration von neuen Technologien z.B. REST Services''

Hier ein Beispiel<ref>{{Internetquelle |autor=Michael Ferrante |url=https://twitter.com/OracleFormsPM/status/1188862529365143552 |titel=What if your OracleForms could look a bit fresher |werk=@OracleFormsPM |hrsg= |datum=2019-11-01 |abruf=2020-01-07 |sprache=en}}</ref> aus der frühen Entwicklungsphase der nächsten Formsversion. Die klassischen Formsobjekte wie Felder(items), Rahmen und Blöcke werden dabei auf dem Client in einem modernen Webdesign dargestellt.

Aktuelle Version:

* Die aktuelle Version ''Forms & Reports 12c (12.2.1.4)'' erschien am 27. September 2019<ref name=":0">{{Internetquelle |autor=Oracle |url=https://docs.oracle.com/en/middleware/developer-tools/forms/12.2.1.4/releasenotes-fnr/index.html |titel=Forms 12.2.1.4 Releasenotes |werk= |hrsg=Oracle |datum= |abruf=2020-01-07 |sprache=en}}</ref>


== Grundlagen ==
== Grundlagen ==
Oracle Forms ist eine [[4GL]]-Entwicklungsumgebung zur schnellen Erstellung robuster Dialoganwendungen für Oracle-Datenbanken mit Hilfe auch sogenannter ''[[Formular]]e'' (Weiteres siehe auch ''[[Schema (Informatik)]]''). Dabei werden Elemente [[Grafische Benutzeroberfläche|grafischer Benutzeroberflächen]] intern in Blöcken organisiert, die mit Datenbanktabellen oder -prozeduren verbunden sind. Blöcke stehen untereinander in Verbindung, wenn sie z.&nbsp;B. Master-Detail-Relationen abbilden. Der Code zur Aktualisierung der Detail-Anzeige bei Datensatz-Navigation wird automatisch generiert. „Datenbank-nahe“ Dialoganwendungen lassen sich so ohne eine Zeile zusätzlichen Code erstellen. Abfragen, Einfügen, Ändern oder Löschen von Daten sowie ein intelligentes Locking auf Datensatzebene (u.&nbsp;a. zur Vermeidung von ''{{lang|en|lost-updates}}'') gehören zur Standardlogik eines Datenbankblocks und müssen nicht extra kodiert werden. Für eigene Anwendungslogik dienen ereignisgesteuerte Trigger, die mittels der [[Ada (Programmiersprache)|Ada]]-ähnlichen Programmiersprache [[PL/SQL]] formuliert werden. Mit dem WYSIWYG-Designer erstellte Forms-Anwendungen werden durch den integrierten Forms-Kompilierer in ausführbare Module überführt. Bei dieser Kompilierung werden u.&nbsp;a. fehlende oder ungültige Datenbankobjekte oder fehlende Berechtigungen erkannt, was zur Laufzeit-Stabilität von Forms-Anwendungen beiträgt.
Oracle Forms ist eine [[4GL]]-Entwicklungsumgebung zur schnellen Erstellung robuster Dialoganwendungen für Oracle-Datenbanken mit Hilfe auch sogenannter ''[[Formular]]e'' (Weiteres siehe auch ''[[Schema (Informatik)]]''). Dabei werden Elemente [[Grafische Benutzeroberfläche|grafischer Benutzeroberflächen]] intern in Blöcken organisiert, die mit Datenbanktabellen oder -prozeduren verbunden sind. Blöcke stehen untereinander in Verbindung, wenn sie z.&nbsp;B. Hierarchien ([[Master-Detail-Beziehung|Master-Detail-Relationen]]) abbilden. Der Code zur Aktualisierung der Detail-Anzeige bei Datensatz-Navigation wird automatisch generiert. „Datenbank-nahe“ Dialoganwendungen lassen sich so ohne eine Zeile zusätzlichen Code erstellen. Abfragen, Einfügen, Ändern oder Löschen von Daten sowie ein [[Optimistic Concurrency|intelligentes Locking]] auf Datensatzebene (u.&nbsp;a. zur Vermeidung von ''{{lang|en|lost-updates}}'') gehören zur Standardlogik eines Datenbankblocks und müssen nicht extra kodiert werden. Für eigene Anwendungslogik dienen ereignisgesteuerte Trigger, die mittels der [[Ada (Programmiersprache)|Ada]]-ähnlichen Programmiersprache [[PL/SQL]] formuliert werden. Mit dem WYSIWYG-Designer erstellte Forms-Anwendungen werden durch den integrierten Forms-Kompilierer in ausführbare Module überführt. Bei dieser Kompilierung werden u.&nbsp;a. fehlende oder ungültige [[Datenbankobjekt]]e oder fehlende Berechtigungen erkannt, was zur Laufzeit-Stabilität von Forms-Anwendungen beiträgt.


Ein Vorteil von Forms ist, das Datenbanklogik, die zu einem robusten und nachhaltigen Betrieb erforderlich sind, automatisch generiert werden kann. Die Maskenlogik bietet out of the BOX das Sperren von Datensätzen bei der Bearbeitung (Row Level Locking) oder auch die performanceoptimierte Abfrage der Inhalte über Optimizer freundliche Techniken (Bindings).
Ein Vorteil von Forms ist, das Datenbanklogik, die zu einem robusten und nachhaltigen Betrieb erforderlich sind, automatisch generiert werden kann. Die Maskenlogik bietet out of the BOX das Sperren von Datensätzen bei der Bearbeitung (Row Level Locking) oder auch die performanceoptimierte Abfrage der Inhalte über Optimizer freundliche Techniken (Bindings).


Ab Version 12 können Applikationen ohne Browser gestartet werden. Dazu reicht es auf dem Client-PC aus ein Java Runtime Archiv zu installieren. Entgegen früherer Aussagen von ORACLE wird Oracle Reports auch weiterhin in der aktuellen Version 12.2.1.4 angeboten und möglicherweise sogar in der der nächsten Version. Michael Ferrante, der Produktchef von Oracle Forms, hat alle Neuerungen zu dem Produkt, die mit der Familie 12.1.2.x eingeführt wurden, in einem New Features Dokument zusammengefasst (Siehe Weblinks). Mit der neuen Version 12.2.1.4 wurde Forms am 27. September 2019 auf den aktuellen Stand gebracht und ist nun zertifiziert auf allen gängigen Server Betriebssysteme (Windows, Solaris, Unix) und den Datenbanken 11.2.0.4, 12.1., 12.2, 18.3+ und 19.3+. Der Sprachumfang erlaubt nun PL/SQL in der Version 12.1 und Datenbankverbindungen mit SQLNET12. Eine Forms Lizenz beinhaltet nun auch eine Lizenz zur Nutzung des BI Publisher. Der BI-Publisher wurde in Forms integriert und kann ähnlich komfortabel aufgerufen werden.
Seit Version 12 können Applikationen ohne Browser gestartet werden. Dazu muss auf dem Client-PC eine [[Java-Laufzeitumgebung|Java-Runtime]] installiert sein. Entgegen früherer Aussagen von Oracle wird Oracle Reports auch weiterhin in der aktuellen Version 14.1.2 angeboten. Michael Ferrante, der Produktchef von Oracle Forms, hat alle Neuerungen zu dem Produkt, die mit der Familie 12.1.2.x eingeführt wurden, in einem New Features Dokument zusammengefasst und die Neuerungen in Version 14.1.2 in den Release Notes (siehe [[#Weblinks|Weblinks]]).

In Deutschland hat sich in der DOAG eine Forms Gruppe mit etwa 100 aktiven Formsentwicklern zusammengefunden. Dr. Jürgen Menge und Jan-Peter Timmermann leiten diese Gruppe, die unter dem Link "ORACLE Forms Community Deutschland" in den Weblinks erreichbar ist. Teil der Aktivität ist auch ein Demoserver, der von der Gruppe mit kostenlosen Demos betrieben werden die nach dem "OPEN SOURCE" Gedanken kostenfrei Online getestet und heruntergeladen werden können.

Eine Aktivität dieser Gruppe ist der jährlich stattfindende "Formsday" der nächstes Jahr am 20.2.2020 in der Oracle Niederlassung Frankfurt durchgeführt wird.


== Modernisierungen ==
== Modernisierungen ==


ORACLE bietet für Forms seit der ersten Version 1979 bis heute bei jedem Releasewechsel einen Migrationspfad an, um sein Produkt kompatibel zu allen aktuellen Windows- und Unix-Serversystemen zu halten. Es besteht auch die Möglichkeit, unter Windows zu entwickeln und nach einer Compilierung unter Unix zu deployen. Mit der Version 12 wurde FSAL eingeführt (Forms Standalone Launcher) und eine Möglichkeit geschaffen, mit einem kleinen Java-Startprogramm die Masken ohne Browserplugin zu betreiben. Mit den Versionen 12.2.1.x und 14.1.2. wurden GUI-Optionen eingeführt, mit denen Masken moderner gestaltet werden können. Diese Neuerungen werden aber konservativ eingeführt und können über Feld(Item)-Eigenschaften(Properties) oder Serverkonfigurationen aktiviert werden. Der native Forms-REST-Service aus Version 14.1.2 mit Forms-JSON-PL/SQL-Packages erlaubt eine Maskenerstellung erstmalig auch ohne Datenbankanbindung.
Es gibt diverse Ansätze, aus dem alten Forms etwas „Neues“ zu machen: Teilweise über das Aufhübschen mit Java oder die Migration in Richtung [[Oracle ADF]]. Das bekannteste [[Framework]], für das „modernisieren“ von Oracle-Forms-Anwendungen, ist das ''[[Look and Feel|LAF]]-Projekt''<ref>LAF-Projekt – [[Entlehnung|entlehnt]] aus dem [[Englische Sprache|englischen]] ''‚{{lang|en|LAF project}}‘'', welches wohl zuvor aus ''‚{{lang|en|Look and Feel Project}}‘'' verkürzt wurde</ref> von Francois Degrelle.<ref>[http://fdegrelle.over-blog.com/article-oracle-forms-look-and-feel-project-58117118.html Oracle Forms Look and Feel Project] (englisch) – Francois Degrelle’s blog; 2. November 2010; u.&nbsp;a. mit ''„{{lang|en|LAF project}}“''</ref><ref>[http://fdtool.free.fr/LAF/doc/Oracle_Forms_Look_and_Feel_project.htm Forms Look and Feel Project] (englisch) – Start- oder ''{{lang|en|Home}}''seite; abgerufen am 7. Dezember 2017</ref>

Die neue Version 12.2.1.3 erlaubt viele Modernisierungen die keine „Java Extensions“ mehr benötigen. Details lassen sich aus dem Dokument von Michael Ferrante in den Weblinks entnehmen.

Mit der Möglichkeit ab 12.2.1.x lässt sich auch das GUI etwas moderner gestalten (CustomColorScheme, ROW Banding, Smartbarheight etc.)


== Literatur ==
== Literatur ==
* Perry Pakull, Stefan Jüssen, Walter Müller: ''Praktische Anwendungsentwicklung mit Oracle Forms''. Hanser Verlag, 2007, ISBN 3-446-41098-8
* Perry Pakull, Stefan Jüssen, Walter Müller: ''Praktische Anwendungsentwicklung mit Oracle Forms''. Hanser Verlag, 2007, ISBN 3-446-41098-8
* Daniel Liebhart, Guido Schmutz, Marcel Lattmann, Markus Heinisch, Michael Königs, Mischa Kölliker, Perry Pakull, Peter Welkenbach: ''Architecture Blueprints''. Hanser Verlag, 2007, ISBN 3-446-41201-8
* Daniel Liebhart, Guido Schmutz, Marcel Lattmann, Markus Heinisch, Michael Königs, Mischa Kölliker, Perry Pakull, Peter Welkenbach: ''Architecture Blueprints''. Hanser Verlag, 2007, ISBN 3-446-41201-8
* [https://www.oracle.com/technetwork/developer-tools/forms/documentation/faq-for-upgraders-3176010.pdf Frequently Asked Questions for Oracle Forms 12c,] (PDF; 199&nbsp;kB) [[Oracle|Oracle Corporation]], 2016 (englisch)
* [https://www.oracle.com/technetwork/developer-tools/forms/documentation/faq-for-upgraders-3176010.pdf Frequently Asked Questions for Oracle Forms 12c,] (PDF; 199&nbsp;kB) [[Oracle|Oracle Corporation]], 2016 (englisch)


== Weblinks ==
== Weblinks ==
* [http://www.oracle.com/technetwork/developer-tools/forms/overview/index.html Oracle Forms 12] auf der Oracle-Website
* [http://www.oracle.com/technetwork/developer-tools/forms/overview/index.html Oracle Forms] auf der Oracle-Website
* [http://www.oracle.com/technetwork/developer-tools/forms/community/index.html Oracle Forms Community USA]
* [http://www.oracle.com/technetwork/developer-tools/forms/community/index.html Oracle Forms Community USA]
* Michael Ferrante: [https://www.oracle.com/a/tech/docs/oracleforms-1221-newfeatures.pdf New Features Forms (REV3) 12.2.1.0-12.2.1.4] (PDF) Stand September 2019
* Michael Ferrante: [https://www.oracle.com/a/tech/docs/oracleforms-1221-newfeatures.pdf New Features Forms (REV3) 12.2.1.0-12.2.1.19] (PDF) Stand Februar 2023, [https://docs.oracle.com/en/middleware/developer-tools/forms/14.1.2/releasenotes-fnr/release-notes-oracle-forms.pdf Release Notes Forms 14.1.2] (PDF; 0,2&nbsp;MB) Stand Dezember 2024
* [https://community.oracle.com/community/other-languages/deutsche-oracle-entwickler-community/forms-developer-community/overview Oracle Forms Community Deutschland]
* [https://www.oracle.com/us/assets/lifetime-support-middleware-069163.pdf Lifetimesupport Oracle Forms (Stand Dezember 2024)] (PDF; 3,2&nbsp;MB)
* [https://forms-demo.com/ Forms Demo Server] mit Forms Version 12.2.1.19 in der Oracle Cloud Frankfurt-1
* [http://www.oracle.com/us/support/library/lifetime-support-middleware-069163.pdf Lifetimesupport Oracle Forms] (PDF)
* [https://forms-demo.com/ Forms Demo Server] mit Forms Version 12.2.1.4 in der Oracle Cloud Frankfurt-1


== Einzelnachweise und Anmerkungen ==
== Einzelnachweise und Anmerkungen ==
<references />
<references responsive />


[[Kategorie:Oracle]]
[[Kategorie:Oracle]]

Aktuelle Version vom 1. Februar 2025, 21:07 Uhr

QS-Informatik
Beteilige dich an der Diskussion!
Dieser Artikel wurde wegen inhaltlicher Mängel auf der Qualitätssicherungsseite der Redaktion Informatik eingetragen. Dies geschieht, um die Qualität der Artikel aus dem Themengebiet Informatik auf ein akzeptables Niveau zu bringen. Hilf mit, die inhaltlichen Mängel dieses Artikels zu beseitigen, und beteilige dich an der Diskussion! (+)


Begründung: Das ist kein enzyklopädischer Artikel für jedermann; das ist ein Change Log und Newsticker für Datenbankadministratoren (WWNI). Der Artikel driftet völlig vom Wesentlichen ab (Termin für den nächsten Formsday; Smartbarheight etc.). --Siegbert v2 (Diskussion) 11:04, 19. Mai 2024 (CEST)

Oracle Forms ist ein Entwicklungswerkzeug der Firma Oracle und erlaubt die WYSIWYG-Erstellung sowie die Programmierung von Datenbank-gestützten, interaktiven Dialogmasken. Außer der Oracle-Datenbank werden auch diverse andere SQL-Datenbanken unterstützt; mit den neuesten Version können auch REST-Services nativ mit lokalen JSON-PL/SQL-Packages konsumiert werden. Die Programmierung von Masken, Reports, Bibliotheken und Menüs erfolgt in PL/SQL. Die Masken können optional über Java (importierte Java-Klassen) oder C(dlls) oder WebSockets (Kommunikation mit Webservern) erweitert werden. Mit der optionalen, aber mitgelieferten WEBUTIL-Funktion (Package, JAVA Plugin, DLLs.) lassen sich auch umfangreiche lokale Windowsfunktionen ausführen oder Office-Automationen durchführen.

Produktversionen

[Bearbeiten | Quelltext bearbeiten]

Oracle Forms wurde 1979 von Bill Friend entwickelt[1] und gemeinsam mit der ersten kommerziellen Oracle-Datenbank unter der Bezeichnung IAF (Interactive Application Facility) vertrieben. Später, etwa 1982, kam mit RPT noch eine Reportsvariante (RPT) dazu. Es folgten weitere Versionen unter dem Namen „Fastforms“, „SQL Forms“ und dann schließlich „Oracle Forms“. Von 1985 bis 2002 wurde Forms von Sohaib Abbassi weiterentwickelt. Meilensteine waren die PL/SQL-Integration (lange vor der Datenbank), der Screen-Builder (Möglichkeit des visuellen Maskendesigns) und 1999 eine Internet-3-Schichten-Architektur. Von 2002 bis 2011 war Grant Ronald und seit 2011 ist Michael Ferrante der Produktmanager von Oracle Forms.

Ab der Produktversion 9 wird ausschließlich die Web-basierte 3-Tier-Architektur unterstützt. Für den produktiven Betrieb von Forms-Anwendungen ist der Oracle WebLogic Server Voraussetzung (in früheren Versionen von Forms war dieses der Oracle Application Server). Einige Produkte der Oracle Applications Produktfamilie (EBS) verwenden bis heute Forms für die Realisierung der Dialogmasken in einer älteren 10er Version. Oracle Forms wird schon aus diesem Grund weiterhin von Oracle langfristig unterstützt und weiterentwickelt. Mit dem Statement of Direction hat Oracle den weiteren Werdegang der Forms-Entwicklung beschrieben.[2] Die aktuelle Version 14.1.2, erschienen am 19. Dezember 2024, hat einen Premium Support bis Dezember 2029 und einen Extended Support bis Dezember 2032.[3] Es sind bereits weitere Nachfolgeversionen geplant.

Oracle Forms ist eine 4GL-Entwicklungsumgebung zur schnellen Erstellung robuster Dialoganwendungen für Oracle-Datenbanken mit Hilfe auch sogenannter Formulare (Weiteres siehe auch Schema (Informatik)). Dabei werden Elemente grafischer Benutzeroberflächen intern in Blöcken organisiert, die mit Datenbanktabellen oder -prozeduren verbunden sind. Blöcke stehen untereinander in Verbindung, wenn sie z. B. Hierarchien (Master-Detail-Relationen) abbilden. Der Code zur Aktualisierung der Detail-Anzeige bei Datensatz-Navigation wird automatisch generiert. „Datenbank-nahe“ Dialoganwendungen lassen sich so ohne eine Zeile zusätzlichen Code erstellen. Abfragen, Einfügen, Ändern oder Löschen von Daten sowie ein intelligentes Locking auf Datensatzebene (u. a. zur Vermeidung von lost-updates) gehören zur Standardlogik eines Datenbankblocks und müssen nicht extra kodiert werden. Für eigene Anwendungslogik dienen ereignisgesteuerte Trigger, die mittels der Ada-ähnlichen Programmiersprache PL/SQL formuliert werden. Mit dem WYSIWYG-Designer erstellte Forms-Anwendungen werden durch den integrierten Forms-Kompilierer in ausführbare Module überführt. Bei dieser Kompilierung werden u. a. fehlende oder ungültige Datenbankobjekte oder fehlende Berechtigungen erkannt, was zur Laufzeit-Stabilität von Forms-Anwendungen beiträgt.

Ein Vorteil von Forms ist, das Datenbanklogik, die zu einem robusten und nachhaltigen Betrieb erforderlich sind, automatisch generiert werden kann. Die Maskenlogik bietet out of the BOX das Sperren von Datensätzen bei der Bearbeitung (Row Level Locking) oder auch die performanceoptimierte Abfrage der Inhalte über Optimizer freundliche Techniken (Bindings).

Seit Version 12 können Applikationen ohne Browser gestartet werden. Dazu muss auf dem Client-PC eine Java-Runtime installiert sein. Entgegen früherer Aussagen von Oracle wird Oracle Reports auch weiterhin in der aktuellen Version 14.1.2 angeboten. Michael Ferrante, der Produktchef von Oracle Forms, hat alle Neuerungen zu dem Produkt, die mit der Familie 12.1.2.x eingeführt wurden, in einem New Features Dokument zusammengefasst und die Neuerungen in Version 14.1.2 in den Release Notes (siehe Weblinks).

Modernisierungen

[Bearbeiten | Quelltext bearbeiten]

ORACLE bietet für Forms seit der ersten Version 1979 bis heute bei jedem Releasewechsel einen Migrationspfad an, um sein Produkt kompatibel zu allen aktuellen Windows- und Unix-Serversystemen zu halten. Es besteht auch die Möglichkeit, unter Windows zu entwickeln und nach einer Compilierung unter Unix zu deployen. Mit der Version 12 wurde FSAL eingeführt (Forms Standalone Launcher) und eine Möglichkeit geschaffen, mit einem kleinen Java-Startprogramm die Masken ohne Browserplugin zu betreiben. Mit den Versionen 12.2.1.x und 14.1.2. wurden GUI-Optionen eingeführt, mit denen Masken moderner gestaltet werden können. Diese Neuerungen werden aber konservativ eingeführt und können über Feld(Item)-Eigenschaften(Properties) oder Serverkonfigurationen aktiviert werden. Der native Forms-REST-Service aus Version 14.1.2 mit Forms-JSON-PL/SQL-Packages erlaubt eine Maskenerstellung erstmalig auch ohne Datenbankanbindung.

Einzelnachweise und Anmerkungen

[Bearbeiten | Quelltext bearbeiten]
  1. Frank Hoffmann, Bill Friend: 40 years Oracle Forms. (PDF) In: Oraworld. EOUC/DOAG, 1. Januar 2019, abgerufen am 23. April 2019 (englisch).
  2. Oracle Application Development Tools Statement of Direction: Oracle Forms, Oracle Reports and Oracle Designer. (PDF; 211 kB) Oracle, Mai 2021 (englisch)
  3. Oracle: Live Time Support für Forms. (PDF) Oracle, 19. Dezember 2024, abgerufen am 30. Dezember 2024 (englisch).