Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

VFX 10.0 Visual Extend Datenzugriff

Ähnliche Präsentationen


Präsentation zum Thema: "VFX 10.0 Visual Extend Datenzugriff"—  Präsentation transkript:

1 VFX 10.0 Visual Extend Datenzugriff
Uwe Habermann

2 Was machen wir? Datenzugriff auf Tabellen VFX – Form Builder
Datenzugriff mit CursorAdapter VFX – CursorAdapter Wizard VFX – Upsizing Wizard VFX – Manage Config.vfx

3 Datenzugriff Was bietet VFP? Freie Tabellen DBC Lokale Ansichten
Die Stärke von VFP Lokale Ansichten Remote Ansichten und Verbindungen Cursoradapter Die neue Stärke von VFP

4 Nativer Datenzugriff USE BROWSE Indexschlüssel Seek, Replace Pufferung
Transaktionen Sehr schnell Rushmore-Optimierung Lokale Ansichten

5 Unser Datenmodell

6 Formulare basierend auf Tabellen
VFX – Form Wizard VFX – Data Environment Builder VFX – Form Builder Fertig!  Beispiel: Kunden.scx

7 Remote Datenzugriff Remote View Basiert auf Connection
DSN Connectionstring DBC wird benötigt

8 Remote Datenzugriff CursorAdapter Verfügbar seit VFP 8 Klasse
Eigenschaften Methoden Vererbung Verwendbar in Datenumgebung Programmatisch instanziierbar Ergebnis: Cursor Verfügbar seit VFP 8

9 Remote Views vs. CursorAdapter
Remote View und Connection im DBC gespeichert Nachteil: Verbindungsinformationen im Klartext lesbar ggf. manipulierbar CursorAdapter als programmatische oder visuelle Klasse in die Exe-Datei eingebunden Zur Laufzeit beliebig konfigurierbar Mit DBC und Remote Datenbanken einsetzbar

10 CursorAdapter Klasse Einheitlicher Datenzugriff
Datenzugriff auf DBC und (jede) Remote Datenbank möglich Umschaltbarkeit zur Laufzeit Builder in VFP vorhanden

11 CursorAdapter In VFX unterstütze Datenbanken
DBC SQL Server Zur Laufzeit unterstütze Datenbanken Oracle DB2 Fat Client – Datenzugriff über das Internet

12 Wie bekommen wir die CursorAdapter?
Eigenschaften manuell einstellen? Builder aus VFP? Sehr hilfreich um CursorAdapter verstehen zu lernen!

13 VFX – CursorAdapter Wizard
Automatische Generierung von CursorAdapter-Klassen zu allen Tabellen und Ansichten einer Datenbank für VFP Datenbanken für SQL Server Auswahl der Datenquelle Auswahl der Klassen und Klassenbibliotheken Einstellungen aktualisierbarer Felder Beispiel: CAs in Appl.vcx für VSS erstellen

14 CursorAdapter in VFX CursorAdapter-Klasse verwendet ConnectionManager
ConnectionManager liest Datenbankinformationen aus Konfigurationsdatei (Config.vfx) CursorAdapter-Funktionalität in einer Klasse gespeichert Holen von ID-Werten Wartbarkeit

15 Programmstart Im Init Ereignis des Anwendungsobjekts wird der ConnectionManager instanziiert Beim Instanziieren eines CursorAdapters wird vom ConnectionManager eine Connection geholt Dabei werden aus einer verschlüsselten Datei die Datenbankinformationen gelesen Die CursorAdapter-Klasse verwendet die Informationen des ConnectionManagers

16 Formulare basierend auf CursorAdapter
VFX – Form Wizard VFX – Data Environment Builder VFX – Form Builder In allen VFX-Formularklassen können CursorAdapter verwendet werden Fertig!  Beispiel: KundenCA.scx

17 IDs IDs sollten von der Datenbank vergeben werden
CursorAdapter ermöglichen diese IDs nach dem Speichern aus der Datenbank zu holen InsertCmdRefreshKeyFieldList – Liste zu holender Felder InsertCmdRefreshCmd – wird nach dem Insert ausgeführt – Hier können IDs geholt werden GETAUTOINCVALUE() bei DBC SELECT * FROM <myTable> WHERE <IdField>=GETAUTOINCVALUE() bei SQL Server

