Sök…


Anmärkningar

Foxpro skapades i början av 80-talet (ursprungligen som FoxBase - 1984?) Av Fox-programvara och stöds på Mac OS, Unix, DOS, Windows-plattformar. Den var känd som den snabbaste databasmotorn på datorer då. Senare 1992 förvärvades det tyvärr av Microsoft. Efter Microsofts övertagande släpptes 1994 Foxpro för DOS (FPD) och Foxpro för Windows (FPW) 2.6. I slutet av 1995 fick Foxpro namnet "Visual" och plattformsstödet var endast begränsat till windows. Det var också den första versionen av Foxpro där språket visade sig vara objektorienterat.

Microsofts officiella Visual Foxpro (ofta kallat bara VFP) -sida beskriver den som:

Microsoft® Visual FoxPro®-databasutvecklingssystem är ett kraftfullt verktyg för att snabbt skapa högpresterande desktop, rik klient, distribuerad klient, klient / server och webbdatabasapplikationer.

Även om det är ett gammalt språk anses det fortfarande vara det enklaste språket för att snabbt skapa en datacentrisk applikation för Windows-skrivbordet. Om det du behöver är att skapa en databaserad applikation för windows desktop och sedan välja VFP skulle du verkligen göra det enkelt och snabbt.

versioner

Version Släppte
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 eller installation

Detaljerade instruktioner för att få Visual-foxpro att installeras eller installeras.

Hej världen

På alla språk är det första exemplet traditionellt att skriva ut "Hello World". Det är förmodligen enklast att göra det i VFP:

? "Hello World"

Lägg till Global Error Handler

Ett enkelt sätt att fånga obehandlade fel (undantag) i en VFP-applikation är att använda kommandot ON ERROR nära början av ditt huvudprogram.

Följande ON ERROR-kommando kallar en metod i det aktuella programmet som kallas "errorHandler". Värdena som returneras av ERROR (VFP-felnumret), MESSAGE (VFP-felmeddelandet), PROGRAM (namn på det för närvarande körande programmet) och LINENO (felets radnummer) överförs till metoden errorHandler.

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

En enkel errorHandler-metod kan se ut enligt följande.

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

Du kan också ändra och återställa felhanteraren däremellan. Till exempel vill du en gång öppna alla tabeller i en mapp exklusivt och om du inte kan du inte fortsätta:

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

Tips: Ibland, särskilt under felsökning, vill du återställa standardfelhanteraren som låter dig bryta och kliva in i koden där felet har inträffat, var som helst innan du fick felet och tillfälligt lägga till:

on error

skulle göra detta.



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow