Visual Extend 8.0 Die Entwicklungsumgebung für VFP 8.0 Diplom-Informatiker Uwe Habermann Visual Extend Product Manager [email protected] www.Habermann-Leu.de © 2003 Uwe Habermann für Visual FoxPro 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-Screen Anmeldedialog Menü und Symbolleiste Öffnen-Dialog Benutzerverwaltung Benutzerrechte Datenbankwartung und 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 den VFX - 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äge Customer.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. • 1 Ausfü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 [email protected] © 2003 Uwe Habermann