18 Arbeiten mit Parametern
VFX - CDataFormPage Builder - Parameter Hinzufügen von Steuerelementen zur Eingabe der Parameter Automatisches Anlegen der Formulareigenschaften caCustomers mit Where-Klausel companyname LIKE ?thisform.tcompanyname

19 Planen einer neuen Anwendung
Nur mit CusorAdapter arbeiten! basierend auf cAppDataAccess Vorteile: Es wird nur 1 Verbindung benötigt Austauschbarkeit der Datenquelle Wechsel von DBC zu SQL möglich Entscheidung je Kunde ob DBC oder SQL verwendet werden soll

20 Warum SQL Server? Server basierte Datenbank Online Backup Stabilität
Skalierbarkeit Einfacher Zugriff von verschiedenen Anwendungen und Plattformen Performance?

21 Datenmodellierung Was sollte in VFP beachtet werden? Logisch Datum
numerisch 1 oder bit Datum Datetime NULL Werte sollten in allen Feldern einer Remote Datenbank zugelassen sein

22 Datum VFP SQL Gültigkeitsbereich Leeres Datum zulässig
Leeres Datum zulässig SQL Datetime: – SmallDatetime: – Leeres Datum NICHT zulässig

23 Datum Leeres Datum in VFP -> NULL im SQL
Unzulässiges Datum in VFP -> Datensatz kann nicht nach SQL portiert werden

24 Logisch VFP Logisch SQL Numerisch 1 Bit (ab SQL Server 2005)

25 VFX – Upsizing Wizard Transformierung der Struktur von lokalen Tabellen und lokalen Ansichten sowie der referenziellen Integrität Portieren von Daten auf einen SQL Server Quellcode wird mit VFP 9 SP 2 geliefert  Kann ein eigene Projekte eingebunden werden

26 VFX – Upsizing Wizard Upsizing der vorhandenen Datenbank auf SQL Server Prüfen der Datenbank mit SSMS Fehlerbericht beachten! Beispiel: VSS.dbc

27 Datenquellen bearbeiten Manage Config.vfx
Verwaltung des Datenzugriffs Dialog in der Anwendung beim Kunden nutzbar Problemloser Wechsel zwischen DBC und SQL Server ConnectionString empfehlenswert Verschlüsselung mit Kennwort Einstellung mit dem Application Builder goprogram.cconfigpassword

28 Datenquellen bearbeiten Manage Config.vfx
Neuer Eintrag SQL Connectionstring DRIVER={SQL Server}; SERVER=(local); UID=sa;PWD=sa; DATABASE=VSS; Local (Native DBF…) Data

29 Wohin mit den VFX Tabellen?
Als freie Tabellen lassen Im eigenen DBC In eigener Remote Datenbank In Daten-Datenbank als DBC oder Remote Datenbank

30 Test Läuft die Anwendung mit DBC und SQL Server?
Neue Datensätze anlegen Datensätze ändern

31 Multi-Client-Support
Mandantenfähige Anwendungen mit Remote-Datenbanken Datenzugriff bearbeiten – Config.vfx Mandantenfähige Anwendungen mit DBC Pfadeinstellungen in Vfxpath.dbf Ordner "Data" beim Kunden nicht verwendbar

32 Multi-Client-Support
Wo sucht VFX die Datenbank? Config.vfx Vfxpath.dbf Hard-codiert in goProgram.cDataDir

33 Audit-Trail VFX – Audit Trigger Wizard 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

34 Audit-Trail Vfxauditedtables Keine Trigger
DBC SQL Keine Trigger Läuft mit Cursoradapter auf jeder Datenbank Protokolliert einfügen, ändern und löschen

35 Impersonation Datenzugriff mit einem anderen Windows-Benutzerkonto
Sehr guter Schutz der Daten vor unberechtigtem Zugriff Einstellung in Config.vfx Win User Name Win User Password Win Domain Name Wenn, dann müssen alle Datenbanken mit Impersonation arbeiten

36 Pause! Um Uhr geht es weiter


Herunterladen ppt "VFX 10.0 Visual Extend Datenzugriff"

Ähnliche Präsentationen


Google-Anzeigen