Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
Problem: What RPM packages need to be installed on Linux prior to installing Micro Focus Server Express? The following error is returned after running $COBDIR/bin/cobsje unable to load libcobjvm_sun_150 If libcobjvm_sun_150 is on shared library PATH, then ensure 'libjava' and 'java' are found on the PATH/Shared Library PATH. Resolution: It may be the library libjava or java is causing the problems, or it could be another shared object entirely. The resolution is to install the missing RPM for C runtime (libstdc ), which is a pre-requisite package that needs to be installed in order to run the C parts of the Micro Focus Server Express - which includes running the cobsje script.) libstdc -3.4.6-9.i386.rpm and libstdc -3.4.6-9.x86_64.rpm. . Old KB# 3724
Problem: Application developers may need a special file handler which works with a particular type of file or device, but must keep all normal COBOL file handling functionality for other file types. Resolution: Attached is an example of a file handler written in COBOL which deals with Comma Separated Value (CSV) files. CSV is a common data export format for Windows programs. File organization is line sequential, (records delimited by platform-dependent newline character, X'0D0A' on Windows, X'0A' on Unix.) The file handler in this example expects the file name to end with ".csv" to distinguish it from other line sequential files. The CSV handler monitors all COBOL file activity while it passes to and from the normal file handler, but does nothing unless all of the following conditions are met: Organization is line sequential Current operation on the file is "read". File name ends with ".csv" The requested read operation is
Problem: I test my application with Server Express . Now it is not possible to open a file in a module of the application when this file is open in an other module . Resolution: With Server Express, by default , if the file is open with lock mode exclusive in a module , no other module can open this file, even if this other module is in the same run unit . To give permission for opening by an other module in a same run unit , it is necessary to modify the value of the RUNITLOCKDETECT option of the file handler configuration file . An exemple is : echo '[XFH-DEFAUKT]' > my.cfg echo 'RUNITLOCKDETECT=OFF' >> my.cfg EXTFH=./my.cfg export EXTFH cobrun prog Old KB# 3716
Problem: Does ELink work with MDAC 2.5 on Windows 2000? Resolution: EnterpriseLink 3.1.2, 4.0.3 and 5.0.1 (the currently supported versions of each release) are supported on the current versions of each Microsoft operating system. This means Microsoft Windows NT 4.0, Service Pack 6a (which comes with MDAC 2.1, Service Pack 2), Microsoft 2000 Server, Service Pack 3 (which comes with MDAC 2.5, Service Pack 2) and Microsoft XP Professional (which comes with MDAC 2.7). Any OS version may be upgraded to the latest MDAC, which is MDAC 2.7 SP2 Refresh. We do not specifically test Microsoft software when testing EnterpriseLink. If an incompatibility is found, we will note it in the Micro Focus Support information systems. We have not discovered any incompatiblity since Micrsoft Windows NT 4.0 Service Pack 3. For a complete manifest of Microsoft MDAC versions, links to download areas and on what systems they ship, look at:
Problem: What does the EL00020 error code mean? Resolution: This error indicates that EnterpriseLink Server received an incorrect 3270 command from the host. This means that the mainframe host sent an incorrect command (write, write-erase, read, read-buffer, query-reply being the acceptable codes). Old KB# 3767#EnterpriseLink#Rumba
Problem: This error occurs because the the program has not been compiled properly for using the profiler. The cobprof command cannot be used until the the program has been compiled with the PROFILE compiler directive. Resolution: Step 1 the program must be compiled for debugging adding the -a flag for .int or -g flag for .gnt, .o, shared object or executable also specify the compiler directive -C PROFILE. Example: cob -xg -C PROFILE pgmname.cbl Step 2 is to execute the program ./pgmname this will create the pgmname.ipf file. Step 3 is run the profiler reports Example: cobprof pgmname LIST This will display the profile information on the screen. If you do not set the LIST Profiler directive, then by default the output is produced in a file called pgmname.prf. Documentation on using the COBOL Profiler can be found in the Server Express Utilities G
Problem: How to calculate a random number in COBOL? Resolution: The following example shows one method of generating a "random" number. The number generated is not a "true" random number but should suffice for most purposes. The program is written as a sub-routine that can be called from another COBOL program. To simply pass the maximum value for the range of random numbers (e.g. 100 for a number between 1 and 100) and a variable to pass the result back in. If it is the first time the program has been called then the random seed is set based on the time to reduce the chance of a duplicate string on random numbers. working-storage section. 01 ws-first-time pic 9(1) value 0. 01 ws-rnd-seed-
Problem: An XML instance document exists on disk. In COBOL, it is declared as "organization is xml". When a customer tries to open it for input and read it record by record, the READ NEXT statement does not behave as expected. Resolution: The READ statement for XML instance documents can be used two ways: 1) A single READ without the NEXT clause reads the entire XML instance document (i.e. the whole input file) into memory, all at once. 2) A READ with the NEXT clause assumes that you have already read in the whole document using a single READ without NEXT as above, and have already established a key-of-reference using a START statement. READ NEXT examines the in-memory image of the XML document, and returns the next record in the key-of-reference. READ NEXT does not actually perform any disk I/O. Consider the demo program "customerdbxml.cbl". This is the last program in the XML tuto
Problem: Compiling a SQL application as follows : cob -V myapp.cbl -C anim "P(COBSQL) MAKESYN CSQLT=ORACLE DEB end-c DECLARE_SECTION=YES COMP5=NO VARCHAR=YES p(cp) endp endp" the following error is returned: 28 EXEC SQL INCLUDE SQLCA END-EXEC. * 149-S******** ** No SQL directives have been set Resolution: There are two issues here: 1. The Cobsql precompiler ships in lower case on UNIX. 2. Cob will manipulate options delimited with "=" characters, as documented within the Server Express User's Guide, Chapter 9, within the section entitled "Specifying cob Options". To resolve these issues : 1. Specify Cobsql in lower case 2. Delimit the Cobsql and Pro*COBOL options with ==, rather than = Therefore, the correct command line to use is : cob -V myapp.cbl -C anim "P(cobsql) MAKESYN CSQLT==ORACLE DEB end-c DECLARE_SECTION==YES COMP5=
Created On: 02 March 2008 Problem: Is OpenESQL supported on SCO UnixWare? Resolution: SCO UnixWare is not a strategic platform for RDBMS nor ODBC driver vendors. Oracle's final release on this platform was 8.1.7, which is now unsupported. IBM have never released DB2 on this platform. Neither iWay nor DataDirect have ODBC drivers available for this platform, and there are no plans to produce them. These are the ODBC drivers Micro Focus use for testing. Given the lack of support from major database vendors Micro Focus has no plans to add Micro Focus ODBC technology to this platform. However, Server Express and Visual COBOL for Linux Intel provide OpenESQL support. Old KB# 3706
Problem: When trying to use XML it produces the following error: Load error : file 'MFCHK_XMLGENERATE' error code: 173, pc=1F9, call=1, seg=0 173 Called program file not found in drive/directory Resolution: The problem is that the product used is not the supporting xml generate. You can easily check this out if the following xml modules exist or not: XMLCHK XMLCHKE XMLCHKP XMLCHKEP If not then an upgrade is necessary. It is supported as of Server Express 4.0 SP3. Old KB# 3696
Problem: In KB 19658 the following line: "Micro Focus Server Express v4.0 SP1and above supports UTF-8 in a PIC X field. You do not have to do anything special. That is, you do not have to specify any directives. The character is held in one byte." appears to be incorrect when using Oracle. UTF-8 database name conatins a letter that is not ANSI. The letter is like an uppercase O with a forward slash on top of it. The COBOL program gives a "?" for that character. Is there any setting that will proper translate this character? Resolution: Please refer to Oracle's Pro*COBOL Programmer's Guide and also their Globalization Support Guide or consult with Oracle. Environment variables NLS_LANG and LANG should be specified. NLS_LANG=AMERICAN_AMERICA.WE8MSWIN1252 LANG=en_US.UTF-8 Note: The data is stored as UTF-8, so not all the characters are displayable (some are, some are not) if COBOL receives the characters
Problem: The Autofix facility enables you to automatically correct your common typing mistakes. By specifying a list of words that you sometimes mistype, and the correct spellings for them, you can type the misspelled versions and have them automatically corrected. Not only is this tool good for catching your common typos, but you can use it to quickly type out long variable names by assigning your own custom abbreviations. For instance: WS-MAINMODULE-VARIABLES-PROGRAMX-COUNTER-3 Could be abbreviated: COUNTER3 or 'long-data-item-name-12' could be abbreviated 'L12' Resolution: You can find the Autofix options by going to Options>Edit>Autofix tab. You will need to add some entries and check the box 'Monitor my typing' to get started. Now whenever you type something that is in the "If I type this" column, it will automatically be converted to the text in the "Change it to this" column. Remember that this utility is case-sensitive.Ol
Problem: Can a COBOL Application create PostScript files? Resolution: The Server Express COBOL system doesn't contain any PostScript features or functionality however it is possible to generate a PostScript file from within a COBOL application by using Server Express' ability to pipe output to external commands/applications. Create a SELECT statement like the following SELECT OUTPUTFILE ASSIGN TO "> enscript -r -Picl2 -o out.ps" Organization LINE SEQUENTIAL. Then create an FD for the file: FD OUTPUTFILE. 01 OUT-RECORD PIC X(256). In the procedure division: OPEN OUTPUT OUTPUTFILE MOVE "SOME TEXT" to OUT-RECORD WRITE OUT-RECORD . . . CLOSE OUTPUTFILE. . . . Ths should produce a file named out.ps that us a PostScript file suitable for printing or use with PostScript friendly applications. Note: If the enscript command is not available , there are several suitable altern
Problem: When using the Inteface Mapping toolkit to expose a COBOL application to Java you can specify a package name for the generated Java. If you use native in the package name then you get an error in the generated Java. For example using "com.microfocus.test.native" would result in an error in the Java. Resolution: This is a restriction of Java. "native" is a keyword in Java and cannot be used in a package name. You need to avoid native in the Java package name. Old KB# 3159
Problem: WrapPack 8 (ALL08N40.EXE) fails with the following error: "Net Express with .NET will not be installed because: Microsoft Visual Studio .NET is not installed" Resolution: The error above indicates that the WrapPack detected Net Express with .NET, and it cannot install the newer version because Microsoft Visual Studio .NET is not installed. The resolution is then to uninstall Net Express with .NET from Add or Remove Programs and re-apply the WrapPack. How could Net Express with .NET be installed without Microsoft Visual Studio .NET? This can be done by having both Net Express with .NET and Microsoft Visual Studio .NET at one point and then uninstalling Microsoft Visual Studio .NET only. The uninstall of the Microsoft product does not automatically remove Net Express with .NET.Old KB# 3000
Problem: cob -iav INTERACT.cbl which creates .idy and .int in the current directory Move source to /home/mysource anim INTERACT Following error receicved Animate INTERACT.int Level=01 Speed=5 Ins Caps Num Scroll F1=help FILE BELOW NOT FOUND - Stop run Retry Alter path Zoom INTERACT.cbl Is there something other than COBDATA that must be set for animator to find the source? Resolution: Export COBCPY=/home/mysource COBCPY Specifies the directory or directories that the Compiler and Animator searches COBDATA Specifies the directory or directories that the run-time system is to search Old KB# 3141
Problem: Trying to connect from Vista 64 bit machine with AcuXDBC client to a remote server where AcuXDBC Server is running, "Connection error SQL State 28000, ODBC driver errno 10061" error message is received. Resolution: This error message typically means there is a discrepancy between the port number specified in the DSN on the client machine and the actual port where AcuXDBC Server is running on the server machine. Changing the port number in the DSN to match the one AcuXDBC Server is running on resolves this problem.Old KB# 3156
Problem: A circumstance may occur when COBOL programs can be invoked successfully from the command line with no error, but cannot be invoked via a script. The following error might appear when the script is run: "cobol version number invalid, call tech support" Resolution: In such a circumstance, check that the script is setting environment variables correctly. This error is known to occur when the COBDIR, PATH, LD_LIBRARY_PATH, SHLIB_PATH, or LIBPATH environment variables are set to conflicting or incorrect values. See Knowledgebase articles 21774 and 18615 for information about setting these environment variables. In some circumstances, COBDIR might be set correctly, but the library environment variable (example, LD_LIBRARY_PATH) might be set to include the "lib" subdirectory of an entirely different COBDIR. This will cause the "cobol version number invalid" error. In oth
Problem: After applying Fixpack 10 for Server Express v5.0 WP4 on AIX (contained in the file SXFixpack50.04_10_dev.tar.encr), then dynamic debugging of Enterprise Server might begin to fail. The following error might appear in response to "cobesdebug type=cics": "the specified region is not enabled for debugging" despite the fact that the appropriate "enable debugging" box is checked in the ES admin screens. Also, the error "CASSI1807I Dynamic debug initialisation failed" might appear in the ES Console log. Such problems are often solved by following the advice in Knowledgebase article 25576, but in some cases the problem might persist even after KB 25576 is considered and acted upon. Resolution: This is a known problem with Fixpack 10 for SX v5.0 WP4 for AIX. The problem has been fixed in the Server Express v5.1 release. The solution is to upgrade to SX v5.1. Old KB#
Problem: Can Net Express run on a 64-bit operating system? Can 32-bit applications be built and still run on a 64-bit operating system? Resolution: When Net Express is installed, it automatically detects the bittage of the operating system. For instance: if the operating system is 64-bit, the 64-bit version of Net Express will be automatically selected and installed. There is no prompt or notification of this event. By default, 64-bit Net Express will still produce 32-bit run-times. If 64-bit run-times are desired, this setting can be changed in the Project Properties. If Net Express is installed on a 32-bit operating system, the applications that get built can still run on a 64-bit operating system. Windows has always come with a component called WOW (Windows on Windows) emulation. It was originally used to allow 16-bit programs to run on 32-bit versions of Windows. WOW64 allows 32-bit applications to run on 64-bit Windows operating systems. This means that any
Problem: The AcuCOBOL-GT program is executed by an MPE batch job. The program ACCEPTs input from the batch job like this: !JOB MYPROG,MGR.ACUCOBOL;OUTCLASS=LP,2 !MYPROG.PUB.ACUCOBOL data-to-be-accepted !EOJ But when executed the program receives no data. The program is compiled with -Cp and -Ca. Resolution: The Runtime configuration variable ACCEPT_AUTO must be set to 1 either in the Runtime configuration file or in the environment. This applies to AcuCOBOL-GT 7.3.0, or earlier versions which have been patched with ECNs 3212 and 3309. Old KB# 3182
Problem: During the installation of a version 8.0.1 patch file (8.0.1.1012.msp) a message box was displayed with the following message: Error: 1334: The file 'ccbldll.dll' cannot be installed because the file cannot be found in cabinet file 'PCW_CAT_FAMILY00'. This could indicate a network error, an error reading from the CD-ROM, or a problem with this package. Resolution: The patch file that was being installed was cummulative and already contained in a prior patch that had already been applied to the target machine. Using Windows "Add or Remove Programs" (check "Show updates") dialog box ("Installed Updates" of "Program and Features" on Windows Vista) to uninstall the previously applied patch (version 8.0.1.1001) allowed the new patch file (version 8.0.1.1012) to be installed on the target machine. Old KB# 3178
Problem: Often, it is necessary to get a file trace of a lengthy program, and the file can get rather large. Usually, the size of the trace file can be controlled by using the configuration variable MAX_ERROR_LINES. Sometimes, however, a full trace file is needed. Here is a way to get a compressed file trace on UNIX by using Gzip. Resolution: On the run command add the -g and then the error filename with the extentsion: runcbl -g -lex myerror.gz myprogram.acu To view the fiile use the gunzip command: gunzip myerr.gz Old KB# 3186
Problem: After creating a grid by using the Drag-and-Drop interface the the (Name) property of this grid could not be changed. Resolution: This behavior is fixed in version 7.2.1 and higher by ECN-WB849. Old KB# 3162
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.