Uwe Habermann VFX 11.0 Einsatz von Cursoradaptern in bestehenden Anwendungen Venelina Jordanova
VFX 11.0 * Der neue VFX - DBF-CA Wizard zur automatischen Aktualisierung Ihrer DBF-Anwendung auf Datenzugriff mit Cursoradaptern!
Vorbereitung * Alle Tabellen sollten ein Primärschlüsselfeld und einen Primärindex enthalten
Warum Cursoradapter? * Unabhängigkeit von der Datenbank * Unterstützung von * DBC * SQL Server * MySQL * DB2 * Oracle * Zugriff auf die Datenbank von anderen Anwendungen (auch nicht VFP) möglich
VFPizza11Workshop0.zip * Datenzugriff direkt auf Tabellen * Test * Customers.scx * OnPrint
VFX 11.0 * Umbau einer bestehenden Anwendung von DBF Datenzugriff auf Cursoradapter Datenzugriff * VFX – DBF-CA Wizard * Manuelle, programmatische Änderungen
Was macht der VFX – DBF-CA Wizard? * Sicherungsarchiv anlegen * Datenbank umbauen * Cursoradapter erstellen * Datenumgebung in allen Formularen umbauen
DBC umbauen * Allen Tabellennamen wird der Prefix tbl vorangestellt * Der Alias des CA kann dadurch der alte Tabellenname sein
Cursoradapter erstellen * Neue Klassenbibliothek caAppl.vcx * Cursoradapter für jede Tabelle * Standardeinstellungen wie VFX – Cursoradapter Wizard * Erstellung aller Indexschlüssel * Alias = alter Tabellenname * Keine Änderung von Controlsources erforderlich
Datenumgebung umbauen * Tabellen und Relationen löschen * Cursoradapter einfügen * Relationen mit VFX – Relation Manager erstellen
VFX – DBF-CA Wizard * 1. Zip Backup erstellen * 2. Tabellennamen mit Prefix versehen * Name: tbl + * 3. Cursoradapter erstellen * Name: ca + * Alias: * Indexe: in Methode createindexes
VFX – DBF-CA Wizard * 4. Datenumgebung ersetzen * Relationen entfernen * Tabellen entfernen * Cursoradapter hinzufügen * Relationen in VFX – Relation Manager erstellen
VFX – DBF-CA Wizard * Keine Änderung von Controlsources und Recordsources erforderlich * Keine Cursoradapter für VFX Tabellen erforderlich
VFX – DBF-CA Wizard * Einschränkungen * Keine Unterstützung von Ansichten * Keine Änderung von Berichten
VFPizza prüfen und testen * Tabellennamen haben Prefix tbl * Datenumgebungen mit Cursoradapter
Was ist dann zu tun? * Änderung des Codes, der programmatisch auf Tabellen zugreift * USE, SELECT, UPDATE, INSERT
USE loCursor = NEWOBJECT("caTabelle") loCursor.CursorFill() SELECT tabelle ? tabelle.feld1
Customers.scx * Code in OnPrint Methode anpassen * Testen
VFX 11.0 * Programmatische Verwendung von CAs, zum Beispiel für Berichte
* loCursor = NEWOBJECT("cAppDataAccess") * loCursor.alias = "doc" * loCursor.updatenamelist = "" * loCursor.usecursorschema =.T. * loCursor.SendUpdates =.F. * * … * loCursor.CursorFill() * SELECT doc * ? Doc.feld1
Verwendung von SQL Server * VFX – Upsizing Wizard * Upsizing der Datenbank * VFX – Manage Config.vfx * Eintrag für SQL Server hinzufügen * Test mit SQL Server Datenbank
Pause! Um Uhr geht es weiter