FUNCTION CK_IF_NUMERIC(CKFLD) LOCAL GOODVAR := '', I, CKCHAR LOCAL REPVAR := ALLTRIM(CKFLD) // -- FIELD TO VALIDATE LOCAL NUMDEC := 0 ** CHECK FOR ALPHA FIELD (!NUMERIC) FOR I = 1 TO LEN(REPVAR) CKCHAR := SUBSTR(REPVAR,I,1) IF !(CKCHAR$'0123456789-.') I := 999 ELSE IF (CKCHAR >= CHR(48) .AND. CKCHAR <= CHR(57)) GOODVAR := GOODVAR + CKCHAR ELSE IF CKCHAR = '-' IF I = 1 GOODVAR := GOODVAR + CKCHAR ELSE I := 999 ENDIF ELSE IF CKCHAR = '.' NUMDEC ++ IF NUMDEC = 1 GOODVAR := GOODVAR + CKCHAR ELSE I := 999 ENDIF ENDIF ENDIF ENDIF ENDIF NEXT ***IF >= 999, THEN IT WAS AN ALPHA LITERAL STRING ***IF < 999, THEN IT WAS A NUMERIC VALUE IF I < 999 RETURN .T. ELSE RETURN .F. ENDIF