* GOREC.prg * Restore record number * lcAlias is optional * lcFailCode is optional, indicates where to go (TOP,BOTTOM) if record number can't be restored) Lparameters lnRecNo, lcAlias, lcFailCode Local llEof If Empty(lcAlias) lcAlias = Alias() EndIf If lnRecNo>Reccount(lcAlias) llEof = .t. EndIf If lnRecNo<>0 and lnRecNo<=Reccount(lcAlias) Go lnRecNo in (lcAlias) Else DO case Case llEof && restore at end of file Go Bottom in (lcAlias) If !Eof(lcAlias) Skip in (lcAlias) Endif Case Empty(lcFailCode) * Record pointer stays put Case Upper(lcFailCode) = "T" && Top Go Top in (lcAlias) Case Upper(lcFailCode) = "B" && Bottom Go Bottom in (lcAlias) Otherwise * Record pointer stays put EndCase EndIf