Having problems with your account or logging in?
A lot of changes are happening in the community right now. Some may affect you. READ MORE HERE

Program using OpenESQL gets compile errors when moving from Net Express to Visual COBOL

Program using OpenESQL gets compile errors when moving from Net Express to Visual COBOL


Customer has a program that uses embedded SQL statements using the OpenESQL precompiler.
This program compiles without errors under Net Express but when compiling under Visual COBOL as a native program it gets the following error:

COBCH0801: Statement Incompatible with BEHAVIOR setting
on the following statement:

Why is this occurring?


This error message occurs because the default settings of the SQL BEHAVIOR directive have changed in Visual COBOL.

By default it is now set to BEHAVIOR=MAINFRAME if it is not specified.
You can change this behavior back to the Net Express defaults as follows:

Close Visual Studio and then in the C:\Program Files\Micro Focus\Visual COBOL\bin folder run the program esqlconfigw.exe.

Click on the third option down which is for no change in behavior and then click the save button.

Open up Visual Studio and try compiling again.
The error message should now be gone.


Some content on Community Tips & Information pages is not officially supported by Micro Focus. Please refer to our Terms of Use for more detail.
Top Contributors
Version history
Revision #:
1 of 1
Last update:
‎2013-03-08 07:31
Updated by:
The opinions expressed above are the personal opinions of the authors, not of Micro Focus. By using this site, you accept the Terms of Use and Rules of Participation. Certain versions of content ("Material") accessible here may contain branding from Hewlett-Packard Company (now HP Inc.) and Hewlett Packard Enterprise Company. As of September 1, 2017, the Material is now offered by Micro Focus, a separately owned and operated company. Any reference to the HP and Hewlett Packard Enterprise/HPE marks is historical in nature, and the HP and Hewlett Packard Enterprise/HPE marks are the property of their respective owners.