>Hi Leonard,
>
> Thanx for your reply. It works fine but problem is if my variable doesnt have any decimal places, it returns 1. How can i solve this problem?
>
>Regards
>Amit
>
>
>len(substr(allt(padr(130.9898,20)), at(".", allt(padr(130.9898,20)) )+1 ) )
I expected it to return number of digits in integer part (3 for 130.9898).
I think you mean you threat 130.0000 with no decimal places. Then make it :
iif(int(lnVar)=lnVar,0,;
len(substr(allt(padr(lnVar,20)), at(".", allt(padr(lnVar,20)) )+1 ) ))
If you use VFP6 then Doug's method is shorter.
Cetin