less than 1 minute to read
Evaluates a FoxPro expression without blowing up by wrapping the EVALUATE() operation into an internal TRY/CATCH block.
o.SafeEval(lcEvalString,lvErrorResult)
Parameters
lcEvalString
String to evaluate - same value you would pass to EVALUATE()
lvErrorDisplay
The value to return when an error occurs
Pass the special value** ERRORMESSAGE** to return the error message
Remarks
You cannot pass expressions that contain local variables or the THIS pointer since they will not be in scope in the executing wrapper function.
Example
text<<code lang="VFP">>*** Execute 2 + 2 on Error -1 would be returned lnResult = SafeEval("2+2",-1) *** return the error message in lnResult lnResult = SafeEval("2+2+A","ERRORMESSAGE") IF VARTYPE(lnResult) = "C" ? lnResult && Error Message ENDIF <</code>>
See also:
Class wwUtils© West Wind Technologies, 2023 • Updated: 01/08/16
Comment or report problem with topic