seek cKeyValue calc min(recno()), max(recno()) to nMinRcn, nMaxRcn; while KeyExp=cKeyValue nOrder=TagNo() set order to 0 go nMinRcn scan next nMaxRcn-nMinRcn+1 for KeyExp=cKeyValue {processing happens here} endscan set order to (nOrder)Worked flawlessly since FP2.0.