Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
Problem: Using different ODBC drivers resulting in an ODBC error 900 "Invalid SQL string": EXEC SQL AT DBO PREPARE DYNSQL FROM :DB-SQL END-EXEC. Resolution: OpenESQL soes not support using the AT clause with SQL PREPARE statements, so remove the 'AT DBO' from the statement. Old KB# 7004
Problem: The error was encountered when running Net Express from a DOS prompt. The error refers to the runtime, and the compiler starts without any problems. Resolution: This occurs when there are other software products installed in the same path as the Net Express installation. In this case, some old DLL files of a previous version of Net Express were found on the path of the new Net Express installation. Removing these DLL files the problem no longer occurs. Ensure that path where you install Net Express is free of any existing Net Express installations, or other software products. Old KB# 6977
Problem: 114 error when loading Net Express. Resolution: Please try the following when you get this error: 1) Open a Net Express command prompt: Start, Programs, Micro Focus Net Express 4.0, Net Express Command Prompt 2) At the command line enter: mfnetx /n If this works, then you probably have a corrupt project (.APP) file. You will need to recreate your project file from scratch. If this is not the issue then look at the following: Lets take a step back and see if anything runs. As before, open a Net Express command prompt and enter "COBOL" at the command line followed by pressing RETURN. Does this give the 114 error ? If not (control and C breaks out of the compiler), then go to the following folder: \\net express\\base\\demo\\adsamp and enter: cobol adsamp anim; Does this work? If it does, then the next step is to ensure that your installation o
Problem: The customer created a solution using Visual Studio .Net that contains two projects. He had a main Console application that invoked a wrapper class in a different Assembly. From this class, he was attempting to do a PIatform Invoke call to an unmanaged .dll developed in Net Express 4.0. He added a reference to the unmanaged .dll in his project but when he tried to do a dynamic call at run-time to call the unmanaged .dll he received a run-time error 174 (imported file not found) Resolution: The problem is that when using .NET Platform Invoke from a COBOL program, you cannot call the unmanaged .dll with a dynamic call. You must use a static CALL "progname" instead and the case of "progname" must exactly match what is used as the entry point name in the unmanaged .dll. So if the CASE or FOLD-CALL-NAME directives are being used then you must call the program using the appropriate name that will be generated
Problem: This document details what is needed to configure and use the Micro Focus External File Handler, File Tracing. When problems occur while using Micro Focus indexed files, such as data and/or index corruption, you may be asked to enable File Tracing in your application, in order to assist Micro Focus SupportLine personnel in resolving the file issues. After enabling File Tracing, you would run your application in the normal manner with the goal of reproducing the reported error within the indexed files. File Tracing will cause each file handling I-O operation, including data, to be written to the trace file. Micro Focus personnel can then use a special debugging tool to replay the trace file step-by-step using a "before" image of the files being traced. This allows us to locate the particular I-O operation which may have caused the files to become corrupt. For more general information on how to configure the External File Handler and a
Problem: A program contians some DOS LineDraw characters which can be seen correctly in Net Express but which cannot be printed with Windows. Not even using various PC_PRINTER routines will solve the problemt. The characters can be printed correctly in DOS on port LPT1 but are treated differently when using a deskjet or laser printer via the USB port. Resolution: The issue lies with the DOS LineDraw characters which are part of the OEM character set. The problems is that Windows Fonts are based on the ANSI code page. In the Net Express IDE you can edit in an OEM font by using Options/Edit/Dos Compatability. If you switch to OEM then you should see that characters correctly in the editor. However when printing you get this problem. What some customers have done in the past is to install and use a font that supports the OEM Line Draw characters. Microsoft used to ship a font "MS LineDraw" for this which can be found at: http://www
Problem: RTS 173 error on CHECKFIL Resolution: Recompile program with initcall"utils.lbr" to resolve the issue. utils.lbr contains the module and with the above directive that library is opened at the start of the module. Old KB# 6947
Problem: "CGI Error: The specified CGI application misbehaved by not returning a complete set of HTTP headers." is the message the webserver will return when a web application (or cgi) cannot find or access the runtime files or other resources. Resolution: Application Server was installed on deployed workstation, application was linked with shared dynamic but no license had been installed to the Application Server License database. Entering a valid Application Server serial number and license key through AppTrack utility, found in the Application Server directory, resolved the CGI error. Old KB# 7000
Problem: A simple example of mult-threading in COBOL. Resolution: Net Express 4.0 comes supplied with a multi-threading demo in: \\Net Express\\Base\\DEMO\\MTHREAD In addition, the following code sample may be of interest. The demo has two threads: 1) The first thread simply increments a counter and displays the result on the screen. 2) The second thread displays the date and time on the screen. All this goes on whilst the parent updates its own counter. The demo is simple but it does show how to create a thread and to terminate them. Full details can be found in the multi-threading manual. Please note, ADIS (Display/Accept) will interrupt threading so that support should be used with caution. Also, you may find you get "funny" results inside the animator as debugging multiple threads seems tricky. It is always a good idea to run any example from the comm
Problem: Animation fails with 114, using a Net Express 3.1 project which has been migrated to Net Express 4.0 Resolution: When migrating a Net Express project, transfer only the project directory files. Do not include the DEBUG and RELEASE directories. Old KB# 6984
Problem: The code pasted below is just on add-on to the cobreg demo available on MF WEB Netx sample page; the initial cobreg demo reads & updates registries on the "local" computer. With the code pasted below, you'll be able to read registry on a remote computer. cobreg: Accessing the Windows registry with COBOL and writing or reading information from the registry Resolution: use the WIN32 API RegConnectRegistry as pasted below ========================================================== RegConnectRegistry: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/sysinfo/base/regconnectregistry.asp MSDN registry APIs http://msdn.microsoft.com/library/default.asp?url=/library/en-us/sysinfo/base/registry_functions.asp ========================================================== ... working-storage section. 01 ComputerName pic x(100) value z"\\\\NameOfTheRemoteComputer". 01 result long. ... &nb
Problem: Support for CURRENT TIMESTAMP is likely to be required in migrations from Cobol AS/400 with Embedded SQL to Windows platforms using Micro Focus COBOL and OpenESQL. This is an example of a sentence where CURRENT TIMESTAMP is used. In this case, CURRENT TIMESTAMP is substituted by the current date time at execution and used as a value for column TSCOLUMN: EXEC SQL INSERT INTO MYTABLE (COLUMN1, COLUMN2,
Problem: An stack overflow error or a stackOverflowException can be easily corrected by increasing the size of the stack. Knowledge base article 19007 - "STACK OVERFLOW, EXCEPTION_STACK_OVERFLOW <- increase stack's size of the process" describes how can you set up an environment variable to define a specific stack size when the executable is being created when linking. This article describes how you can increase the size of an executable once it has already being created. This affects to any kind of executable, even a .NET executable. Resolution: There is an SDK utility called editbin that allows you to change the stack size for an executable (amongst other things). Open a command prompt and cd to the directory where your application executable is, and then run: editbin /stack:nnn application.exe where application.exe is the name of the executable of your application and nnn is the number of bytes in siz
Problem: Received an error when trying to open a file. The file status returned is '9 '. What does this mean? Resolution: There are several different file status code values that can be returned from an I/O operation. The default file status codes for this version of COBOL is ANSI'85 (Please read the documentation on the ANS85 compiler directive in the on-line help). The values returned from an I/O operation are in the range '00' through to '49'. The values are returned into a 2 character field. However, the Micro Focus file system also has an extended version of file status codes. To activate these, the NOANS85 compiler directive must be set. The values returned from an I/O operation are returned into a field where the first character is defined as pic x, and the second is defined as pic x comp-x (i.e. hex storage). When an I/O operation fails the first field will always be 9 and
Problem: Is it possible to add version information to a COBOL .dll or .exe? Resolution: It is possible to add your own version details to an .exe or .dll. First of all, you need to create an .RC file. Create the .RC file using a text editor - an example of the contents and parameters of the .RC file are below: 1 VERSIONINFO FILEVERSION 1,1,1,1 &nbs
Problem: The simplest way is to retrieve the contents of the environment variable USERNAME, as in the code pasted below Others ways are to use the WIN32 APIs GetUSerName or WNetGetUser, as described in MF NeXx sample page getuser.zip : Using WIN 32 Api to get the current user logged using the win 32 api in Cobol getnuser.zip: Using WIN 32 Api to get the current user logged on the network using the win 32 api in cobol Resolution: working-storage section. 01 ENV-value pic x(200). 01 ENV-name. pic x(11) value "USERNAME". &n
Problem: Haven't you ever wondered why there is not a simple way of obtaining this, like an intrinsic function, or using INSPECT? Or maybe you have tried something like: working-storage section. 77 ws-name pic x(50). 77 ws-count pic 9(03). procedure division. move "Micro Focus" to ws-name inspect ws-name tallying ws-count for characters
Problem: Error message; "Failed to set up Integrated Development Environment At least one Net Express option failed to install .please exit setup and start install again" Resolution: This can be caused by a problem with the 16-bit subsystem setup on the workstation To check if the 16-bit subsystem is setup properly; - Reboot your workstation to ensure that you are working in a clean environment. *** Please ensure that you are log on as a user that has administrator rights *** - Once the machine is rebooted, move your cursor on your taskbar, right click and bring up Task Manager. - Go to Start/Accessories/Command Prompt to start a Command Prompt. - type the following command; command.com, and press enter. - Under normal circumstances you should see a new process in your Task Manager called NTVDM.EXE - If you have a problem, you should see and error message usually something like; "WOW NTVDM illegal instruction m
Problem: How is a cross reference listing created using Net Express 4.0? Resolution: Use a "Cobol.dir" file (a text file consisting of compiler directives, one directive per line) with the following directives, to create a basic compiler listing file with Data Map and Cross Reference listings appended to the end of the source file listing. ....show-dir.......... - Shows the content of directives files in the source listing. ....setting"col3"..... - Includes a list of the directive settings, three directives per line in columns. ....confirm........... - Echos all subsequent directives to the screen. ....list().............. - Causes the listing file to be named "source-name.lst", where "source-name" ....................... - is the basename of the program being compiled. ....xref............... - Makes the Compiler produce a cross-reference listing. ....datamap......... - Causes the Compiler to output information o
Problem: You may have run the ADISCF function to configure ADIS for certain screen/keyboard behaviour on your Net Express development environment, but found that the same behavior is not reflected in your Application Server environment in production. Resolution: The file ADISCTRL in your \\Net Express\\Base\\Bin directory in development contains the ADIS settings. Copy this file to your production machine and copy into the \\Net Express\\Base\\Bin directory on that machine. Old KB# 6976
Problem: The toolbar no longer appears when I launch Net Express. Have opened and closed IDE multiple times and it won't be displayed. Doesn't appear to be minized anywhere. Resolution: From the IDE View -> Dockable Windows , check Toolbar and the Toolbar should now be displayed. Old KB# 6899
Problem: Can Net Express Application Server be run on a clustered server? Resolution: We are not aware of any issues with running Net Express Application Server in a clustered environment. The only thing to be aware of is licencing. As licencing is local to each machine, each PC in the cluster would have to have its own licence definition/database. Old KB# 6941
Problem: Two methods besides using LITLINK compiler directive and adding the correct MQMCB32.LIB or MQICCB32.LIB to the CBLLINK process. Add "call-convention 12" to your program and modify all the calls to MQ from " CALL 'MQ' " to "CALL MQCALL 'MQ'". This will require the correct MQMCB32.LIB or MQICCB32.LIB to be linked. This can only be uses as DLL or EXE not GNT or INT. Resolution: IDENTIFICATION DIVISION. PROGRAM-ID. 'MQODBCPUT' environment division. configuration section. special-names. call-convention 12 is MQCALL. PROCEDURE DIVISION. &
Problem: Error when registering a COM Server created using Interface Mapping Toolkit. File not found. Resolution: This error can occur as the COM DLL is dependant on the comservices.dll that resides in the base\\bin where you installed Net Express. If you add base\\bin to your path then the DLL will register correctly. Old KB# 6902
Problem: If you use charset"ebcdic" in a OpenESQL program that uses SQL Server you will get the following error when linking:- error : unresolved external symbol _OESQLEBC@12 Resolution: You need to link your EXE with OESQLEBC.OBJ that is supplied with Net Express Old KB# 6904
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.