That's only faster if there is no index on clientnum and firmid, not even sure if it is faster then. If there are indexes, foxpro will use rushmore to optimze the scan/endscan loop.
>A more optimized use of SCAN is
>
>
>SCAN
> IF ! ClientNum=This.Value OR ! FirmID=xxxx
> LOOP
> ENDIF
> * Do something with the matching records.
>ENDSCAN
>
>This avoids VFP putting a filter on the table which will slow it down.
--Todd Sherman
-Wake Up! Smell the Coffee!