53
Wizards & Wizards & Builders Builders GmbH GmbH Konvertierung FPW 2.6->VFP Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Konvertierung von FoxPro / Windows Anwendungen nach Windows Anwendungen nach Microsoft Visual FoxPro Microsoft Visual FoxPro

Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Embed Size (px)

Citation preview

Page 1: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Konvertierung FPW 2.6->VFPKonvertierung FPW 2.6->VFP

Konvertierung von FoxPro / Konvertierung von FoxPro / Windows Anwendungen nachWindows Anwendungen nach

Microsoft Visual FoxProMicrosoft Visual FoxPro

Page 2: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Diese Schulung dient der Übersicht über die

Konvertierungsarten und -möglichkeiten von Applikationen

unter FoxPro/Windows nach Microsoft Visual FoxPro

Page 3: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

ThemenübersichtThemenübersicht

Fallstudie aus der PraxisFallstudie aus der Praxis VorüberlegungenVorüberlegungen KonvertierungsansätzeKonvertierungsansätze Minimalistische KonvertierungMinimalistische Konvertierung Hybrider AnsatzHybrider Ansatz Konvertierung BerichteKonvertierung Berichte KonvertierungsassistentKonvertierungsassistent Funktionale KonvertierungFunktionale Konvertierung MaskeneigenschaftenMaskeneigenschaften Nachbearbeitung von MaskenNachbearbeitung von Masken FPW-Wrapper-KlassenFPW-Wrapper-Klassen

Page 4: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Fallstudie aus der PraxisFallstudie aus der Praxis

Vollständige Konvertierung Vollständige Konvertierung der FPD-Software „Account der FPD-Software „Account View“ nach Microsoft Visual View“ nach Microsoft Visual

FoxProFoxPro

Page 5: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Account View AnwendungAccount View Anwendung

Buchhaltungssoftware in FPD 2.6Buchhaltungssoftware in FPD 2.6 4000 Kunden in 3 Ländern4000 Kunden in 3 Ländern 70 % haben Netzwerklizenzen70 % haben Netzwerklizenzen Beispiele Anwender:Beispiele Anwender:

Royal Dutch ConcertgebouwRoyal Dutch Concertgebouw Pulitzer Hotel (350 Betten)Pulitzer Hotel (350 Betten) Den Hague Police RegionDen Hague Police Region PTT Catering (360 Gebäude)PTT Catering (360 Gebäude) Allianz Europa (SAP + AV)Allianz Europa (SAP + AV)

Page 6: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Konvertierungs-ZieleKonvertierungs-Ziele

1. Zuverlässigkeit1. Zuverlässigkeit

2. Zuverlässigkeit2. Zuverlässigkeit

3. Zuverlässigkeit3. Zuverlässigkeit

4. Anforderungen Windows95 Logo 4. Anforderungen Windows95 Logo

5. Möglichst gleiche Geschwindigkeit5. Möglichst gleiche Geschwindigkeit

bei der Datenerfassung wie bei der Datenerfassung wie FP/DOSFP/DOS

6. Erhaltung der Flexibilität für VARs6. Erhaltung der Flexibilität für VARs

Page 7: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Konvertierungs-PlanungKonvertierungs-Planung

Die Wirklichkeit ist anders als die DemosDie Wirklichkeit ist anders als die Demos In Wirklichkeit wurde die komplexe In Wirklichkeit wurde die komplexe

Funktionalität langsam und inkrementell Funktionalität langsam und inkrementell entwickeltentwickelt

Wie lange dauerte es (wirklich) bis die Wie lange dauerte es (wirklich) bis die Anwendung auf dem heutigen Stand Anwendung auf dem heutigen Stand war?war?

Wie hoch schätzt man Zeit und Kosten Wie hoch schätzt man Zeit und Kosten für Migrationfür Migration

Zuerst kalkulieren!Zuerst kalkulieren!

