Applies To:
  • CitectSCADA 5.xx, 6.00, 6.00 Service Pack A
  • CitectHMI 5.xx, 6.00, 6.00 Service Pack A

I cannot get the CiRecipe ActiveX control to connect to a dBase file when in Graphics Builder. I get the following errors :

1. [Microsoft][ODBC dBase Driver] Invalid SQL statement; expected 'DELETE','INSERT','PROCEDURE','SELECT', or 'UPDATE' if 'Unknown' option is used.

2. [Microsoft][ODBC dBase Driver] Unexpected error from external database driver (15877) if a SELECT statement is used

I am running Windows XP Service Pack 2.


There is an issue with Windows XP SP2 opening dbase files via dbase ODBC driver with ADO. This problem occurs only in the Graphics builder during development and does not occur in Citect32.exe during run time.

When you try to link the CiRecipe ActiveX control during development time ignore the SQL error prompt. When you select the OK it takes you back to the page in Graphics builder and the table will be empty but the connection information has been saved with the control. When you run your project it should open the .dbf file successfully and populate the table.

Alternatively you can try the following registry fix solution:

Windows XP Service Pack 2 upgrades the existing MDAC to MDAC 2.8 as part of the installation. In this version various changes have been made to the Microsoft Jet engine when going through the Borland Database Engine (BDE) which can cause issues when multiple applications are using ODBC to get access to dBase files. This affects both Citect Computer Setup and Communications Express Wizards and the Cicode Editor
Microsoft recommends that ISAM, Indexed Sequential Access Method, be used instead of the BDE. This can be achieved via a registry setting forcing all Jet access via ODBC to occur via ISAM as opposed to BDE. The following is the registry entry required.


Only a Citect Explorer (and not Windows) restart is required to activate the changes. To restore the original BDE method you can just delete the newly added key.