I didn't say it would evaluate the all parts of an expression for every record. But it has to look at the expressions to deterimine which parts have matching indexes. VFP can (I don't know if it always will) narrow the choices down using the indexes, and then run the UDFs on those records that still exist.
>
>On the premise that VFP's SQL *will* test ALL parts of an expression with ANDs, what does having the proper indexes in place have to do with preventing it or not?
>
>I could see myself being pretty disappointed if I had some rather onerous function but knew that it would execute on less than 1% of the records because my first condition filtered out 99%+, only to learn that it ran on all records anyway.
>
>Have I missed something here?
>
>>
>SNIP
Steve Gibson