visual-foxpro Tutorial
Erste Schritte mit visual-foxpro
Suche…
Bemerkungen
Foxpro wurde Anfang der 80er Jahre (ursprünglich als FoxBase - 1984?) Von Fox-Software erstellt und auf Mac OS-, Unix-, DOS- und Windows-Plattformen unterstützt. Es war damals die schnellste Datenbank-Engine auf PCs. Später im Jahr 1992 wurde es leider von Microsoft erworben. Nach der Übernahme durch Microsoft wurden 1994 Foxpro for DOS (FPD) und Foxpro for Windows (FPW) 2.6 veröffentlicht. Ende 1995 erhielt Foxpro den Namen "Visual" und die Plattformunterstützung war nur auf Windows beschränkt. Es war auch die erste Version von Foxpro, bei der die Sprache objektorientiert war.
Microsofts offizielle Visual Foxpro-Site (im Allgemeinen nur als VFP bezeichnet) beschreibt es als:
Das Microsoft® Visual FoxPro®-Datenbankentwicklungssystem ist ein leistungsfähiges Werkzeug zum schnellen Erstellen von leistungsstarken Desktop-, Rich Client-, verteilten Client-, Client / Server- und Web-Datenbankanwendungen.
Obwohl es sich um eine alte Sprache handelt, gilt sie immer noch als die einfachste Sprache, um schnell eine datenzentrische Anwendung für den Windows-Desktop zu erstellen. Wenn Sie eine datenbasierte Anwendung für den Windows-Desktop erstellen möchten, ist die Verwendung von VFP wirklich einfach und schnell.
Versionen
Ausführung | Veröffentlicht |
---|---|
FPW 2.6a | 1994-10-28 |
Visual Foxpro 3.0 | 1995-12-16 |
Visual Foxpro 5.0 | 1997-01-24 |
Visual Foxpro 6.0 | 2000-08-18 |
Visual Foxpro 7.0 | 2002-01-04 |
Visual Foxpro 8.0 | 2003-10-25 |
Visual Foxpro 9.0 | 2004-12-13 |
Visual Foxpro 9.0 SP2 | 2007-10-21 |
Installation oder Setup
Detaillierte Anweisungen zum Einrichten oder Installieren von Visual FoxPro.
Hallo Welt
In allen Sprachen ist das erste Beispiel das Drucken von "Hello World". Das ist wahrscheinlich am einfachsten in VFP:
? "Hello World"
Fügen Sie den globalen Fehlerhandler hinzu
Sie können unbehandelte Fehler (Ausnahmen) in einer VFP-Anwendung auf einfache Weise abfangen, indem Sie den Befehl ON ERROR am Anfang Ihres Hauptprogramms verwenden.
Der folgende ON ERROR-Befehl ruft im aktuellen Programm eine Methode mit dem Namen "errorHandler" auf. Die von ERROR (die VFP-Fehlernummer), MESSAGE (die VFP-Fehlernachricht), PROGRAM (Name des aktuell ausgeführten Programms) und LINENO (die Zeilennummer des Fehlers) zurückgegebenen Werte werden an die errorHandler-Methode übergeben.
ON ERROR DO errorHandler WITH ERROR(), MESSAGE(), PROGRAM(), LINENO()
Eine einfache errorHandler-Methode kann wie folgt aussehen.
PROCEDURE errorHandler
LPARAMETERS tnVFPErrorNumber, tcVFPErrorMessage, tcProcWithError, tnLineNumber
STORE 'Error message: ' + tcVFPErrorMessage + CHR(13) + ;
'Error number: ' + TRANSFORM(tnVFPErrorNumber) + CHR(13) + ;
'Procedure with error: ' + tcProcWithError + CHR(13) + ;
'Line number of error: ' + TRANSFORM(tnLineNumber) TO lcDetails
MESSAGEBOX(lcDetails, 16, "Unhandled Exception")
ON ERROR *
ON SHUTDOWN
CLEAR EVENTS
QUIT
ENDPROC
Sie können auch den Fehlerhandler dazwischen ändern und wiederherstellen. An einem Punkt möchten Sie beispielsweise alle Tabellen in einem Ordner exklusiv öffnen. Wenn Sie dies nicht tun können, möchten Sie nicht fortfahren:
procedure DoSomethingWithExclusiveLock(tcFolder)
local lcOldError, llInUse, ix && by default these variables have a value of .F.
lcError = on('error') && save current handler
on error llInUse = .T. && new handler
local array laTables[1]
for ix=1 to adir(laTables, addbs(m.tcFolder) + '*.dbf'))
use (addbs(m.tcFolder)+laTables[m.ix,1]) in 0 exclusive
endfor
on error &lcError && restore old handler
if m.llInUse && couldn't get exclusive lock on all tables
close databases all
return
endif
* do whatever
endproc
Tipp: Manchmal, besonders beim Debuggen, möchten Sie den Standard-Fehlerhandler wiederherstellen, der es Ihnen ermöglicht, den Code zu brechen, in dem der Fehler aufgetreten ist, und dann an einer anderen Stelle, an der der Fehler aufgetreten ist, vorübergehend Folgendes hinzuzufügen:
on error
würde das tun.