Page 8: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Object type Quantity Time TotalList display forms 139 1,5 208,5Setup information forms 72 3,0 216,0One to many forms 6 32,0 192,0Dialog forms 238 0,5 119,0Reports 270 2,0 540,0Procedures/functions 997 0,1 99,7Tables 80 0,5 40,0Menus 98 0,5 49,0"Framework" programs 1 160,0 160,0Installation program 1 80,0 80,0Documentation facelift 1 455,0 455,0Testing 1 1.450,0 1.450,0

Total hours 3.609,2Developer days 451,2Developer weeks 112,8Total development weeks 37,6Total cost 203.017,5

Page 9: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

ImplikationenImplikationen

Kosten von ca. DM 200,000 (mind.!)Kosten von ca. DM 200,000 (mind.!) Kaufen aller verfügb. Bücher zu VFPKaufen aller verfügb. Bücher zu VFP MCP-Test für alle TeammitgliederMCP-Test für alle Teammitglieder Kaufen sämtlicher auch nur Kaufen sämtlicher auch nur

ansatzweise sinnvoller Werkzeugeansatzweise sinnvoller Werkzeuge Kein Geld an der Kein Geld an der

Vorbereitung(szeit) sparen! Vorbereitung(szeit) sparen! Unterstützung der GL einholenUnterstützung der GL einholen

Page 10: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Vorschläge zur Vorschläge zur VorgehensweiseVorgehensweise

Selbst erstellen oder Kauf eines Selbst erstellen oder Kauf eines fertigen Applikations-Frameworks fertigen Applikations-Frameworks mit Basisklassen und mit Basisklassen und FertigobjektenFertigobjekten

Testweise manuelle Erstellung von Testweise manuelle Erstellung von einigen Masken, Berichten und einigen Masken, Berichten und MenüsMenüs

Probeweise Konvertierung Probeweise Konvertierung bestehender Dateienbestehender Dateien

Page 11: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Einsatz von FrameworksEinsatz von Frameworks

Notwendig und nicht migrierbarNotwendig und nicht migrierbar Einige Möglichkeiten:Einige Möglichkeiten:

Codebook 3 (Flash - Griver)Codebook 3 (Flash - Griver) X3 Framework (MaxTech - Drew Speedie)X3 Framework (MaxTech - Drew Speedie) VFP Frame (ABL)VFP Frame (ABL)

Negativ:Negativ: Sind notwendigerweise sehr komplexSind notwendigerweise sehr komplex Werden hauptsächlich von Firmen verkauft, Werden hauptsächlich von Firmen verkauft,

deren Schwerpunkt im Bereich Beratung, deren Schwerpunkt im Bereich Beratung, Coaching und Support liegtCoaching und Support liegt

Page 12: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

KonvertierungsarbeitKonvertierungsarbeit

MaskenMasken FunctionalFunctional VisualVisual CustomCustom

MenüsMenüs Berichte (Problem: breite Berichte)Berichte (Problem: breite Berichte) DatenbankenDatenbanken

Datenbankcontainer, Private Datasessions, Datenbankcontainer, Private Datasessions, keine Views, keine Rules/Triggerkeine Views, keine Rules/Trigger

Page 13: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

UnterstützungUnterstützung

1. Online Hilfe1. Online Hilfe

2. Online Dokumentation2. Online Dokumentation

3. „Mastering Visual FoxPro“-CD (Migration CD)3. „Mastering Visual FoxPro“-CD (Migration CD)

4. Knowledge base auf den TechNet-CDs4. Knowledge base auf den TechNet-CDs

5. VFOX/dFPUG-Forum auf Compuserve!5. VFOX/dFPUG-Forum auf Compuserve!

6. Microsoft FoxPro Site im Internet6. Microsoft FoxPro Site im Internet

7. Bücher über Visual FoxPro7. Bücher über Visual FoxPro

8. Alte Ausgaben des „FoxPro Advisor“ (ggf. CD)8. Alte Ausgaben des „FoxPro Advisor“ (ggf. CD)

