Szukaj…


Uwagi

Foxpro został stworzony na początku lat 80-tych (początkowo jako FoxBase - 1984?) Przez oprogramowanie Fox i obsługiwany na platformach Mac OS, Unix, DOS, Windows. Wtedy był znany jako najszybszy silnik bazy danych na PC. Później w 1992 roku został niestety przejęty przez Microsoft. Po przejęciu Microsoftu, w 1994 roku wydano Foxpro dla DOS (FPD) i Foxpro dla Windows (FPW) 2.6. Pod koniec 1995 roku Foxpro otrzymało nazwę „Visual”, a obsługa platformy była ograniczona tylko do systemu Windows. Była to również pierwsza wersja Foxpro, w której język okazał się obiektowy.

Oficjalna witryna Visual Foxpro firmy Microsoft (powszechnie nazywana po prostu VFP) opisuje ją jako:

System programowania baz danych Microsoft® Visual FoxPro® to potężne narzędzie do szybkiego tworzenia wysokowydajnych aplikacji komputerowych, bogatych klientów, klientów rozproszonych, klientów / serwerów i internetowych baz danych.

Chociaż jest to stary język, nadal uważa się go za najłatwiejszy język do szybkiego tworzenia aplikacji zorientowanej na dane na pulpicie systemu Windows. Jeśli potrzebujesz aplikacji opartej na danych dla pulpitu systemu Windows, a następnie wybierając VFP, naprawdę zrobiłbyś to łatwo i szybko.

Wersje

Wersja Wydany
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 21.10.2007

Instalacja lub konfiguracja

Szczegółowe instrukcje dotyczące konfiguracji lub instalacji visual-foxpro.

Witaj świecie

We wszystkich językach tradycyjnie pierwszym przykładem jest wydrukowanie „Hello World”. Prawdopodobnie robienie tego jest najłatwiejsze w VFP:

? "Hello World"

Dodaj globalny moduł obsługi błędów

Prostym sposobem na wyłapanie nieobsługiwanych błędów (wyjątków) w aplikacji VFP jest użycie komendy ON ERROR w pobliżu początku głównego programu.

Następująca komenda ON ERROR wywołuje metodę w bieżącym programie o nazwie „errorHandler”. Wartości zwrócone przez ERROR (numer błędu VFP), MESSAGE (komunikat o błędzie VFP), PROGRAM (nazwa aktualnie wykonywanego programu) i LINENO (numer wiersza błędu) są przekazywane do metody errorHandler.

ON ERROR DO errorHandler WITH ERROR(), MESSAGE(), PROGRAM(), LINENO()

Prosta metoda errorHandler może wyglądać następująco.

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

Możesz także zmienić i przywrócić moduł obsługi błędów pomiędzy nimi. Na przykład w pewnym momencie chcesz otworzyć wszystkie tabele wyłącznie w folderze, a jeśli nie możesz, nie chcesz kontynuować:

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

Wskazówka: Czasami, szczególnie podczas debugowania, chcesz przywrócić domyślną procedurę obsługi błędów, która pozwala złamać kod i wkroczyć do kodu, w którym wystąpił błąd, a następnie w dowolnym miejscu przed wystąpieniem błędu, tymczasowo dodając:

on error

zrobiłbym to.



Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow