Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
This article explains the correct Language C to resolve an error 114 message. Problem: What is the message Error 114 encountered during finalization when the main module is writen in Language C and calls COBOL modules? Resolution:One reason this error is displayed is because cobinit function is used and cobtidy() is not used. The Language C must be as follows: main( int argc , char *argv[]) { .. cobinit(); ........... cobtidy(); } Old KB# 14057
This article explains why the 164 Run-Time subprogram not found error occurred. Problem: Why are we encountering the following runtime error? Load error : file 'cobmffh64.so.2' error code: 164, pc=0, call=1, seg=0 164 Run-Time subprogram not found Resolution: This error occurred because the UNIX/Linux command sudo was used to submit the programs. sudo (super user do) is a program that allows users to run programs with the security privileges of another user (normally the superuser). Each command is logged. It also initializes the environment, leaving TERM unchanged, setting HOME, SHELL, USER, LOGNAME, and PATH, and unsetting all other environment variables. The LD_LIBRARY_PATH must be set in order for the Run-Time system to be able to find the subprogram file cobmffh64.so.2. The COBOL programs are called from a job submission system using wrapper scripts. The error is resolved by exporting LD_LIBRARY_PATH=$COBDIR/lib in the script. Old KB# 1
This article is specific to ACUCOBOL-GT and describes how to write a menu handling routine that creates menus dynamically by reading a file. Problem: You need to write menus that will change (dynamic menus) if you change the content of a file, without recompiling the program. Resolution: Attached to this KB article is an AcuBench demo project that contains sample code for creating dynamic menus, and a sample file for testing. The important parts of the code are described below. Read a file and create the level and the branches needed for your menu. The demo project uses the following code to accomplish this: Screen1-Aft-Initdata. open input filemenu/* Create a new menu */ call "w$menu" using wmenu-new giving menu-handle if menu-handle = zero go to acu-menudina-mn-1-exit end-if move low-values to filemenu-exception start filemenu key is greater than filemenu-exception
This article explains what to do if a license database cannot be created and how to retrieve the correct installation with Net Express 4.0 Application Server. Problem: When removing Net Express 4.0 Application Server, and performing a manual clean of the Windows registry and installation folder, we reinstalled it onto the same server machine without typing in the serial number and license key while running the install. APPTRACK was used to complete the task, but we are receiving the message License database cannot be created. We checked that the license key fits the product. How do we get a correct installation? Check if the environment variable ASLMFNET was set erroneously, because it is intended to use ASLMFNET for local machines only, not for a networking license database on a server machine itself. Set the ASLMFNET environment variable to point to the location of the network license database, as follows: set ASLMFNET=r:\\license-db-dir Where: r: is the net
This article describes the differences between the Model 1 and Model 2 UNIX runtime licenses. Problem: Historically all UNIX runtime licences were Model 1, however from Server Express 4.0 ServicePack 1 and onwards, Model 2 licenses were issued by default to new Micro Focus customers. What is the difference between a Model 1 and a Model 2 license? Resolution: For the purposes of this article, please note that from Server Express 5.0 onwards the runtime product changed its name from 'Application Server for Server Express' to 'Server for Server Express'. Model 1 Licenses Model 1 licenses are the old form of licenses (pre Server Express 5.0). Although Model 1 licenses are no longer supplied, if you have Model 1 licenses from an earlier product, you can continue to use them with Micro Focus Server. There are three types of Model 1 licenses: Standard License - this is the normal Application Server license required to run an application. It includes the five free Applicati
This article describes how to work around the fact that Microsoft Windows doesn't allow more than 68 runtime sessions at a time. Problem: acurcl appears to "hang" when users attempt to start more than 68 runtime processes at the same time using Micro Focus Thin Client version 7.2.2 on Windows 2000. Resolution: Investigation revealed that this problem is the result of a Microsoft Windows limitation. A Microsoft Knowledge Base article, #814802, describes this issue. The article provides information about modifying the registry to allow more runtimes to run. However, this modification may adversely affect other services running on a server, so we strongly suggest that users read and understand that article before attempting to modify the registry entry. The registry entry to modify is HKEY_LOCAL_MACHINE\\System\\CurrentControlSet\\Control\\Session Manager\\SubSystems and the value to modify is "Windows". The default value
This article explains that in SQL, character literals should be enclosed with single quotes, rather than double quotes. Problem: This SQL statement returned an ORA-00904 error (invalid column name): EXEC SQL SELECT COL1 INTO :HOSTVAR FROM TABLENAME WHERE COL2 = "VALUE" END-EXEC Resolution: In SQL, character literals should be enclosed within single quotes, rather than double quotes. The above statement should therefore be changed to read: EXEC SQL SELECT COL1 INTO :HOSTVAR FROM TABLENAME WHERE COL2 = 'VALUE' END-EXEC Old KB# 14045
This article explains that the RTS 173 on _mF7801 error is due a change in the control routine support library. Problem: After an upgrade from Application Server for Server Express 2.0.11 to Micro Focus Server 5.0, generated code gives the following error message: Load error : file '_mF7801' error code: 173, pc=0, call=1, seg=0 173 Called program file not found in drive/directory Resolution: The RTS173 on _mF7801 is due a change in the control routine support library between two versions of Server Express. GNT code created with Server Express 2.0.11 or earlier will not work with Server 5.0. The solution is to either deploy intermediate code (INT) created with the older version of Server Express or upgrade Server Express and regenerate the GNT code using the new version. Old KB# 14038
This article describes how to set up the ACUCOBOL-GT configuration file so that an application can use the F10 key on Windows. Problem: You are working on a graphical application on Windows and you want to be able to use the F10 key in your program. Resolution: Set the F10_IS_MENU runtime configuration variable to "0". By default F10_IS_MENU is set to "1", which does not allow you to use it inside your program. When set to "0" you will be able to recover the control of the key in your program. Incident Number: 2180697 Old KB# 14106
Environment Server ExpressServer for COBOLApplication Server for ServerExpressApplication Server for NetExpress Situation When running ./lmfgetpv or ./mflmman the following message is displayed: [root@servername lmf]# ./mflmman MF-LMF:Tue Mar 15 15:56:17 2022: LMF Starting MF-LMF:Tue Mar 15 15:56:17 2022: Unable to open License Key database MF-LMF:Tue Mar 15 15:56:17 2022: LMF Closing Down [root@servername lmf]# Cause Corrupted license database. Resolution Log in as root and try the operation again.If it does not work, the license database will need to be reset.Development License DB:/lmfdbrecover located in opt/microfocus/mflmf.Re-start License Manager../mflmman  
This article explains the error message "LMF 010: Unable to contact License Manager". Problem: The message "LMF 010: Unable to contact License Manager" is returned when Server Express is unable to contact the License Manager. Then the License Management Facility terminates execution of the licensed product. Why is this error occurring? Resolution: Normally the License Manager runs continuously and does not require any manual intervention. It communicates through the console, reporting status and activity, and is a free-standing process which runs as a daemon. If for some reason this process terminates, you will encounter this particular error. To confirm that the License Manager is running: Log in as root. Go to the directory in which License Management Facility is installed (by default it /usr/lib/mflmf or /opt/lib/mflmf depending on the operating system. Enter the command: ./lmfgetpv In this scenario, the License Manager is probably not running (hence the error) so it is necess
This article explains what to do when invoking a series of Object COBOL classes is producing an apparent memory leak. Problem: We are running a mainline COBOL application which loops calling / invoking a series of Object COBOL classes is producing an apparent memory leak. What should we do? Resolution: The most common cause of memory management problems associated with classes is a failure to finalize objects before exiting the program. The cause of the performance problem is a memory leak, the amount of memory allocated to the running process grows continually and in small incements on every iteration of the processing loop. The memory leak is occuring because there is one (or more) object invoked that is not finalized or deleted. To test for this condition do the following: - Added the 'Behaviour class to the first class invoked i.e. Behavior is class "behavior" - Insert the following code j
This article addresses the use of "down-level licensing" for Micro Focus products, which is the practice of running applications compiled with earlier versions of software such as Net Express, on earlier versions of Application Server, but using a license for the current version of each. Problem: Does the Net Express 5.1 Application Server License support down-level licensing? For example, if a Net Express 5.1 Application Server (Server for COBOL 5.1) license is installed on a machine, is it possible to run applications compiled with Net Express 4.0 using the 4.0 Application Server running on the 5.1 Application Server License? Resolution: The Micro Focus support policy regarding the Development tool (Net Express), Application Server (Server for COBOL) and licensing is that all three must always be synchronized by release number; for example, Net Express 4.0 applications run on Application Server 4.0 with 4.0 licensing. Micro Focus does not support down
This article explains that unresolved references in the call subroutine may result in this error. Problem: Our application uses subroutines located in callable shared objects (.so) extension. An RTS 198 abend occurs when calling the subroutine. Why is this? Resolution: The most comon cause of this error is that there are unresolved references in the call subroutine. Compile the callable shared object using the -U option. Calls to genuine unresolved symbols will cause RTS 173 errors to be reported. Old KB# 14052
The AcuThin client must be installed on the Windows client PC, but it is not available on the installation CD. Problem: The UNIX server products were installed from an archive downloaded from production. To install the AcuThin client piece, you need access to the atcinst.exe file. This file should be located on your Micro Focus installation CD in the Redist directory; however the file is not there. Resolution: Download the attached atcinst.zip file, extract atcinst.exe, and execute it on your target client PC. This installs AcuThin Version 8.1.0. atcinst.exe Date: Click here to enter a date.Name: Description of change: Date: Click here to enter a date.Name: Description of change: Jean FarnsworthOld KB# 14096
This article explains how to identify installed licenses and serial numbers. Problem: I am trying to identify which licenses and serial numbers are installed. How can this be done? Resolution: To find the serial numbers and the license keys installed on a machine for Server Express Developer Licenses, take the following steps: Go to the installation location for the LMF License Manager. If the location is unknown it can be found using one of several methods. Execute the command $COBDIR/lmf/lmfgetpv and if the License Manager is running its location will be reported. From Server Express 4.0 ServicePack 2 and later, execute the command $COBDIR/bin/mflicense, which is a utility that allows you to use the LMF administration tools, assuming that you possess Super User privileges. Execute the command: find / -name mflmfdb\\* -print. The results of the find command should point to the proper location. To identify the Server Express Developer key
This article explains how to produce a core file for every error. Problem: Is it possible to produce a core file for every error? Resolution: With Server Express 4.0 ServicePack2 and Server Express 5.0, the core file can be created for every error. echo '123456 01 Z1 PIC 9(4).' > prog.cbl echo '123456 add 1 TO Z1.' >> prog.cbl cob prog.cbl echo 'set core_on_error=2' > my.cfg COBCONFIG=./my.cfg export COBCONFIG cobrun prog.int In this way a core file is created . Old KB# 14043
This article explains the Pipe Create Error and how to resolve it when starting License Manager. Problem: We are receiving the following error message when attempting to start the License Manager and we don't understand Pipe Create Error: Starting MFLM License Manager MF-LMF:Thu Aug 14 08:58:35 2008: LMF Starting MF-LMF:Thu Aug 14 08:58:35 2008: Pipe Create Error MF-LMF:Thu Aug 14 08:58:35 2008: ENOENT(2): No such file or directory MF-LMF:Thu Aug 14 08:58:35 2008: LMF Closing Down Resolution: License Manager uses named pipes as temporary files and creates them in the location defined by the UNIX operating system setting of P_tmpdir. This is typically /tmp. You might want to relocate the named pipes. When License Manager is launched it creates one long-lived named pipe, called LMF-common, which exists until License Manager is closed down. While it is running, it also creates a number of transient named pipes that exist only for a short time. You might wa
This article explains how to recover a corrupt aslmf database prior to Server Express 2.2 Service Pack. Problem: Prior to Server Express 2.2 Service Pack 2, the recovery utility aslmdbrecover was not available. How do you recover a corrupt aslmf database if you get the following message: Error Message: License Key database is corrupt The License Manager detected corruption in the license database. The license database may have been tampered with. Therefore, the License Management Facility terminated execution of the licensed product. Resolution: For Server Express 2.2 Service Pack2 onwards, you can use $COBDIR/aslmf/aslmfdbrecover. Refer to the Deployment License Management Guide, Chapter 2. Installing and Administering Micro Focus Server Licenses, Recovering from a Corrupt License Database. As aslmf uses cached data you need not stop anything. Remove or rename the /var/mfaslmf directory Go to $COBDIR su to root and run ./aslmf/aslmfinstall ( the tail end of th
This article explains an error that occurs on AIX systems, with Server Express running in 64-bit mode. Problem: When running a COBOL program compiled to .gnt or executable, the following error occurred on an AIX system, with Server Express running in 64-bit mode: Symptom: error 114 in module "mFFH" when running a COBOL program compiled to .gnt or executable. The error 114 occurred while running an end-user application program, but could be reproduced using nearly any COBOL program, including the demonstration program pi.cbl provided with Server Express, for example: mkdir /tmp/testcd $COBDIR/demo/debugcp pi.cbl /tmp/testcd /tmp/testcob -x pi.cbl./pi The symptom did not occur when running .int code. Also, it occurred only in 64-bit mode, not 32-bit mode. Note: The mode in which Server Express is currently operating can be revealed using the cobmode command. Additionally, when attempting to debug using Animator, or using system debuggers such as "
This article explains what to do if a License Key database is unusable due to copying, restoration or tampering. Problem: What do we do when getting a "License key database unusable" error while trying to fire up the License Manager? Does this message mean the license database has become corrupted for some reason, for example copying, restoration, or tampering? Resolution: Yes, this error will ocurr if there has been a problem with the database. To circumvent the problem, take the following steps: Change directory to */*/mflmf. Type the command ./lmfgetpv k to shut down the License Manager process. Remove the directory mflmf and its contents. Change directory to $COBDIR/lmf. At the DOS command prompt type ./lmfinstall. Change directory to */*/mflmf.. Type sh mflmcmd (prompt I (capital "i") in order to install). Insert the serial number and the license key. Type mflmman to restart the License Manager process. Type./lmfgetpv to ping the License Manager in order to ve
This article explains how to use shared objects on UNIX. Problem: I would like to know more about using shared objects on UNIX. Do you have any information toward this? Resolution: Callable shared objects (CSO), self-contained callable shared objects (scCSO), COBOL shared libraries, shared libraries are all examples of what UNIX thinks of as shared objects. There is no architectural difference between a shared object and shared library[1]. There are simply different conventions about their naming and use. Most third party code, for example Oracle, is supplied as one or more shared objects. Only one copy of the text (code) of a shared object is present in memory, no matter how many processes and executables reference it. This code sharing makes shared objects efficient and attractive. Shared objects save disc space, as there is only one copy of the code on disc. Shared objects also allow old programs to pick up fixes without the need for recompilation or relinking.
This article describes how to use F11 or F12 on a Windows application. Problem: You want to configure the runtime so you can recover the keystrokes F11 or F12 from your keyboard on your Windows graphical application. Resolution: Set the KEYSTROKE runtime variable in the configuration file to return the exception expected for those keys. This is done by adding the EXCEPTION keyword to this variable and setting its value. For example: KEYSTROKE EXCEPTION=11 U1KEYSTROKE EXCEPTION=12 U2 In this example, F11 returns exception value 11 and F12 returns exception value 12 when used. Your next step is to write the code to use those two values. The KEYSTROKE variable (including its keyword options) is described in detail in section 4.3.2.2 of your ACUCOBOL-GT User's Guide. Incident Number: 2180699 Old KB# 14104
This article explains what happens when COBDIR/aslmf/apptrack option 6 is entered. Problem:Using AppTrack to reinitialize the COBOL AppServer with option 6, are there some files being overwritten or created? If so, what file(s) get updated or created when COBDIR/aslmf/apptrack option 6 is entered? Resolution: No files are reinitialized by $COBDIR/aslmf/apptrack option 6. Instead, the shared memory segments that are used by AppTrack are reinitialized based on the database/var/mfaslmf/mfasdb To view the memory seqments used by AppTrack use 'ipcs -mob'. Look at the shared memory segments that are 6 bytes in size. These are aslmf segments (they will have segment keys commencing 0x741cc1... ) The NATTCH column shows how many processes are holding are holding aslmf licenses. Each attach represents one license unit. These segments are reinitialized automatically when you add or remove a license. Old KB# 14018#COBOL#ServerExpress#Licensing#netexpress
This article provides a resolution to the RTS 164 error. Problem: RTS 164 load error file cobdirect64.so.2 error code 164 pc=0 seg=0 cobdirect64.so.2 resides in $COBDIR/lib COBMODE=64 LD_LIBRARY_PATH and LD_LIBRARY_PATH_64 set to $COBDIR/lib Resolution: Unset LD_LIBRARY_PATH_64 Old KB# 14033
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.