© 2003 Uwe Habermann
Visual Extend 8.0Die Entwicklungsumgebung für VFP 8.0
Diplom-Informatiker
Uwe HabermannVisual Extend Product Manager
für Visual FoxPro
© 2003 Uwe Habermann
Wer spricht da?
Dipl.-Inform. Uwe Habermann Selbstständig seit 1986 Arbeitet seit 10 Jahren mit FoxPro MCP für VFP Freier Mitarbeiter von u. a. ProLib und ISYS Uwe Habermann & Kathrin Leu GbR
• Entwickelt Branchenlösung und Individualsoftware Visual Extend Product Manager
© 2003 Uwe Habermann
VFX 8.0 - Was ist das?
Builder-unterstütztes RAD-Framework
Installation
• Template-Applikation
• Task Pane
• Builder
Aktivierungsschlüssel
© 2003 Uwe Habermann
VFX 8.0 - Was kann das?
Fertiger Rahmen der Anwendung mit vielen Funktionen Erstellung Office kompatibler Anwendungen Builder für
• Formulare, wahlweise mit Seitenrahmen
• 1:n Formular
• Grid
• verschiedene Auswahllisten
• mehrsprachige Anwendungen
• Produktaktivierung
• SQL Server Datenbankaktualisierung
• kontextsensitive Hilfe DBC oder C/S
© 2003 Uwe Habermann
VFX 8.0 - Task Pane
Verwaltung der VFX-Projekte
• Beim Öffnen wird der aktuelle Pfad auf den Projektordner gesetzt
Anlegen neuer Projekte Kompilieren vorhandener Projekte Bearbeiten der Project Properties
• Ermöglicht die Verwendung eigener Klassen von den VFX Buildern
Informationen über VFX 8.0 mit einem Mausklick
© 2003 Uwe Habermann
VFX - Application Wizard
Erstellen neuer Projekte
1. Auswahl des Ordners und der Datenbank
2. Texte für den About-Dialog
3. Einstellungen für das Applikationsobjekt
4. Texte für den Projektinfo-Dialog
5. Alles kompilieren und los geht´s...
© 2003 Uwe Habermann
Die generierte VFX-Anwendung
Splash-ScreenAnmeldedialogMenü und SymbolleisteÖffnen-DialogBenutzerverwaltungBenutzerrechteDatenbankwartungund vieles andere mehr...
© 2003 Uwe Habermann
Wie geht es weiter?
Anlegen der Datenbank
• mit dem VFP Datenbank-Designer
• oder mit xCase
• oder mit SDT
© 2003 Uwe Habermann
VFX – Form Wizard
Erstellen eines Formulars basierend auf einer der VFX Formularklassen:
• cDataFormPage
• cTreeViewForm
• cTableForm
• cOneToMany
• cTreeViewOneToMany
• cAskViewArg
• cWizard Verwendung eigener Formularklassen
© 2003 Uwe Habermann
VFX – cDataFormPage Builder
Reentranter Builder• Steuerelemente auf Seitenrahmen• Such-Grid mit vielen Funktionen • Formulareigenschaften
Verwendung eigener Klassen• Entsprechend den Vorgaben aus dem DBC• Entsprechend den Einstellungen in den
VFX - Project Properties
Beispiel: Lieferanten
© 2003 Uwe Habermann
Das Formular zur Laufzeit
Autoedit Inkrementelle Suche im Grid
• Multi-Column-Sort Suchdialog (setzt Filter) Drucken, PDF-Export, E-Mailversand Benutzerspezifisches Speichern der Einstellungen
• Größe und Position des Formulars auf dem Desktop
• Spaltenbreite, Spaltenfolge und Sortierfolge im Grid
• Suchkriterien
© 2003 Uwe Habermann
VFX- CTableForm Builder
Reentranter Builder
• Such-Grid und Bearbeitungsfelder sind nebeneinander angeordnet
Verwendung eigener Klassen
• Entsprechend den Vorgaben aus dem DBC
• Entsprechend den Einstellungen in denVFX - Project Properties
Beispiel: Versandfirmen
© 2003 Uwe Habermann
Wichtige VFX-Methoden
Valid auf Formularebene OnRecordMove OnPostInsert OnSave OnPrint OnPrev, OnNext, OnTop, OnBottom
© 2003 Uwe Habermann
Ansichtsbasierende Formulare
Ansichten können in allen VFX-Formularen verwendet werden
• thisform.lWorkOnView=.T.
Eingabe der Ansichtsparameter
• CAskViewArg
• CAskViewArgPgf
Beispiel: Mitarbeiter
© 2003 Uwe Habermann
1:n-Formulare
cOneToMany
• Bearbeitung und Suche der Parent-Daten wie in cDataFormPage
• Bearbeitung der Child-Daten im Grid
• Mehrere Children möglich
Beispiel: OrdEntry.scx
© 2003 Uwe Habermann
Linked-Child-Formulare
Aufruf eines Child-Formulars Hierarchische Verknüpfung möglich Beliebig viele Children möglich Eigenschaften zur Steuerung
• lCloseChildformOnExit
• lAutoSyncChildform
Beispiel: Kunden - AufträgeCustomer.scx – OrdEntry.scx
© 2003 Uwe Habermann
Hooks
Einschalten in Vfxmain.prg• nEnableHook=1 Enabled, 2 Disabled, 0 Use form setting
Rückgabewerte steuern das Verhalten
• .T.Ausführung fortsetzen
• 0 oder .F.Ausführung abbrechen, Rückgabewert .T.
• 1Ausführung abbrechen, Rückgabewert .F.
© 2003 Uwe Habermann
Beispiele für Hooks
DisabledBackcolor Grid-Sizing verhindern Grid-Zeile markieren (Eigenschaft von VFP 7) Inputbox mit Taschenrechner Rechtschreibprüfung
© 2003 Uwe Habermann
Delayed Instantiation
Entwicklung des Formulars mit dem VFX-Form Builder
Speichern der einzelnen Seiten als Klasse
Instanziierung im Activate Event der Pages
• AddPageDelay(thisform, this, 'x', ‚<classname>)
© 2003 Uwe Habermann
OLE drag & drop
Vollständig generisch in VFX integriert
• aus einem Steuerelement- nOLEenabledrag=1- nOLEdropForceEditmode=1
• aus einer Seite eines Seitenrahmens unter Berücksichtigung der Taborder
- nPageOLEdragdrop=1
• aus einem Grid- immer eingeschaltet
Unterstützung aller Datentypen
© 2003 Uwe Habermann
Multi-Client-Support
Mandantenfähige Anwendungen
• cDatadir="" in Vfxmain.prg
• Pfadeinstellungen in Vfxpath.dbf
Ordner "Data" beim Kunden nicht verwendbar
© 2003 Uwe Habermann
Audit-Trail
Trigger in den Tabellen
• _audit_insert()
• _audit_update()
• _audit_delete()
Anzeige des Protokolls über ein VFX-Formular Und-Verknüpfung mit anderen Triggern möglich
© 2003 Uwe Habermann
Links
Download und Infos zu VFX:
• www.visualextend.de
Mehr Infos zu VFX:
• www.my-vfx.de
Kostenloser Support zu VFX:
• news.dfpug.de
© 2003 Uwe Habermann
Begleitmaterial
67 Seiten Session-Notes im Konferenz-Ordner
VFX 8.0 befindet sich auf der Konferenz-CD!!!
• Aktivierungsschlüssel für 30 Tage kostenlos!
• Beispielanwendung VFX80Test
• Beispielanwendung VFX80Traders
• Handbuch
© 2003 Uwe Habermann
Vielen Dank für Ihr Interesse!
Bitte denken Sie an die Session-Bewertung!
Viel Spaß mit VFX 8.0 wünscht
Uwe Habermann