Uwe Habermann Uwe@hceood.eu Neue und selten genutzte Features von VFX.

Post on 06-Apr-2015

103 views 0 download

Transcript of Uwe Habermann Uwe@hceood.eu Neue und selten genutzte Features von VFX.

Uwe HabermannUwe@hceood.eu

Neue und selten genutzte Features von VFX

Die Angst vor der Zukunft

* Support für VFP endete am 13.01.2015* Dadurch keine Möglichkeit mehr

VFP Lizenzen zu erwerben* Trotzdem neue VFP Projekte* Umfangreiche Weiterentwicklungen* Redesign

Die Freude auf die Zukunft

* VFX wird weiterentwickelt* Support für VFX geht weiter* VFX kann auch weiterhin erworben

werden

Was ist neu?

* VFX 15 Build 2713* Vollversion 2714

* Reporting Fixes* Upsizing Wizard

Reporting Fixes

* This release fixes a bug in ReportOutput.app and ReportBuilder.app that didn't handle higher DPI displays properly (thanks to Joel Leach)

* Verbesserung des Layouts von Dialogen* SET TALK OFF

VFX – Upsizing Wizard

* Ständige Weiterentwicklung!* Standardmäßig wird der neueste

SQL Treiber verwendet* Neue Namensgebung für Constraints

<prefix>_<table name>_<tag name>* Wizard kann nicht mehr mit ESC

geschlossen werden

VFX – Upsizing Wizard

* Upsizing von Zeichenfeldern zunvarchar oder nchar

* Vermeidung von Fehlern bei BULK INSERT

* Constraints für Fremdschlüssel werden nicht generiert, wenn alle RI Regeln auf ignorieren stehen

VFX – Upsizing Wizard

* Keine Unterstützung von SQL Server 7 (1998/1999) mehr

* Kleine Fixes bei BulkInsert* Fortschrittsanzeige bei JimExport

VFX – Upsizing Wizard

* BulkInsert* Einfügen aus generierter Textdatei* Sehr schnell

* FastExport* Generiert Stored Procedures

* JimExport* Insert Befehl je Datensatz* Langsam, aber Unicode-Unterstützung

und geht immer

VFX – Upsizing Wizard

* Unicode-Unterstützung* Je Datensatz(!) anderer Zeichensatz

möglich* Westlich* Kyrillisch* Griechisch usw.

* SQL Server Feldtyp nVarchar* DBC Feld Fontcharset

VFX – Upsizing Wizard

* Seite 4* FontCharSet Field* Seite 5* Do not use bulk insert for fast data upload

* Bulk insert unterstützt kein Unicode

* Neu: Unicode Conversion

Selten genutzte Features

VFX – Installation Wizard

* Erstellt Exe-Datei* Stellt leere Datenbank bereit* Kopiert alle erforderlichen Dateien in

Ordner Install* Einschließlich VFP Laufzeitumgebung

VFX – Installation Wizard

* MSComctl.ocx* Treeview, ImageList (Favoriten)

* MSComct2.ocx* Kalender

* MSMAPI32.ocx* E-Mailversand

* MSCHRT20.ocx* Geschäftsgrafiken

OneToManyToMany

* Neue Formularklasse* VFX – cOneToManyToMany Builder* Unterstützung von

* Tabellen* Cursoradaptern

* Intuitive Erstellung, wie bei allen VFX Formularen

OneToManyToMany

* VFX – Form Wizard* Datenumgebung* VFX – cOneToManyToMany Builder

* Parent-Seite* Child-Seite* Grandchild-Seite

* Demo

OneToManyToMany

* Beispiele in VFPizza* Basierend auf DBF* Basierend auf CA

* Generische Berichte

Maintenance Timer

* Nicht in der Entwicklungsumgebung* Nur in der Exe-Datei berücksichtigt* Kein Start möglich, solange

Wartungsdatei existiert

Maintenance Timer

* VFX – Application Builder* Maintenance Timer Interval

* Prüfung auf Wartungsdatei

* Maintenance Timeout* Restzeit für den Benutzer

* Maintenance application termination message timeout* Anzeigedauer der Meldung

* Name of maintenance file* Wartungsdateiname

OnrecordmoveRefresh und Onrecordmove