9. Bekannte, Eltern und Verwandte9. Bekannte, Eltern und Verwandte

10. Microsoft Support10. Microsoft Support

Page 14: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Zusammenfassung FallstudieZusammenfassung Fallstudie

HINWEIS: Es warHINWEIS: Es war

FOXPRO / DOS !!!FOXPRO / DOS !!!

Die positive Seite: Die positive Seite: 75% der Applikation 75% der Applikation konnten konnten unverändert unverändert übernommen übernommen werdenwerden

VFP ist das Ticket VFP ist das Ticket zu „state-of-the-zu „state-of-the-art“-Anwendugnen art“-Anwendugnen bis ins nächste bis ins nächste Jahrhundert!Jahrhundert!

Page 15: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

VorüberlegungenVorüberlegungen

Grundsatzüberlegungen zur Grundsatzüberlegungen zur Konvertierung nachKonvertierung nach

Microsoft Visual FoxProMicrosoft Visual FoxPro

Page 16: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Visual FoxProVisual FoxPro

„„State of the art“-Datenbank-State of the art“-Datenbank-ApplikationenApplikationen

32bit-Windows-Unterstützung32bit-Windows-Unterstützung Client/Server-ConnectivityClient/Server-Connectivity ObjektorientierungObjektorientierung Umfangreiches DebuggingUmfangreiches Debugging Multi-Tier/Internet-Applikationen Multi-Tier/Internet-Applikationen

Page 17: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Konvertieren vs. Konvertieren vs. NeuschreibenNeuschreiben

Die bestehende AnwendungDie bestehende Anwendung hat mehrere Versionen durchlaufen?hat mehrere Versionen durchlaufen? ist stabil?ist stabil? benötigt keine neue Funktionalität?benötigt keine neue Funktionalität? läuft nicht auf neuen Betriebssystemen?läuft nicht auf neuen Betriebssystemen?

Die Entwickler habenDie Entwickler haben die Möglichkeit, OOP kennenzuleren oderdie Möglichkeit, OOP kennenzuleren oder keine Zeit für neue Entwicklungsmethoden?keine Zeit für neue Entwicklungsmethoden?

Page 18: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Grundsatzüberlegungen (1)Grundsatzüberlegungen (1)

Wurden die Werkzeuge verwendet?Wurden die Werkzeuge verwendet? Falls nein: minimalistisch oder neu schreibenFalls nein: minimalistisch oder neu schreiben

Werden FLLs eingesetzt?Werden FLLs eingesetzt? Neu kompilieren unter 32Bit notwendigNeu kompilieren unter 32Bit notwendig

Werden Third-Party-Tools Werden Third-Party-Tools eingesetzt?eingesetzt? Funktionalität evtl. in VFP bereits eingebautFunktionalität evtl. in VFP bereits eingebaut Andernfalls neue Version notwendig - ist diese Andernfalls neue Version notwendig - ist diese

lieferbar und erfordert ggf. Konvertierunglieferbar und erfordert ggf. Konvertierung

Page 19: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Grundsatzüberlegungen (2)Grundsatzüberlegungen (2)

Multi-Plattform-fähige Anwendung?Multi-Plattform-fähige Anwendung? Unterstützt: Windows 95 ff., Windows NTUnterstützt: Windows 95 ff., Windows NT Plattformfähigkeit weiterhin notwendig?Plattformfähigkeit weiterhin notwendig? Umsetzung über Internet-Browser?Umsetzung über Internet-Browser?

Upgrade auf Windows95-GUI ?Upgrade auf Windows95-GUI ? Minimalitische Umsetzung nicht möglich..Minimalitische Umsetzung nicht möglich..

Page 20: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

KonvertierungsansätzeKonvertierungsansätze

Verschiedene Verschiedene Konvertierungsansätze von Konvertierungsansätze von

FoxPro/Win nachFoxPro/Win nachMicrosoft Visual FoxProMicrosoft Visual FoxPro

Page 21: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Minimalistischer AnsatzMinimalistischer Ansatz

Vorteile:Vorteile: Geringster Geringster

AufwandAufwand Keine weitere Keine weitere

Entwicklungszeit Entwicklungszeit oder oder Entwicklungs- Entwicklungs- bzw. Lernaufwandbzw. Lernaufwand

Nachteile:Nachteile: Keine Nutzung des Keine Nutzung des

EreignismodellsEreignismodells Keine Nutzung des Keine Nutzung des

ObjektmodellsObjektmodells Altes Altes

UserinterfaceUserinterface Im Vergleich hohe Im Vergleich hohe

WartungskostenWartungskosten

Page 22: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Hybrider AnsatzHybrider Ansatz

Vorteile:Vorteile: Alter Code Alter Code

weiterverwendbarweiterverwendbar EreignismodellEreignismodell Teilweise Objekt-Teilweise Objekt-

modell nutzbarmodell nutzbar Neue FunktionenNeue Funktionen User-InterfaceUser-Interface

Nachteile:Nachteile: Gemischte Gemischte

Programmierung Programmierung aufwendig (vor aufwendig (vor allem Debugging)allem Debugging)

VFP-Lernaufwand VFP-Lernaufwand für Ereignisse/OOPfür Ereignisse/OOP

WartungsaufwandWartungsaufwand

Page 23: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

„„Neuschreiben“Neuschreiben“

Vorteile:Vorteile: Bessere Design-Bessere Design-

werkzeugewerkzeuge Datenbankcon-Datenbankcon-

tainer verwendbartainer verwendbar Alle Vorteile der Alle Vorteile der

Objektorientierten Objektorientierten ProgrammierungProgrammierung

Nachteile:Nachteile: Hohe Lernkurve Hohe Lernkurve

für OOPfür OOP Reengineering der Reengineering der

Anwendungs-Anwendungs-ArchitekturArchitektur

Höherer Zeit- und Höherer Zeit- und GeldaufwandGeldaufwand

Page 24: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Minimalistischer AnsatzMinimalistischer Ansatz

Der minimalistische Ansatz zur Der minimalistische Ansatz zur Konvertierung von FPW nachKonvertierung von FPW nach

Microsoft Visual FoxProMicrosoft Visual FoxPro

Page 25: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Minimalistischer AnsatzMinimalistischer Ansatz

Neues Projekt anlegenNeues Projekt anlegen Hauptprogramm addierenHauptprogramm addieren

keine Maske zulässig - würde konvertiert...keine Maske zulässig - würde konvertiert...

Projekt neu erstellenProjekt neu erstellen (.SPR statt .SCX)(.SPR statt .SCX)

Zusatzdateien einfügenZusatzdateien einfügen Bitmaps, Include-DateienBitmaps, Include-Dateien

Applikation erstellenApplikation erstellen

Page 26: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Gemischte NutzungGemischte Nutzung

Fallunterscheidung zu VersionFallunterscheidung zu Version NAME-Klausel zu FensternNAME-Klausel zu Fenstern

führt zu Form.Pageframe1.Page1führt zu Form.Pageframe1.Page1 READ-Befehl weiter notwendigREAD-Befehl weiter notwendig

NAME-Klausel zu GET-FeldernNAME-Klausel zu GET-Feldern Arbeiten mit ActivepageArbeiten mit Activepage Anpassung GenScrn (Setup1/2)Anpassung GenScrn (Setup1/2)

Page 27: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Hybrider AnsatzHybrider Ansatz

Der hybride Ansatz zur Der hybride Ansatz zur Konvertierung von Konvertierung von

FoxPro/Windows nachFoxPro/Windows nachMicrosoft Visual FoxProMicrosoft Visual FoxPro

Page 28: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Konvertierung ProjektebeneKonvertierung Projektebene

Alle Projektkomponenten auf Alle Projektkomponenten auf einmaleinmal

Automatische Konvertierung fürAutomatische Konvertierung für EtikettenEtiketten Abfragen (Queries)Abfragen (Queries) MenüsMenüs BerichteBerichte

Einzige Möglichkeit für MaskensetsEinzige Möglichkeit für Maskensets

Page 29: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Konvertierung Berichte (1)Konvertierung Berichte (1)

FoxPro/DOS-Reports aus FPW-FoxPro/DOS-Reports aus FPW-Projekten sind nicht konvertierbarProjekten sind nicht konvertierbar

Druckertreiber werden von Druckertreiber werden von Windows verwaltet (kein Windows verwaltet (kein GENPD.APP mehr)GENPD.APP mehr)

Neue Funktionen möglich Neue Funktionen möglich REPORT FORM ASCII / PREVIEWREPORT FORM ASCII / PREVIEW _GENHTML_GENHTML

Page 30: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Konvertierung Berichte (2)Konvertierung Berichte (2)

FoxPro/Win-Reports direkt FoxPro/Win-Reports direkt aufrufbaraufrufbar

„„USER“-Feld zu „FRX“-DateiUSER“-Feld zu „FRX“-Datei Memofeldbreite von 10 auf 4 ByteMemofeldbreite von 10 auf 4 Byte Environment in DataenvironmentEnvironment in Dataenvironment AutoOpen/AutoClose-EigenschaftAutoOpen/AutoClose-Eigenschaft „„Environment“ in DE.OpenTablesEnvironment“ in DE.OpenTables

Page 31: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

KonvertierungsassistentKonvertierungsassistent

Quellcode unter VFP\Tools\ConvertQuellcode unter VFP\Tools\Convert Backup lieber vorher selbst Backup lieber vorher selbst

machenmachen Logfile nicht sonderlich interessantLogfile nicht sonderlich interessant Unterscheidung für Masken Unterscheidung für Masken

zwischenzwischen funktionaler Konvertierungfunktionaler Konvertierung visueller Konvertierungvisueller Konvertierung

Page 32: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

KonvertierungsartenKonvertierungsarten

Funktional:Funktional: „„\OLDx“-Backup\OLDx“-Backup Masken „s2x/t“Masken „s2x/t“ Verlagerung von Verlagerung von

Code-Snippets in Code-Snippets in neue Ereignisse neue Ereignisse und Methodenund Methoden

Visuell:Visuell: Snippet-Code wird Snippet-Code wird

in eine Programm-in eine Programm-datei ausgelagert datei ausgelagert und mußund muß

VON HANDVON HAND

zugeordnet zugeordnet werdenwerden

(= Cut & Paste)(= Cut & Paste)

Page 33: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Funktionale KonvertierungFunktionale Konvertierung

Besonderheiten bei der Besonderheiten bei der funktionalen Konvertierung funktionalen Konvertierung

von Masken untervon Masken unterMicrosoft Visual FoxProMicrosoft Visual FoxPro

Page 34: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Konvertierung Ereignisse Konvertierung Ereignisse

FoxPro/Windows:FoxPro/Windows: Setup #Section 1Setup #Section 1 Setup #Section 2Setup #Section 2 ActivateActivate DeactivateDeactivate ShowShow WhenWhen ValidValid CleanupCleanup

Visual FoxPro:Visual FoxPro: FormSet.LoadFormSet.Load Form.LoadForm.Load Form/Set.ActivateForm/Set.Activate Formset.DeactivateFormset.Deactivate Formset.ReadShowFormset.ReadShow Formset.ReadWhenFormset.ReadWhen Formset.ReadValidFormset.ReadValid Formset.Unload +SPRFormset.Unload +SPR

Page 35: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Konvertierung READ-OptionenKonvertierung READ-Optionen

FoxPro/Windows:FoxPro/Windows: CYCLECYCLE LOCKLOCK MOUSEMOUSE SAVESAVE TIMEOUTTIMEOUT

