Code: Alles auswählen
FUNCTION DbfSkipper( nWantSkip )
replace Tastendruck with ?????
LOCAL nDidSkip := 0
DO CASE
CASE LastRec() == 0 // Keine Datensätze,
replace Tastendruck with ?????
CASE nWantSkip == 0
GOTO RecNo() // Datenpuffer auffrischen
CASE nWantSkip > 0 // Nach unten skippen
replace Tastendruck with ?????
DO WHILE nWantSkip > nDidSkip .AND. .NOT. Eof()
SKIP
IF Eof() // Dateiende überschritten
SKIP -1
EXIT
ENDIF
nDidSkip ++
ENDDO
CASE nWantSkip < 0 // Nach oben skippen
DO WHILE nWantSkip < nDidSkip .AND. .NOT. Bof()
replace Tastendruck with ?????
SKIP -1
IF Bof() // Dateianfang erreicht
EXIT
ENDIF
nDidSkip --
ENDDO
ENDCASE
RETURN nDidSkip // So viel wurde geskipt
mfg
Wolfgang