Hi Mike,
TYPE("FiledName) <> "U" always worked for me. I don't remember any case where performence was a consideration.
I checked Fox 2.6 help and FIELD() function accepts only field # as first parameter and work area/alias as second.
>
>Some time ago I think Fabio Lunardon demonstrated using fsize to check for the presence of a field. What thread was that? I can't find it though I looked.
>
>Considering the need to manage SET COMPATIBLE for a UDF to use FSIZE I can't see it being the fastest way.
>
>I have used a UDF based on TYPE() and it is faster than a UDF using FSIZE that also handles setting and resetting SET COMPATIBLE. I think I found FIELD() is faster.
>
>There is another consideration. Using a UDF can be slow, so using an idea that is in my FoxPro Advisor article:
http://advisor.com/doc/17440, the command that can detect a field with the fewest external dependencies could be directly injected into code. It seems the easiest and fastest is to use FIELD().
>
>Did FIELD() always accept the fieldname and alias?
--sb--