Visual FoxPro:Visual FoxPro: FormSet.ReadCycleFormSet.ReadCycle FormSet.ReadLockFormSet.ReadLock FormSet.ReadMouseFormSet.ReadMouse FormSet.ReadSaveFormSet.ReadSave FormSet.ReadTimeoutFormSet.ReadTimeout

Page 36: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Erzeugung „SPR“-Datei (Code-Tab)Erzeugung „SPR“-Datei (Code-Tab)

„„SPR“-Datei wird als Wrapper generiertSPR“-Datei wird als Wrapper generiert [Converter] Declare Arrays[Converter] Declare Arrays

EXTERNAL ARRAY <arrayname>EXTERNAL ARRAY <arrayname>

[Converter] DeclareVariables[Converter] DeclareVariables PUBLIC _GotoPlaceHolderPUBLIC _GotoPlaceHolder EXTERNAL PROC <maske>.scxEXTERNAL PROC <maske>.scx DO FORM <maske.scx> NAME <zufall> LINKEDDO FORM <maske.scx> NAME <zufall> LINKED

[Converter] Begin/End CLEANUP[Converter] Begin/End CLEANUP CLEANUP und andere Prozeduren/FunktionenCLEANUP und andere Prozeduren/Funktionen

Page 37: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Aufbau konvertierte MaskeAufbau konvertierte Maske

Maske:Maske: Formset (immer, auch wenn nur 1 Maske)Formset (immer, auch wenn nur 1 Maske) Form (Anzahl je nach Maskengruppe)Form (Anzahl je nach Maskengruppe) Pageframe (immer)Pageframe (immer) Page (Anzahl je nach Read-Leveln)Page (Anzahl je nach Read-Leveln)

Steuerelemente:Steuerelemente: CommandButtonGroup (auch 1 Button)CommandButtonGroup (auch 1 Button)

Page 38: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Eigenschaft „WindowType“Eigenschaft „WindowType“

Nur bei funktionaler KonvertierungNur bei funktionaler Konvertierung 2 = READ, 3 = READ MODAL2 = READ, 3 = READ MODAL

Formset bekommt 2.6-Read-MethodenFormset bekommt 2.6-Read-Methoden Formset.Load lädt „gebundene“ Formset.Load lädt „gebundene“

Variablen!Variablen! „„Environment“ wird im Load gesetztEnvironment“ wird im Load gesetzt Recordpointer im Unload in globale Vars.!Recordpointer im Unload in globale Vars.! DataEnvironment enthält „Umgebung“DataEnvironment enthält „Umgebung“ AutoOpen/AutoClose wird gesetztAutoOpen/AutoClose wird gesetzt

Page 39: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Maskeneigenschaften (1)Maskeneigenschaften (1)

FoxPro/Windows:FoxPro/Windows: MaskengruppeMaskengruppe Maske/ScreenMaske/Screen READ-LevelREAD-Level READ-BefehlREAD-Befehl MODAL-KlauselMODAL-Klausel

Visual FoxPro:Visual FoxPro: FormSetFormSet Form in FormSetForm in FormSet Page in Page in

PageframePageframe WindowType=2WindowType=2 WindowType=3WindowType=3

Page 40: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Maskeneigenschaften (2)Maskeneigenschaften (2)

FoxPro/Windows:FoxPro/Windows: Open / CloseOpen / Close TitelTitel Name, Koordinaten, Name, Koordinaten,

Moveable, IconMoveable, Icon CenterCenter BorderBorder CloseClose ColorColor

Visual FoxPro:Visual FoxPro: DataenvironmentDataenvironment CaptionCaption ditodito

AutocenterAutocenter BorderstyleBorderstyle CloseableCloseable BackcolorBackcolor

Page 41: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Maskeneigenschaften (3)Maskeneigenschaften (3)

FoxPro/Windows:FoxPro/Windows: HalfHeight HalfHeight

TitlebarTitlebar WallpaperWallpaper MinimizeMinimize FontFont

EnvironmentEnvironment

Visual FoxPro:Visual FoxPro: HalfHeight HalfHeight

