Lokal Views (Ansichten) in Visual FoxPro
© 1999 TMN-Systemberatung GmbH
Views (Ansichten) und Abfragen Views und Abfragen
– beide stellen eine definierte Sicht auf Ihre Daten dar. Sie können eine Sicht aus verschiedenen Tabellen erstellen. Zugrunde liegen hier immer SQL-Befehle
Abfragen– Sie können die Ausgabe definieren: Cursor, Tabelle,
Bericht, Etiketten– Sie können keine Werte Ändern.
-> Wir werden und mit Abfragen daher nicht beschäftigen, da diese kaum Vorteile bringen.
© 1999 TMN-Systemberatung GmbH
Views
Views– Sie können Werte ändern und in die Original Tabellen
zurückschreiben.– Sie können per ODBC auf fremde Datenquellen
zugreifen.– Sie können Standardwerte und Validierung
hinterlegen.– Sie können die Sicht auf die Daten nach beliebigen
Kriterien einschränken– Mit Views können Sie wie mit jeder x-beliebigen
Tabelle umgehen (USE, SKIP....)
© 1999 TMN-Systemberatung GmbH
Views mit dem Designer erstellen (1) Views benötigen immer einen DBC
– Die Definition des View wird im DBC gespeichert Neue lokale Ansicht Tabellen auswählen Felder auswählen Verknüpfung erstellen
– Vorhandene Relationen (Verknüpfungen) werden automatisch in JOINS umgesetzt.
Filter definieren
© 1999 TMN-Systemberatung GmbH
Views mit dem Designer erstellen (2) Sortierung auswählen Eventuell Gruppierung festlegen Aktualisierungskriterien Verschiedenes
– keine Duplikate– Die ersten xx Datensätze bzw.
die ersten xx Prozent der Daten View (Ansicht) speichern SQL Befehl kann über das Menü Abfrage - SQL
Ansicht kontrolliert werden
© 1999 TMN-Systemberatung GmbH
Aktualisierungskriterien
Eindeutige Felder (möglichst primär indiziert) müssen in die Feldliste mit auf-genommen werden. Diese stellen die Schlüsselfelder für den Update dar.
Zu aktualisierende Felder auswählen (Bleistift) SQL Aktualisierungen senden auswählen ! Weitere Optionen je nach Bedarf
© 1999 TMN-Systemberatung GmbH
Arbeiten mit Views
Nach der Anlage der Views können Sie diese wie eine normale Tabelle mit USE öffnen (Der zugehörige DBC muß offen sein oder angesprochen werden)
Die Tabellen aus welchen der View erzeugt wurde werden automatisch mit geöffnet.
Änderungen an den Daten, welche für die Aktualisierung freigegeben wurden, werden an der ursprünglichen Tabelle sofort vorgenommen.
© 1999 TMN-Systemberatung GmbH
Arbeiten mit Views
Views können wie Tabellen mit Buffering arbeiten und über Relationen mit anderen Tabellen verknüpft werden.
© 1999 TMN-Systemberatung GmbH
Parameter in Views (1)
Nicht alle Datensätze müssen auf einmal geladen werden. Die Sicht auf Ihre Daten kann zur Laufzeit geändert werden
Bsp: Nur die zur Firma 1 gehörigen Ansprechpartner anzeigen.
Ansichtsparameter definieren
Parameter in Filterausdruck eintragen.
© 1999 TMN-Systemberatung GmbH
Parameter in Views (2)
1. Möglichkeit:Beim Öffnen des Views wird der Benutzer nach dem Parameter gefragt.
© 1999 TMN-Systemberatung GmbH
Parameter in Views (3)
2. Möglichkeit:Sie definieren die Variable, welche Sie als Ansichts Parameter festgelegt haben und öffnen den View dann. Nur die übereinstimmenden Datensätze werden geladen. Beispiel:nCid = 1USE FIRMANSP
REQUERY()– Mit Hilfe des Requery Befehls können Sie den View
jederzeit aktualisieren (z.B. bei Änderung des Parameters.)
© 1999 TMN-Systemberatung GmbH
Weiteres zu Views
Views programmatisch erstellen– CREATE SQL VIEW [ViewName ] [AS SQLSELECTStatement]
– Bei größeren Views sinnvoll, da der View Designer einige Bugs hat.
Validierung, Standardwerte....– Können Sie einem View wie jeder Tabelle mittels
DBSETPROP(„View.Field“,“FIELD“,Property, eValue) zugeordnet werden.
– Hier empfiehlt sich der Einsatz von Tools Views können temporär indiziert werden
Offline Viewsin Visual FoxPro
© 1999 TMN-Systemberatung GmbH
Offline Views
Warum eigentlich:– Zeitkritische Datenänderungen (z.B. neue Artikel)– Datenreplikation ( z.B. Daten abgleichen)– Arbeiten unterwegs (z.B. Vertreter mit Notebook)– Sicherung und Wartung von Tabellen, welche für
den 24h Betrieb vorgesehen sind.
Seit VFP 5.0 mit einfachen Mitteln möglich
© 1999 TMN-Systemberatung GmbH
Offline Views erstellen
Normalen View erzeugen Offline schalten:
– CREATEOFFLINE(ViewName [, cPath])erzeugt den Offline View. Es wird hierzu eine normale DBF Tabelle auf der Platte generiert.
wie normalen View bearbeiten aber kein:– ZAP, PACK, REQUERY, INSERT
© 1999 TMN-Systemberatung GmbH
Offline Views aktualisieren
USE ViewName ONLINE – Schaltet den View Online ohne Update der
Ursprungstabellen. TABLEUPDATE()
– Erst das TableUpdate() aktualisiert die Ursprungstabellen. Konflikte müssen dabei abgefangen werden.
Nicht vergessen:– View schließen (USE)– DROPOFFLINE(cViewName)
um den Offline View zu löschen
© 1999 TMN-Systemberatung GmbH
Offline View (Befehle)
DBGETPROP(ViewName,“VIEW“,“OFFLINE“)– zeigt an, ob der View momentan Offline ist. Bis zu
einem „DROPOFFLINE“ bleibt der View Offline, unabhängig davon ob Änderungen vorgenommen wurden.
DROPOFFLINE(ViewName)– Löscht den Offline View grundsätzlich ohne
UPDATE oder dem Prüfen der Änderungen.
Remote Viewsin Visual FoxPro
© 1999 TMN-Systemberatung GmbH
Remote Views - Einführung
Lokal Views basieren auf FoxPro Tabellen, oder Views
Remote Views basieren auf jeder beliebigen ODBC Datenquelle
Remote Views werden verwendet:– Zugriff auf Fremddaten (Back End)– Einbinden von FoxPro 2.x Tabellen in eine VFP
Umgebung ohne die FoxPro Tabellen zu konvertieren. (Parallele Entwicklung)
© 1999 TMN-Systemberatung GmbH
Remote Views aufbauen (1)
In der Regel sind Kenntnisse des Back End Systems unabdingbar.
1. Schritt ODBC Datenquelle definieren
© 1999 TMN-Systemberatung GmbH
Remote Views aufbauen (2)
Welche DSN (Data Source Name) ? – User DSN - lokal auf dem Rechner und nur für den
aktuellen Benutzer verfügbar– System DSN - lokal auf dem Rechner und für den
alle Benutzer mit den demeentsprechenden Rechten verfügbar
– Datei DSN - Datei basierte DSN für alle Benutzer verfügbar, die Zugriff auf diesen Treiber haben.
© 1999 TMN-Systemberatung GmbH
Remote Views aufbauen (3)
Verbindungen verwenden ?– Die VFP Verbindung stellt den Mittler zwischen
ODBC DSN und dem View dar.– Remote Views können auch direkt auf ODBC
Datenquellen eingerichtet werden.– Wir empfehlen das Verwenden einer Verbindung,
da bei Änderungen an der Back End Datenquelle nur die Verbindung neu definiert werden muß.
© 1999 TMN-Systemberatung GmbH
Remote Views aufbauen (4)
Neue Verbindung anlegen
Verbindungs-zeichenfolge ?
Anmelde-Informationen
AsynchroneAusführung ?
Warnmeldungen ? Weitere Optionen
© 1999 TMN-Systemberatung GmbH
Remote Views aufbauen (5)
Remote View wie einen lokal View aufbauen Aus Performance Gründen wenn möglich
parametrisieren -> Kleine Data Sets
zu beachten:– Primary Key Generation auf dem Back End ?– Validation Rules auf dem Back End ?– Transaktionen auf dem Back End ?– Ausgereiftes Error Handling nötig !
© 1999 TMN-Systemberatung GmbH
Zusammenfassung
Lokal Views View Designer Aktualisierungs Kriterien Arbeiten mit Views parameterisierte Views
Offline View
Remote Views
© 1999 TMN-Systemberatung GmbH
Anregungen und Fragen
TMN-Systemberatung GmbH
Allee 62
74072 Heilbronn
http://www.tmn-systemberatung.de