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

Pro*COBOL application reports RTS 114 error when using INITCALL"ORASQL11" in 64-bit

Pro*COBOL application reports RTS 114 error when using INITCALL"ORASQL11" in 64-bit

Problem:

Customer has a Visual COBOL application that uses Oracle's Pro*COBOL product to access their Oracle database. When they compile the programs they use the directive INITCALL"ORASQL11". This will cause a CALL "ORASQL11" statement to be inserted into the beginning of the program in oder to load the Pro*COBOL run-time system orasql11.dll.

This works fine in 32-bit but when compiling for 64-bit and using the 64-bit version of Pro*COBOL the application is failing with a RTS 114 error when it is run.

What is the problem with 64-bit?

Resolution:

It appears that the 64-bit version of the Pro*COBOL run-time system does not contain an actual entry point called ORASQL11 whereas the 32-bit version does.

When a CALL statement is executed for an entry point that is not loaded the .dll with that name will be loaded automatically and then the entry point with the same name will be called. If there is no entry point with that name then the entry point with the lowest ordinal number within the .dll will be called and if that is expecting parameters it will result in the RTS 114 error.

To get around this, the Oracle run-time system can be loaded without calling its entry point by removing the INITCALL"ORASQL11" directive and adding the following code to the first program of the application:

01 proc-point  procedure-pointer.

     set proc-point to entry "ORASQL11"

 

DISCLAIMER:

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:
‎2014-04-25 20:59
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.