CaptionCaption PicturePicture MinButtonMinButton Fontname, Fontname,

Fontsize, Font-Fontsize, Font-Flags (Bold usw.)Flags (Bold usw.)

DataenvironmentDataenvironment

Page 42: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Nachbearbeitung von Masken Nachbearbeitung von Masken (1)(1)

READ MODAL+DEACTIVATE beides aktiv!READ MODAL+DEACTIVATE beides aktiv! Doppelte Namen für Form/Control/Var.Doppelte Namen für Form/Control/Var. Shapes immer hinter allen ControlsShapes immer hinter allen Controls Unsichtbare Buttons immer vor ControlsUnsichtbare Buttons immer vor Controls Funktionen mittlerweile belegtFunktionen mittlerweile belegt

OLDVAL(), HOME() und ähnliche Namen evtl. vorh.OLDVAL(), HOME() und ähnliche Namen evtl. vorh.

Makro-Substition nicht in Eigenschaften!Makro-Substition nicht in Eigenschaften! &cPrompt => =&cPrompt => = cPrompt&cPrompt => =&cPrompt => = cPrompt

Page 43: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Nachbearbeitung von Masken Nachbearbeitung von Masken (2)(2)

Setup-RETURN zu RETURN .F. ändern!Setup-RETURN zu RETURN .F. ändern! GenScreenX-Direktiven nicht mehr GenScreenX-Direktiven nicht mehr

vorhanden, ggf. visuell konvertieren...vorhanden, ggf. visuell konvertieren... #INSERT wird eingelesen#INSERT wird eingelesen #INSERT darf nur Direktiven enthalten#INSERT darf nur Direktiven enthalten

besser: Direktiven in .h-Datei verlagern und diese besser: Direktiven in .h-Datei verlagern und diese dann setzen oder mit #INCLUDE angebendann setzen oder mit #INCLUDE angeben

Page 44: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Verlagern von CodeVerlagern von Code

FoxPro/Windows:FoxPro/Windows: CLEAR READCLEAR READ SHOW GETSHOW GET

SHOW GETSSHOW GETS READ SHOW/WHENREAD SHOW/WHEN READ DE/ACTIVATEREAD DE/ACTIVATE READ VALIDREAD VALID

Visual FoxPro:Visual FoxPro: Thisform.Release()Thisform.Release() <object>.Refresh() <object>.Refresh()

bzw. bzw. <listbox>.Requery()<listbox>.Requery()

Thisform.Refresh()Thisform.Refresh() Thisform.Load()Thisform.Load() Thisform.DeActivate()Thisform.DeActivate() Thisform.Query-Thisform.Query-

unload()unload()

Page 45: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Sonstige ÄnderungenSonstige Änderungen

Maskenset bei Einzelmasken entfernenMaskenset bei Einzelmasken entfernen Pageframe und Pages entfernenPageframe und Pages entfernen Parameter von Load nach Init verlagernParameter von Load nach Init verlagern Load-Variablen in eigene EigenschaftenLoad-Variablen in eigene Eigenschaften SPR-Code in eigene MethodenSPR-Code in eigene Methoden „„Private“ DatasessionsPrivate“ Datasessions WindowType 2=>0, 3=>1 WindowType 2=>0, 3=>1

(Einbahnstraße!)(Einbahnstraße!)

Page 46: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Probleme mit TabellenProbleme mit Tabellen

Lange Variablen/Tabellennamen gültig!Lange Variablen/Tabellennamen gültig! Viel mehr Arbeitsbereiche! (Schleifen!)Viel mehr Arbeitsbereiche! (Schleifen!) ON KEY LABEL CTRL+0 verhindert .NULL.ON KEY LABEL CTRL+0 verhindert .NULL. NULL, DBC, neue Feldarten konvertieren NULL, DBC, neue Feldarten konvertieren

Tabellen nach VFP-Format, zurück mit: Tabellen nach VFP-Format, zurück mit: COPY TO <table> NEXT 0 TYPE FOX2XCOPY TO <table> NEXT 0 TYPE FOX2X

