No, vartype will not error on the first condition and since VFP checks everything in order, we can check the second.
E.g. if we check vartype(loExp.ErrorNo) without first checking for loExp, then it may fail. But that's why I do two checks.
>vartype() can error if the variable does not exists. Better to use type()
>
>if type("loExp") = O' and type("loExp.ErrorNo") = 'N'
>
>
>>>I did
>>>
>>>Got the same error.
>>>
>>>
>>>
>>What do you mean?
>>
>>If you added
>>
>>if vartype(loExp) = 'O' and vartype(loExp.ErrorNo) = 'N'
>> if loExp.ErrorNo -- still an error?
>>
>>
>>>>Well, I don't know what is wrong here, but add the logic I suggested you earlier before the IF.
>>>>
>>>>>And got exactly what I was expecting - same error
>>>>>
>>>>>
>>>>>>Out of desperation try
>>>>>>
>>>>>>local loExp as Exception
>>>>>>
>>>>>>and use loExp instead of oExp.
>>>>>>
If it's not broken, fix it until it is.
My Blog