Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

HOWTO: How to Handle Visual FoxPro Connectivity Errors w/o DBERROR()


View products that this article applies to.

This article was previously published under Q134721

↑ Back to the top


Summary

The DBERROR() function from previous versions no longer exists nor does an equivalent SQLERROR() function that you might expect to find. There are still ways to find out the same information though. The function AERROR() is used throughout the product for retrieving error information and the SQLSETPROP() function also gives us some control over the SQL error messages specifically.

↑ Back to the top


More information

First Method

Using Aerror() will create an array containing the error code and error message. It could be implemented as follows for catching the full ODBC error that occurs when connecting to a datasource :
****************************
*  Example of using AERROR()
*
dsource='test'
Handle=SQLCONNECT(dsource,"","")
IF HANDLE<0
     retval=AERROR(atmp)
     errval=atmp(1,1)
     errmsg=atmp(1,2)
     WAIT WINDOW STR(ERRVAL)+": "+ERRMSG
ENDIF
				

Second Method

Setting up similar error trapping would be to use the SQLSetProp() function to set the DispWarning property to True. This will actually be easier than the old DBError() function because once this is set the full ODBC error text will automatically be displayed without having to test the return value or having to fill variables and display them yourself. A connection handle of 0 sets this as a default for all subsequent connections.
****************************
*  Example using SQLSETPROP()
*
retval=SQLSETPROP(0,"DispWarnings",.T.)
* The "0" parameter above creates a "dummy" channel to turn Dispwarnings on
dsource='test'
Handle=SQLCONNECT(dsource,"","") && Error returning line
				

↑ Back to the top


Keywords: KB134721, kbhowto

↑ Back to the top

Article Info
Article ID : 134721
Revision : 4
Created on : 2/22/2005
Published on : 2/22/2005
Exists online : False
Views : 524