Page 47: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Grobe AufwandsschätzungGrobe Aufwandsschätzung

ÜbersichtsmaskenÜbersichtsmasken 1/4 1/4 MTMT

KonfigurationsmaskenKonfigurationsmasken 1/2 1/2 MTMT

"Onetomany"-Masken"Onetomany"-Masken 4 MT4 MT DialogmaskenDialogmasken 1/8 MT1/8 MT BerichteBerichte 1/4 MT1/4 MT TabellenTabellen 1/8 MT1/8 MT MenüsMenüs 1/8 MT1/8 MT

Page 48: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

OLE-Server aus FoxPro/WindowsOLE-Server aus FoxPro/Windows

Erzeugen von OLE-Public-DLLs Erzeugen von OLE-Public-DLLs aus FoxPro/Windows-aus FoxPro/Windows-

Anwendungen mitAnwendungen mitMicrosoft Visual FoxProMicrosoft Visual FoxPro

Page 49: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

FPW-Wrapper (1)FPW-Wrapper (1)

Ox = Createobject( „Test“ )Ox = Createobject( „Test“ )

Define Class Test as custom olepublicDefine Class Test as custom olepublic

Procedure InitProcedure Init

cd <wohinauchimmer>cd <wohinauchimmer>

set path to dataset path to data

this.application.visible = .T.this.application.visible = .T.

Procedure DoItProcedure DoIt

do <maske.spr>do <maske.spr>

EnddefineEnddefine

Page 50: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

FPW-Wrapper (2)FPW-Wrapper (2)

Ausführung aus anderen Programmiersprachen:Ausführung aus anderen Programmiersprachen:

Ox = Createobject( „Test.Test“ )Ox = Createobject( „Test.Test“ )

Ox.DoIt()Ox.DoIt()

Wenn im READ Tabelle nicht geschlossen wird:Wenn im READ Tabelle nicht geschlossen wird:

? Ox.application.Eval( <feldname> )? Ox.application.Eval( <feldname> )

Page 51: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Was sollte man überlegen?Was sollte man überlegen?

Minimalitisch?Minimalitisch? Als Wrapper Als Wrapper

aufrufen?aufrufen?

Funktional?Funktional? Später überarbeiten?Später überarbeiten? Nachbearbeiten auf-Nachbearbeiten auf-

wendiger als neu?wendiger als neu?

Gleich Visuell?Gleich Visuell? Gemischt je nach Gemischt je nach

Maskeneinsatz?Maskeneinsatz?

Page 52: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Vielen Dank!Vielen Dank!

Das waren die Themen:Das waren die Themen: Fallstudie aus der PraxisFallstudie aus der Praxis VorüberlegungenVorüberlegungen KonvertierungsansätzeKonvertierungsansätze Minimalistische Minimalistische

KonvertierungKonvertierung Hybrider AnsatzHybrider Ansatz Konvertierung BerichteKonvertierung Berichte KonvertierungsassistentKonvertierungsassistent Funktionale KonvertierungFunktionale Konvertierung MaskeneigenschaftenMaskeneigenschaften Nachbearbeitung MaskenNachbearbeitung Masken FPW-Wrapper-KlassenFPW-Wrapper-Klassen

Page 53: Wizards & Builders GmbH Konvertierung FPW 2.6->VFP Konvertierung von FoxPro / Windows Anwendungen nach Microsoft Visual FoxPro

Wizards & Wizards & Builders GmbH Builders GmbH

Wenn Fragen bestehen:Wenn Fragen bestehen:

Wizards & BuildersWizards & BuildersMethodische Software-Methodische Software-

Entwicklung GmbHEntwicklung GmbH

Frankfurter Str. 21bFrankfurter Str. 21b

61476 Kronberg61476 Kronberg

Tel.: 06173-950906Tel.: 06173-950906

Fax: 06173-950907Fax: 06173-950907

CIS: 101605,175CIS: 101605,175