* Beim Bewegen des Satzzeigers im Parent-Teil eines 1:n Formulars müssen die Child-Daten nachgeladen werden

* Onrecordmove wird bei jeder Bewegung eines Parent-Datensatzes ausgeführt

* OnrecordmoveRefresh wird zeitverzögert ausgeführt* nRecordMoveRefreshtimeout

cPickDialogParaCpickwhereclause

* Beispiel in VFPizza: OrdersCA.scx* Demo

* cntCustomerid.cPickForm = 'VFXPICKPARA'

* caOrders.Cpickwhereclause ='CustomerName LIKE ?tcPara'

Felder für Suchdialog angeben

* Formularmethode onsearch* LPARAMETERS tofieldlist * IF TYPE("tofieldlist")#"O" AND !ISNULL(tofieldlist) * tofieldlist=CREATEOBJECT("cFieldlist") * tofieldlist.ctablelist="" * tofieldlist.addcontrolsource("customers.customername","Kundenname") *

tofieldlist.addcontrolsource("customers.contactperson","Ansprechpartner")

* * Add as many columns as needed.* ENDIF * RETURN DODEFAULT(tofieldlist)

* Demo

Datumsformat einstellen

* Ohne Lokalisierung zur Laufzeit* Applfunc.prg – FormSetup()

* SET DATE ANSI

* Bei Lokalisierung zur Laufzeit* thisform.langsetup()* thisform.onsetenv()

* DODEFAULT()* SET DATE ANSI

* Demo

E-Mail versenden

* Mit MAPI* MSMAPI32.ocx muss registriert sein* Zum Beispiel mit Outlook

* E-Mail mit Anhang* Demo

Einfügeformular

* Formular startet im Einfügemodus* Thisform.lInsertOnly = .T.* Released nach dem Speichern* Code in onSave() nach dem Dodefault()

wird nicht ausgeführt* Ggf. in onPostSave() verschieben* Demo

Aktualisierung der Exe-Datei

* VFX - Application Builder* Seite "Application Behavior"

* "Allow exe update via Internet"

* VfxSys.dbf - UpdateApp* URL zur neuen Exe-Datei* Beispiel:

D: http://www.hceood.eu/Download/vfpizza.vfx

Aktualisierung der Exe-Datei

* Appl.vcx* cAppUpdateEngine.cIniUrl* Datei an dieser URL enthält neue

Versionsnummer* Beispiel: 3.4.5* Wenn cAppUpdateEngine.cIniUrl leer ist,

wird die Exe-Datei in jedem Fall heruntergeladen

Aktualisierung der Exe-Datei

* Download und Aktualisierung wenn Versionsnummer in Ini-Datei größer als Versionsnummer in VfxSys.Appversion ist

* Loader.exe muss im Exe-Ordner vorhanden sein!

RTF Bericht drucken

* Beispiel in VFX15Test, ParentRTF.frx* Rechteck* Eigenschaften, Other, Edit comment...* '*:RTF'* Speichern* USE report\ParentRTF.frx* BROWSE FOR comment = '*:RTF'* REPLACE style with <RTF Beschreibung>

Lokalisierung

Lokalisierung

* Zur Entwicklungszeit* Texte werden aus Include-Dateien gelesen* Für jede Sprache muss eine Exe-Datei erstellt

werden

* Zur Laufzeit* Texte werden aus Vfxmsg.dbf gelesen* Vfxmsg.dbf kann in Exe-Datei eingeschlossen

werden* Sprachumschaltung zur Laufzeit möglich

Lokalisierung

* VFX – Language Management* VFX – Langsetup Builder

VFX – Language Management

* Deaktivieren nicht benötigter Sprachen* Löschen nicht benötigter Texte

* Verkleinert die Tabelle und damit die Exe-Datei

* FontCharSet* Kompatibilität mit Codepage

VFX – Langsetup Builder

* Lokalisierung von* Formularen* Berichten* Öffnen-Dialog

* Generiert Code in Methode LangSetup* Ausgeführt bei

* Formularstart* Sprachwechsel

* Fügt Datensätze in Vfxmsg hinzu

Vielen Dank!

Uwe HabermannUwe@hceood.eu