IF BETWEEN(m.lnOldRecNo,1,RECCOUNT()) THEN GO (m.lnOldRecNo) DO CASE CASE DELETED() GO TOP CASE !EMPTY(FILTER()) IF !EVAL(FILTER()) THEN GO TOP ENDIF CASE !EMPTY(ORDER()) *With VFP7.0 or endless work = ATAGINFO(laTags) *UPDATED lcTagFilter = laTags(ASCAN(laTags,TAG(),1,0,1,15),4) IF !EMPTY(lcTagFilter) AND !EVAL(lcTagFilter) THEN GO TOP ENDIF ENDCASE ENDIFto catch the filter in a TAG and it runs perfectly.