Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i...

34
Basel · Baden · Bern · Lausanne · Zürich · Düsseldorf · Frankfurt/M. · Freiburg i. Br. · Hamburg · München · Stuttgart · Wien Oracle Forms goes China Perry Pakull Senior Consultant [email protected] DOAG Konferenz Nürnberg 21.11.2007

Transcript of Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i...

Page 1: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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

Page 2: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

Oracle Forms goes China 2 © 2007

Agenda

Daten sind immer im Spiel.

� Facts & Figures

� Migrationsvorgehen

� Migrationskonzept und Umsetzung

� Konfiguration

� Zusammenfassung

Page 3: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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

Page 4: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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

Page 5: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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

Page 6: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

Oracle Forms goes China 6 © 2007

Forms goes China

Page 7: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

Oracle Forms goes China 7 © 2007

Agenda

Daten sind immer im Spiel.

� Das Projekt - Facts & Figures

� Migrationsvorgehen

� Migrationskonzept und Umsetzung

� Konfiguration

� Zusammenfassung

Page 8: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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

Page 9: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

Oracle Forms goes China 9 © 2007

Trivadis Migrationsvorgehen

� Standard-Vorgehensweise

Migrationskonzept Umsetzung der Migration

Test

Produktivnahme

Korrektur

Bestandsaufnahme Infrastruktur

Page 10: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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

Page 11: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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

Page 12: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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

Page 13: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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

Page 14: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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

Page 15: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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

Page 16: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

Oracle Forms goes China 16 © 2007

Agenda

Daten sind immer im Spiel.

� Das Projekt - Facts & Figures

� Migrationsvorgehen

� Migrationskonzept und Umsetzung

� Konfiguration

� Zusammenfassung

Page 17: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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;

Page 18: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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

Page 19: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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"

Page 20: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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

Page 21: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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)

Page 22: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

Oracle Forms goes China 22 © 2007

Infrastruktur

Page 23: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

Oracle Forms goes China 23 © 2007

Agenda

Daten sind immer im Spiel.

� Das Projekt - Facts & Figures

� Migrationsvorgehen

� Migrationskonzept und Umsetzung

� Konfiguration

� Zusammenfassung

Page 24: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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

Page 25: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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

Page 26: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

Oracle Forms goes China 26 © 2007

Language Detection

� Browser-Einstellungen

� Forms Servlet erkennt eingestellteSprache

� Konfigurationseintrag mit Language Code erforderlich

Page 27: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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

Page 28: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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

Page 29: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

Oracle Forms goes China 29 © 2007

Agenda

Daten sind immer im Spiel.

� Das Projekt - Facts & Figures

� Migrationsvorgehen

� Migrationskonzept und Umsetzung

� Konfiguration

� Zusammenfassung

Page 30: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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

Page 31: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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

Page 32: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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.)

Page 33: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

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

Page 34: Oracle Forms goes China - doag.org · Kaufmännische Forms-Applikationen Oracle Forms Version 6i Patch 17 Businesskritische Applikationen Auftragsbearbeitung und Bestellwesen 150

Basel · Baden · Bern · Lausanne · Zürich · Düsseldorf · Frankfurt/M. · Freiburg i. Br. · Hamburg · München · Stuttgart · Wien

Vielen Dank!

?www.trivadis.com