Agnes,
a small correction
IF BETWEEN(m.lnOldRecNo,1,RECCOUNT()) THEN
GO (m.lnOldRecNo)
do case
case deleted()
go top
case ( !empty(Filter()) )
if( !eval(Filter()) )
go top
endif
endcase
ENDIF
>Hi All,
>testing the SortGrid Class out of download area, I found an problem I have now good idea to solve.
>
>The problem is not only by SortGrid it is in general.
>
>I have a Table
>
>RECNUM Idx cField
>1 1 'aTest'
>2 2 'bTest'
>3 3 'aTag'
>
>If I do the following
>
>SET FILTER TO Idx#2
>GO 2
>?cField
>
>I get 'bTest' printed out even it is a filtered record.
>
>I look in EOF() and BOF(), both are .F.
>
>Same problem happens, if I use SET ORDER TO with an filterd index (thats why I run in this with SortGrid, since SortGrid simple uses:
>
> IF BETWEEN(m.lnOldRecNo,1,RECCOUNT()) THEN
> GO (m.lnOldRecNo)
> ENDIF
>
>and I'm within reccount).
>
>So what I need is a way to determine if a record is after SET FILTER or SET ORDER within or without the filter.
>
>Since this problem occurs with restore of grid's postion, what would be the best record the select if the one I stored is hidden?
>
>Thank you for help
>Agnes
Gregory