Basel · Baden · Bern · Lausanne · Zürich · Düsseldorf · Frankfurt/M. · Freiburg i. Br. · Hamburg · München · Stuttgart · Wien
Oracle Forms goes China
Perry PakullSenior [email protected]
DOAG Konferenz Nürnberg21.11.2007
Oracle Forms goes China 2 © 2007
Agenda
Daten sind immer im Spiel.
� Facts & Figures
� Migrationsvorgehen
� Migrationskonzept und Umsetzung
� Konfiguration
� Zusammenfassung
Oracle Forms goes China 3 © 2007
Facts & Figures - das Unternehmen
� Großhändler für Verbindungselemente und C-Teile� C-Teile Management� Engineering
� 1800 Mitarbeiter weltweit
� 600 Mio. CHF Umsatz
� Standorte in 10 verschiedenen Ländern in Europa
� 10 Standorte in Amerika
� Geplante Standorte in Asien� China, Taiwan, Thailand, Malaysia, Korea, Indien
Oracle Forms goes China 4 © 2007
Facts & Figures - die Applikationen
� Kaufmännische Forms-Applikationen � Oracle Forms Version 6i Patch 17
� Businesskritische Applikationen� Auftragsbearbeitung und Bestellwesen
� 150 Forms, 30 PL/SQL Libraries, 1 Object Library, 10 Menüs� Lagerverwaltung
� 90 Forms, 6 PL/SQL Libraries, 1 Menü� basierend auf MOPS 2.0
Oracle Forms goes China 5 © 2007
Anforderungen und Ziele der Migration
� Erweiterung der Mehrsprachigkeit auf Unicode-Zeichensätze� Verarbeitung Character Set Simplified Chinese
� Technische Migration auf Forms 10g Release 2 (10.1.2.0.2)� Keine Erweiterung der Funktionalität
� Parallelbetrieb Client-Server-Version und Web-Version� Testen und Stabilisieren der Applikationen in der neuen Architektur� Anpassungen während des Parallelbetriebs nur am Forms 6i Code� Automatische und wiederholbare Migration nach Forms 10g
Oracle Forms goes China 6 © 2007
Forms goes China
Oracle Forms goes China 7 © 2007
Agenda
Daten sind immer im Spiel.
� Das Projekt - Facts & Figures
� Migrationsvorgehen
� Migrationskonzept und Umsetzung
� Konfiguration
� Zusammenfassung
Oracle Forms goes China 8 © 2007
Forms Migrationen
� Für alle Forms-Applikationen� Forms 6i Client-Server� Character-Mode
Forms 2.0
Forms 2.3
Forms 3.0
Forms 4.0
Forms 4.5
Forms 5.0
Forms 6.0
Forms 6i Forms 10g
Oracle Forms goes China 9 © 2007
Trivadis Migrationsvorgehen
� Standard-Vorgehensweise
Migrationskonzept Umsetzung der Migration
Test
Produktivnahme
Korrektur
Bestandsaufnahme Infrastruktur
Oracle Forms goes China 10 © 2007
Bausteine des Migrationsvorgehens
� Bestandsaufnahme der Forms-Applikationen � Bewertungskatalog mit definierten Fragen zu technischen Aspekten,
die mit Einführung der Web-Architektur geändert wurden
� Ermittlung der Infrastruktur-Anforderungen (Kostenermittlung)� Oracle Application Server Version (Lizenzkosten)
� Enterprise Edition oder Forms/Reports Services Standalone� Betriebssystem
� Windows oder Unix� Größe und Anzahl der Oracle Application Server
� Anzahl der Benutzer� Hauptspeicheranforderungen
� Betriebskonzept
� Migrationskonzept
Oracle Forms goes China 11 © 2007
Bausteine des Migrationsvorgehens
� Umsetzung der Migration � Bewertung und Auswahl der Migrationswerkzeuge
� Forms Migration Assistant � Eigene JDAPI Migrationsroutinen
� Durchführung der Migration
� Test der migrierten Module� Anpassung und Erweiterung des Migrationskonzepts
� Code in Forms 6i Modulen ergänzen� JDAPI Migrationsroutinen erweitern
� Korrekturen fließen in Migrationskonzept ein� Wiederholung der Migration
� Wenn alle Tests erfolgreich � Produktivnahme
Oracle Forms goes China 12 © 2007
Werkzeuge für Bestandsaufnahme
� Eigene Java-Programme basierend auf JDAPI
� Suchen im gesamten PL/SQL Code nach bestimmten Begriffen
� Analyse der Forms-Objekte hinsichtlich externer Referenzen
� Abhängigkeiten zwischen PL/SQL Libraries und Forms-Modulen herausfinden
Oracle Forms goes China 13 © 2007
Problemzonen einer Migration
� Client-Funktionen wie HOST oder TEXT_IO werden auf dem Oracle Application Server ausgeführt und nicht auf dem Forms Client� Ersatz durch Oracle Bibliothek WebUtil
� Direkter Aufruf von Client-Funktionen aus einem Menü-Modul oder einer PL/SQL Library ist mit WebUtil nicht möglich� WebUtil nur in Verbindung mit Forms-Modulen
� Migration der Client-Funktionen nicht automatisierbar� Suchen/Ersetzen oft nicht ausreichend� Logische Anpassungen erforderlich
Oracle Forms goes China 14 © 2007
Problemzonen einer Migration
Standard Datei-Öffnen DialogCLIENT_GET_FILE_NAMEGET_FILE_NAME
Schreiben einer Bild-DateiCLIENT_IMAGE.WRITE_IMAGE_FILEWRITE_IMAGE_FILE
Lesen einer Bild-DateiCLIENT_IMAGE.READ_IMAGE_FILEREAD_IMAGE_FILE
OLE-Integration mit dem Client (nur Microsoft Windows)
CLIENT_OLE2OLE2
Lesen von Umgebungs--variablen
CLIENT_TOOL_ENVTOOL_ENV
Aufruf von C-Programmen auf dem Client
WEBUTIL_C_APIORA_FFI
Aufruf von Programmen auf dem Client
CLIENT_HOSTHOST
Textdateien auf dem Client lesen oder schreiben
CLIENT_TEXT_IOTEXT_IO
BeschreibungWebUtil-FunktionClient-Server-Funktion
Oracle Forms goes China 15 © 2007
Problemzonen einer Migration
� Plattformwechsel bedeutet Anpassung der Schreibweisen� Dateinamen und -pfade konsequent anpassen
� Länge von Variablen� WE8ISO8859P1 = Singlebyte Character Set
� 1 Zeichen = 1 Byte� UTF8 = Multibyte Character Set
� 1 Zeichen = 1-3 Bytes
Oracle Forms goes China 16 © 2007
Agenda
Daten sind immer im Spiel.
� Das Projekt - Facts & Figures
� Migrationsvorgehen
� Migrationskonzept und Umsetzung
� Konfiguration
� Zusammenfassung
Oracle Forms goes China 17 © 2007
Migrationskonzept
� Logische Anpassungen im PL/SQL Code bereits in den Forms 6i Modulen einarbeiten, wo immer möglich� Unterscheidung zwischen Client-Server und Web
if Get_Application_Property(USER_INTERFACE) = 'WEB' then<Statements für Web-Umgebung>
else<Statements für Client-Server-Umgebung>
end if;
Oracle Forms goes China 18 © 2007
Migrationskonzept
� WebUtil PL/SQL Library für 6i entwickelt� Identische Package Spezifikationen, Package Body ohne Code
� Java-Programme basierend auf JDAPI steuern die Migration� Suchen/Ersetzen im PL/SQL Code� Anpassen der Properties für Forms-Objekte
� Migration für einzelne Module jederzeit wiederholbar
� Spezielle Forms-Module für Aufruf von Excel aus dem Menü
� Data Length Semantics in Forms anpassen
Oracle Forms goes China 19 © 2007
Umsetzung der Migration (1)
� Kopieren der Dateien in neues Verzeichnis� Umbenennen auf Kleinschreibung
� Aufruf Forms Migration Assistant� Einbindung auf Java-Ebene� Nicht verwendet PL/SQL Library EnableDisableItem.pll� Nicht verwendet PL/SQL Library rp2rro.pll
� Anpassen aller Datei-Referenzen� Open_Form, Call_Form, New_Form� Iconic Buttons� Externe Referenzen aus Forms-Modulen
� Font für alle Items auf "Arial Unicode MS"
Oracle Forms goes China 20 © 2007
Umsetzung der Migration (2)
� PL/SQL Libraries entfernen und mit geänderter Schreibweise zufügen� PL/SQL Libraries ergänzen bzw. ersetzen
� VisualAttributes korrigieren� Ersetze "Alte" durch "Neue"
� Objekte zu Forms-Modulen hinzufügen� ReportObject� WebUtil PL/SQL Library� WebUtil Object Library
Oracle Forms goes China 21 © 2007
Umsetzung der Migration (3)
� Für alle Forms Items mit Datentyp CHAR wird die Property "Data Length Semantics" auf CHAR gesetzt� Default Einstellung ist NULL� Nicht für Mirror-Items
� Modul kompilieren und speichern
� Alle Änderungen protokollieren (eine Datei pro Modul)
Oracle Forms goes China 22 © 2007
Infrastruktur
Oracle Forms goes China 23 © 2007
Agenda
Daten sind immer im Spiel.
� Das Projekt - Facts & Figures
� Migrationsvorgehen
� Migrationskonzept und Umsetzung
� Konfiguration
� Zusammenfassung
Oracle Forms goes China 24 © 2007
Forms Konfiguration für Unicode-Zeichensätze
� Oracle Application Server Registry.dat� Für den Forms Client muss der verwendete Applikations-Font auf
einen Java-Font bezogen werden� $ORACLE_HOME/forms/java/oracle/forms/registry/Registry.dat
default.fontMap.appFontnames=…,Arial Unicode MSdefault.fontMap.javaFontnames=…,SansSerif
Oracle Forms goes China 25 © 2007
Forms Konfiguration für Unicode-Zeichensätze
� Oracle Application Server, formsweb.cfg� Mehrsprachigkeit� Pro Sprache eine eigene Umgebungsdatei� Zusammengesetzte Sprachen ebenfalls konfigurieren� $ORACLE_HOME/forms/server/formsweb.cfg
[facts]envFile=facts.env[facts.us]envFile=facts_us.env[facts.en-us]envFile=facts_us.env[facts.zh-cn]envFile=facts_zh.env
Oracle Forms goes China 26 © 2007
Language Detection
� Browser-Einstellungen
� Forms Servlet erkennt eingestellteSprache
� Konfigurationseintrag mit Language Code erforderlich
Oracle Forms goes China 27 © 2007
Forms Konfiguration für Unicode-Zeichensätze
� Oracle Application Server, facts_zh.env� NLS_LANG einstellen� $ORACLE_HOME/forms/server/facts_zh.env
NLS_LANG=SIMPLIFIED CHINESE_CHINA.UTF8
Oracle Forms goes China 28 © 2007
Forms Konfiguration für Unicode-Zeichensätze
� TrueType Fonts auf dem Forms-Client� Arial Unicode MS� Simsun� Albany WT J
� Windows Client mit Oracle JInitiator Version 1.3.1.28� Keine Anpassungen in den Konfigurationsdateien
für Oracle JInitiator erforderlich
Oracle Forms goes China 29 © 2007
Agenda
Daten sind immer im Spiel.
� Das Projekt - Facts & Figures
� Migrationsvorgehen
� Migrationskonzept und Umsetzung
� Konfiguration
� Zusammenfassung
Oracle Forms goes China 30 © 2007
Zusammenfassung
� Voll automatisierte Migration ist bei großen und komplexen Forms-Applikationen nicht zu erreichen und somit als Ziel einer Migration auch nicht realistisch
� Einarbeitung von Anpassungen im Forms 6i Code bietet entscheidende Vorteile für Parallelbetrieb
� Migrationsaufwand bleibt im planbaren Rahmen
� Forms wird unterstützt und weiterentwickelt bis mindestens 2013
Oracle Forms goes China 31 © 2007
Zukunftssicherheit durch Migration
� Möglichkeiten zur Erweiterung� Mehrsprachigkeit
� Integration mit anderen Technologien und Systemen� Integration mit Java EE Anwendungen
� Forms fit für die Zukunft� Service-orientierte Architekturen
� Forms interessant und attraktiv� Know-how weiterhin einsetzbar
Oracle Forms goes China 32 © 2007
Praktische Anwendungsentwicklung mit Oracle Forms
� HANSER Verlag
� 320 Seiten
� Flexibler Einband
� ISBN-10: 3-446-41098-8
� ISBN-13: 978-3-446-41098-5
� € 39,90
� In Kooperation mit DOAG (Deutsche ORACLE-Anwendergruppe e.V.)
Oracle Forms goes China 33 © 2007
Architecture Blueprints
� HANSER Verlag
� 358 Seiten
� Flexibler Einband
� ISBN-10: 3-446-41201-8
� ISBN-13: 978-3-446-41201-9
� € 34,90
Basel · Baden · Bern · Lausanne · Zürich · Düsseldorf · Frankfurt/M. · Freiburg i. Br. · Hamburg · München · Stuttgart · Wien
Vielen Dank!
?www.trivadis.com
Top Related