Como ejemplo intentaremos ejecutar un comando SELECT de una tabla que no existe en el servidor de datos remoto.
Tambien capturamos el error con AERROR() si la conexión falla.
LOCAL lnHandle, laError, lcMsg, ln DIMENSION laError[1] *-- Especificar el DSN, Usuario y Contraseña correctos lnHandle = SQLCONNECT('[Origen de datos SQL]','sa','') IF lnHandle > 0 SQLEXEC(lnHandle,'SELECT * FROM TablaQueNoExiste') IF AERROR(laError) > 0 *-- Ocurrio un error * DISPLAY MEMORY LIKE laError lcMsg = "" FOR ln = 1 TO ALEN(laError,2) lcMsg = lcMsg + TRANSFORM(laError(1,ln)) + CHR(13) ENDFOR MESSAGEBOX(lcMsg, 16, "Error de ODBC") ENDIF SQLDISCONNECT(lnHandle) ELSE IF AERROR(laError) > 0 *-- Ocurrio un error * DISPLAY MEMORY LIKE laError lcMsg = "" FOR ln = 1 TO ALEN(laError,2) lcMsg = lcMsg + TRANSFORM(laError(1,ln)) + CHR(13) ENDFOR MESSAGEBOX(lcMsg, 16, "Error de ODBC") ENDIF ENDIFAERROR( ) crea una matriz con siete columnas y devuelve el número de filas de la matriz. El tipo de error que se produce determina el número de filas de la matriz.
Para mayor información vea la ayuda de la función AERROR().
Luis María Guayán