Visual Extend 9.0 Die Entwicklungsumgebung für VFP 9.0 Uwe Habermann Visual Extend Product Manager [email protected] © 2005 Uwe Habermann Visual Extend 9.0 Das größte Update seit es VFX gibt Aktueller Build VFX 9.00.2806 Features für Entwickler Datenzugriff Features für Endandwender Beispielanwendungen VFX90Traders VFX90Test VFPizza Dokumentation © 2005 Uwe Habermann Features für Entwickler Task Panes VFX 9.0 – neu: mit ZIP-Funktion VFX-Community Viele neue Wizards und Builder Application Builder Project Update Wizard CursorAdapter Wizard DataEnvironment Builder Parent/Child Builder Audit Trigger Wizard Project Documenting © 2005 Uwe Habermann VFX Task Pane Anlegen eines Zip-Archivs eines Projekts Community Task Pane Aktuelle Informationen zu VFX © 2005 Uwe Habermann CursorAdapter Unterstützung in der Datenumgebung von allen Formularklassen Unterstützung in allen VFX Buildern und Wizards Umschaltbarkeit einer Anwendung DBC <-> SQL © 2005 Uwe Habermann CursorAdapter Wizard Automatische Generierung von CursorAdapterKlassen zu allen Tabellen einer Datenbank DBC oder SQL Auswahl der Datenquelle Auswahl der Klassen und Klassenbibliotheken Einstellungen aktualisierbarer Felder © 2005 Uwe Habermann Manage Config.vfx Auswahl der Datenbank Unterstützung von: DBC Connection aus DBC DSN ConnectionString • ConnectionString Builder Mandantenauswahldialog für Endkunden Kompatibel zu Vfxpath Datenzugriff bearbeiten für Endkunden cConfigPassword – Kennwort für die Verschlüsselung der Datei Config.vfx © 2005 Uwe Habermann VFX – Application Builder Start aus dem VFX – Application Wizard Start aus dem VFX 9.0 Menü Bearbeitung aller Eigenschaften von goProgram © 2005 Uwe Habermann Neue Eigenschaften von goProgram cConfigPassword – Kennwort für die Verschlüsselung der Datei Config.vfx cFaxPrinterName – Der Name des Fax-Druckertreibers cMetadataTableName – Name der Tabelle mit den Metadaten lAllowMultipleLogin – Darf sich ein Benutzer mehrmals anmelden? lAllowUserCustomization – Anpassen je Benutzer lInformUserForUpdate – Messagebox vor Aktualisierung der Datenbank lShowProgressOnUpdate – Fortschrittsanzeige lSaveExportPathPerUser – Exportpfad für PDF, BMP, HTML lUseBCCRecipients – Beim E-Mailversand nDockable – Globale Einstellung der Dockable-Eigenschaft nHighLightStyle – Für Grids nIndexInsteadFilter – Verwendung von gefilterten Indexdateien nNullValid – Globale Einstellung für alle Auswahlfelder nSearchOnInit – Startet Formulare mit Filtereinstellungen aktiv © 2005 Uwe Habermann Neue Methoden von goProgram OnPreStart – In dieser Methode kann Code eingetragen werden, der vor Ausführung der Start-Methode ausgeführt werden soll OnPostStart – In dieser Methode kann Code eingetragen werden, der nach Ausführung der Start-Methode ausgeführt werden soll © 2005 Uwe Habermann Form Wizard -> Form Builder Dataenvironment Builder CursorAdapter on the fly erstellen Erstellung temporärer Indexdateien Relationen VFX – Index Manager Methode CreateIndexes von cBaseDataAccess VFX – Relation Manager oRelationMgr.CreateRelations auf Formularen © 2005 Uwe Habermann VFX – Form Builder Edit Pages Verbesserte Anordnung der Steuerelemente Hintergrundbild Hintergrundfarbe Doppelpunkt zu Labels ergänzen AutoComplete Move or Copy Grid Page Move or Copy © 2005 Uwe Habermann VFX – Form Builder View Parameters Auch für CursorAdapter verwendbar Automatisches Anlegen von Formulareigenschaften Linked Tables Verwaltung von 1:1 Beziehungen zwischen Tabellen auch über verschiedene DBCs Required Fields Erforderliche Eingabefelder angezeigt über einstellbare Eigenschaften Report Vordefinierte Feldliste © 2005 Uwe Habermann cOneToMany Child-Daten wahlweise im Grid oder in anderen Steuerelementen bearbeitbar Alle Vorteile der VFX – Form Builder © 2005 Uwe Habermann cOneToManyPageFrame Parent-Daten und Child-Daten auf verschiedenen Seiten eines Pageframe Child-Daten wahlweise im Grid oder in anderen Steuerelementen bearbeitbar Reentranter Builder Beispiel: VFX90Test – OneToManyPageFrame.scx © 2005 Uwe Habermann VFX – Parent/Child Builder Reentranter Builder Kein Code manuell einzugeben Kompatibel zu bisherigen VFX-Versionen (OnMore, OnSetChildData) oChildManager auf Formularen © 2005 Uwe Habermann cComboPicklist Comboboxen basierend auf Tabelle Builder Formular zur Bearbeitung von Auswahllisten Auch für Endanwender © 2005 Uwe Habermann VFX – Menü-Designer Der VMD erstellt jetzt nach der Bearbeitung eines Menüs automatisch die erforderlichen Include-Dateien für sprachunabhängige Menüs. Zusätzliche Arbeitsschritte nach der Bearbeitung von Menüs sind nicht mehr erforderlich. © 2005 Uwe Habermann PDM Project Documenting Machine Speziell für VFX angepasst Vollautomatische Erstellung einer technischen Dokumentation Achtung: bei kleinen Projekten wie VFPizza erstellt der Wizard ca. 4000 Dateien und 20 MB Doku! © 2005 Uwe Habermann Erstellen von Aktivierungsschlüsseln Im VFX 9.0 Menü Activation, Customer List Verwaltung der Kundendaten Im VFX 9.0 Menü Activation, Manage Application Updates Versionsverwaltung für die Aktualisierung über das Internet © 2005 Uwe Habermann Registrierung und Aktivierung von VFX 9 Offline-Eingabe der persönlichen Daten möglich Automatische Vergabe eines Aktivierungsschlüssels per Web Service © 2005 Uwe Habermann VFX – Project Update Wizard Aufruf im VFX 9.0 Menü Aktualisierung eines VFX-Projekts auf VFX 9.0 Aktualisierung eines VFX 9.0-Projekts auf den aktuellen Build © 2005 Uwe Habermann Fehlerbehandlung Anzeige von Laufzeitfehlern in bekannten WindowsDialogen <g> Akzeptanz durch Benutzer Fehlerberichte können per E-Mail an den Entwickler gesendet werden © 2005 Uwe Habermann Fehlerbehandlung Was soll passieren, wenn ein Fehler auftritt? goProgram.nAppOnErrorBehavior= • 0 – alle Fehler ignorieren • 1 – Anzeige einer Fehlermeldung (Standardwert) • 2 - Programmabbruch Welche Fehlerinformationen werden protokolliert? goProgram.ErrorDetailLevel= • 0 – nur die Fehlermeldung • 1 – Fehlermeldung und Aufrufstapel (Standardwert) • 2 – detaillierte Fehlerinformationen (Standardverhalten bis VFX 7.1) Versand des Fehlerprotokolls per E-Mail goProgram.cSupportEmail © 2005 Uwe Habermann Integrierte Fernwartung Radmin Server in die Exe-Datei eingeschlossen • keine Installation erforderlich • nur 2 Dateien (insgesamt 300 KB) - R_server.exe - admdll.dll • nur über TCP/IP Kennwortschutz Registrierung der IP-Adresse auf eine Subdomain http://benutzername:[email protected]/nic/ update?hostname=meinsupport.homeip.net © 2005 Uwe Habermann Weitere Verbesserungen für Entwickler Aufruf aller VFX Form Builder auch vom Pageframe ausgehend möglich Unterstützung von allen Steuerelementklassen in Buildern Zusätzliche Felder cins_time und cedt_time zur Speicherung der letzten Bearbeitungszeit Wenn readonly=.T. eingestellt ist, wird automatisch tabstop=.F. eingestellt VFX Cpickfield Builder: die Eigenschaften cfieldlist und cfieldtitle sind auf dem Builder mit einer einfachen Textbox direkt erreichbar VFX-Tabellen können wahlweise in einer SQL-Datenbank gespeichert werden Neuer Builder zur Generierung von Audit-Trail-Triggern im DBC © 2005 Uwe Habermann Layout Neue Symbole Symbolleiste Menü Anpassen Dialog Viele Einstellungen je Benutzer möglich Hintergrundbilder und Hintergrundfarben für Seiten auf Seitenrahmen Auch wenn Themes=.T. © 2005 Uwe Habermann Lokalisierung zur Laufzeit Überprüfung der Windows-Unicode-Einstellungen Sprache umschaltbar im Anmeldedialog und in der Symbolleiste Zuletzt verwendete Sprache je Benutzer gespeichert Konfigurierbar in Appl.vcx • cAppLanguage - ReloadLanguageList Beispiel: VFPizza © 2005 Uwe Habermann Dockable Global oder je Formular einstellbar Mehrere Formulare können ineinander gedockt werden Status in Vfxres.dbf gespeichert Modale Dialoge können nicht gedockt werden (by Design von VFP) © 2005 Uwe Habermann Benutzerverwaltung Benutzer dürfen sich wahlweise nur 1 x anmelden Protokoll der Benutzersitzungen Vfxuserlog.dbf Zuordnung eines Benutzers zu beliebig vielen Benutzergruppen Protokolle und Sichten für aktiv eingeloggte Anwender (für exklusive Tasks) © 2005 Uwe Habermann Benutzergruppen Ähnlich Benutzergruppen in Windows Ein Benutzer „erbt“ die Rechte aller Gruppen, in denen er Mitglied ist © 2005 Uwe Habermann Berichte Ausgabe als PDF, HTML, XML, TIFF, BMP E-Mailversand Faxversand Winfax Fritz!Fax Summe unter Spalten © 2005 Uwe Habermann E-Mailerweiterungen Auswahl von E-Mailadressen aus dem Outlook Adressbuch Wahlweise BCC-Empfänger Wenn goProgram.lUseBCCRecipients=.T. © 2005 Uwe Habermann Geschäftsgrafiken Verwendung von MSChart Grafiken können gedruckt werden Beispiel: VFX90Test, BusinessGraph.scx © 2005 Uwe Habermann Dokumentverwaltung cDefaultDocumentFolder – Startordner für Dokumente cFilterExpression – Anzuwendender Filterausdruck lOpenPicturesInForm – Bilder werden in Vfxpicture.scx angezeigt cPicturePreviewFormname – Vfxpicture.scx cPicturePreviewCaption – Caption des Anzeigeformulars Beispiel: VFX90Test, ParentDocs.scx © 2005 Uwe Habermann VFP Toolbox für Endanwender Universelle Drag&Drop Quelle und Ziel OLE Drag&Drop mit anderen Anwendungen Beim Drag&Drop kann beliebiger Code ausgeführt werden © 2005 Uwe Habermann Datenbankreparatur Basierend auf GenDBC Tabellen-Header reparieren Defekte Datensätze löschen DBC austauschen © 2005 Uwe Habermann Suchdialog Beliebig viele Filterbedingungen kombinierbar Einstellungen je Formular und Benutzer gespeichert Nur sinnvolle Operatoren Keine ungültigen Eingaben möglich © 2005 Uwe Habermann Treeview lLoadAllTreeviewNodes – Wenn .T. – Laden des gesamten Trees .F. – Es werden nur geöffnete Nodes geladen lRestoreTreeviewStatus – Wenn .T. – Status aller Nodes wird in Vfxres.dbf gespeichert und wird beim erneuten Öffnen des Formulars wieder hergestellt .F. – Oberste Nodes sind beim Öffnen des Formulars sichtbar © 2005 Uwe Habermann Aktualisierung der Anwendung Über das Internet Versionsverwaltung Kundenverwaltung © 2005 Uwe Habermann Lizenzvertrag Im Info-Dialog Anpassbar Lokalisiert Druckbar © 2005 Uwe Habermann Weitere Verbesserungen für Endbenutzer Unterstützung der inkrementellen Suche auch wenn der aktuelle Zelleninhalt .NULL. ist Lokalisierte Hotkeys für die Klasse cpickdate und ein mehrzeiliger Tooltip als Hilfe Neue Klassen: E-Mail mit Outlook-Aufruf, Hyperlink mit Internet Explorer-Aufruf, numerische Textbox mit Taschenrechneraufruf, TAPI, Dateiauswahl mit Fileselectbox Unterstützung von visible=.F. in Grid-Columns für den Suchdialog und den Druckdialog Restzeitanzeige bei der Aktualisierung der Kundendatenbank Skript für Download und Installation von Adobe Reader (für PDF-Dokumente) Tastaturbedienung des XP-Öffnen-Dialogs Unterstützung von Drag & Drop in Mover-Dialogen Beim erneuten Öffnen eines Formulars wird der Satzzeiger auf den zuletzt angezeigten Datensatz positioniert Unterstützung der Eigenschaft HighLightStyle in Grids. Verbesserte Anzeige von Memo-Feldern in Grids. Wenn alle Favoriten gelöscht werden, wird das dazugehörige, leere Menü gelöscht © 2005 Uwe Habermann VFX90Test Benutzergruppen Dokument-Container COneToManyPageFrame Geschäftsgrafiken mit CBusinessGraph Menü Extras © 2005 Uwe Habermann VFX90Traders Basierend auf Tastrade.dbc Drucken, Speichern, E-Mailversand, Fax 1:n Formulare mit Auswahllisten Produktaktivierung Aktualisierung der Anwendung über das Internet Kundenverwaltung Versionsverwaltung Fernwartung © 2005 Uwe Habermann Links Download und Infos zu VFX: • http://www.visualextend.de Mehr Infos zu VFX: • http://portal.dfpug.de/dfpug/Dokumente/VisualExtend/ Kostenloser Support zu VFX: • http://forum.dfpug.de © 2005 Uwe Habermann VFX 9.0 Jetzt updaten! • Aktivierungsschlüssel für 30 Tage kostenlos! • Beispielanwendung VFX90Test • Beispielanwendung VFX90Traders • Beispielanwendung VFPizza • Handbuch deutsch und englisch • Umfangreiche Informationen • Newsgroup • Portal © 2005 Uwe Habermann Vielen Dank für Euer Interesse! Viel Spaß mit VFX 9.0 wünscht Uwe Habermann © 2005 Uwe Habermann