Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
This article explains what to do if the error message "No license key detected" occurs. Problem: We are receiving the following error message: Error - no license key detected. Application Server requires a license in order to execute. Please refer to your application supplier. Resolution: When this error occurs check the tail of /var/mfaslmf/USERLOG to see the captured error message. One of the components on the line will be the value of COBDIR. For example: Thu Sep 8 21:28:14 PDT 2005:No license AS /usr/microfocus/cobol This is the setting of the user environment variable $COBDIR. Run $COBDIR/aslmf/apptrack and choose option 1 License List Example: 2006/02/10 10:52:30 Installed Application Server licenses: 00001 /usr/lib/cobol Version of Server Express 64-bit Edition License units: Unlimited CPUs: 001 Ensure the COBDIR in the USERLOG matches one of the directories listed in AppTrack. If there is no matching COBDIR, change the user profile to export the
This article explains that the license limit message is a UNIX operating system error. Problem: We are receiving a "License limit exceeded" error message when we logon to a Cobol application. User profiles start a Cobol application immediately upon logon and there seems to be a sufficient supply of correctly installed Application Server licenses, for example 50 licenses, but only a lower number of users, such as 10, are actually able to logon. There are no log entries in /var/mfaslmf/USERLOG which show failure to obtain a Micro Focus license. What is happening? Resolution: The error message is actually not the Micro Focus Application Server license limit message. The UNIX operating system license limit is what is being exceeded. Even non-Cobol users cannot log on. Most enterprise-scale UNIX systems are not license-limited, but it is possible. This problem was last observed on a SCO Openserver system, but it could occur on other plat
This article addresses the ASLM 2046 semaphore error message "rerun as root" on HP-UX. Problem: We have received the following error message on HP-UX: ASLM: Semaphore failure. Rerun as root ASLM: Errno 2046 Resolution: The error number indicates that this is a locking problem. /* System record lock table was full */ Try raising the system limit for the number of locks to resolve this problem. The parameter "nflocks" is the tunable which controls the maximum number of file locks. Raise the system limit on this parameter. Sizing the system record lock table limit (nflocks) depends upon the workload type in the user's environment. The number of record locks the system requires is highly dependent on the activity in the system at any point in time. Monitor this over a period that would be using the most locks and then set nflocks appropriately. The error occurs when other activities in the system causes
This article provides a solution for several problems that can prevent AcuServer from starting. Problem: When starting AcuServer, it appears to start successfully (see output below), but it will fail on either a –info test or if a program tries to access it. [root@oprtest etc]# ./acuserver -start acushare: opening '/dev/console' for error outputacushare: installation complete! acushare: already running. AcuServer started [root@oprtest etc]# cd ../bin [root@oprtest bin]# ./acuserve -info AcuServer is not running on: sparky [root@oprtest bin]# ./acushare -info acushare: already running. Resolution: If a machine has multiple network cards or if themachine name is not unique on the network, the following configurationvariables must be set in the a_srvcfg:# For servers with multiple Network InterfaceCards, this variable will# determine which address to use when listeningfor connections. The# default value is blank, which will use thefirst address found.#SERVER_IP# If you have
On SCO UnixWare 7.1.4 the call to C$JAVA fails with this error, seen in the runtime trace: Java dynamic init failed. Problem: The ACUCOBOL-GT application calls Java programs via the C$JAVA library routine. On Windows and Linux platforms there is no error when running the application. However, when running the same application with the same configuration on SCO UnixWare 7.1.4, the call to C$JAVA fails with the error: Java dynamic init failed. Resolution: On SCO UnixWare 7.1.4 (and possibly some other platforms) there are additional steps and configurations necessary to enable the C$JAVA library routine to function properly. Here's what must be done: In the ACUCOBOL-GT 8.1.0 lib directory copy "Makefile" as "Makefile-java". Modify Makefile-java as follows: Locate the two Java lines, uncomment them, and set them like this: JAVA_HOME = path to main java directory]JAVA_LINK_FLAGS = -L $(JAVA_HOME)path to directory containing lib
This article explains why a runtime error occurs after a program successfully compiles. Problem: The program (pgmfind.cbl) has compiled successfully, but is giving run time error as follows. Why is this? Execution error: file '/export/home/S127059/Pgmfind.int' error code: 164, pc=C7, call=1, seg=0 164 Run-Time subprogram not found (in CBL_LOCATE_FILE) Resolution: The problem with the routine is because a bad parameter is passed in on user-mode. Without MF"10" user-mode is initialized to x"20" (i.e. space) but with the directive it is x "00" and hence works. Try changing it to: 1 user-mode pic x comp-x VALUE 0. Old KB# 14163
Read-only entry fields no longer change background/foreground colors with 8.1.0. They are shown only in gray. Problem: Read-only Entry Fields used to allow their foreground or background colors to be modified. The Runtime version 8.1.0 stops this behavior, and leaves the read-only field gray. Resolution: This change was made to follow Windows standards and was implemented with ECN-3699 released in 8.1.0. You can turn this behavior off so that your applications will not be affected by this change. Set the following configuration variable in cblconfi:ECN-3699 0 The value "0" turns the ECN off, value "1" activates the ECN and entry-fields remain gray. This configuration variable has been introduced in ECN-3848, available in the future release of ACUCOBOL-GT 9.0. Incident Number: 2131301 Date: Name: Description of change: Date: Name: Description of change: Old KB# 14120
This article addresses two runtime tunables with default values. Problem: Can you explain the default behaviour of the runtime system (how it finds objects to run) and whether the behavior could be modified? Resolution: There are two runtime tunables that can affect this, both which have default values. The tunable program_search_order changes the order of locations in which the runtime system searches for program files. It can have the value 1 (the default), 2, 3 or 4. The values mean: 1 Uses the following search sequence: The runtime system is checked to see if the program is loaded or statically linked. If it is, the search ends. If the COBPATH environment variable is set, the paths specified are searched in order. Otherwise, the current directory is searched. The path in which the calling program was loaded is searched. If the COBDIR environment variable is set, the $COBDIR/dynload path specified is searched. Otherwise, /usr/lpp/cobol/dynload (on AI
Attempting to rebuild a Vision file with vutil32 results in the error "invalid function parameter". Problem: Attempting to rebuild a corrupted Vision file using vutil32 -r filename gives the following error message: "invalid function parameter". What does this mean? How can the file be rebuilt? Resolution: This message is seen when the file is broken in a way that causes the rebuild to fail. The file may be broken in a way that it will not be possible to recover any records at all. However there are a couple of things to try. Specify a key to rebuild on:vutil32 -rebuild -k 0 filename for the primary key. If that fails try: -k 1 for the first alternate key (if there is one), and so on for each alternate key. If all of those fail it may be possible to programmatically recover the records. Set the Runtime configuration ERRORS_OK to "ON" which should allow the OPEN of the corrupted file to succeed. Then START at the begi
This article describes how to resolve error ld: 0711-596 SEVERE ERROR. Problem: Creating an executable from a mixture of COBOL source and pre-compiled C objects results in an error "ld: 0711-596 SEVERE ERROR." A command line example would look like this:cob -x myprog.cbl cprog.o Error message: ld: 0711-596 SEVERE ERROR: Object cprog.o An RLD for section 2 (.data) refers to symbol 22, but the storage class of the symbol is not C_EXT or C_HIDEXT. Resolution: The problem is with the C object file. In this case, the cause is a corruption in the object file, possibly from FTP-ing it between systems in ASCII rather than BINARY mode. Incident Number: 2262147 Old KB# 14177
This article explains how to resolve an execution error. Problem: We are receiving the following error messages: Execution error : file '/opt/microfocus/cobol/dynload64/animchr.lbr/dispatch.gnt error code: 115, pc=0, call=1, seg=0" 115 Unexpected signal (Signal 4)"AIX 5.3 and Server Express 4.0 SP2 Resolution: The problem is due to the following version of - 5.3.0.30bos.rte.libpthreads. IBM has created a fix for this problem which can be downloaded from: http://www-912.ibm.com/eserver/support/fixes/fixcentral/psearch. The reference is:APAR Number IY80008 However, the problem will soon be fixed in version 5.3.0.40 SP3 of bos.rte.libpthreads by applying IBM apar IY80008 Old KB# 14158
This article explains how to relink the RTS, or runtime system. Problem: Is it possible to rebuild the default runtime? When I used 'rebuild' or 'RTS' in the Product Documentation Index, I could not find the relevant topic. Resolution: The topic can be found in the User Guide Chapter 8 Linking to System Executables. This contains the following information, under the heading Creating an Executable RTS: "An executable RTS is a system executable file that requires the first entry point to be specified at run-time. In Object COBOL V4.1 and earlier, an executable RTS was required when you needed to link C and C programs into your application. However, C and C programs can now exist within callable shared objects; therefore it is no longer necessary to create an executable RTS for this. See the chapter Callable Shared Objects for more details. If required, you can create an executable RTS using cob. For example: cob -xo rts.new subprogs.c -e &
This article explains that an RTS error 173 occurs if the flag RTLD_GLOBAL of dlopen API is not used. Problem: When a program loads a shared library with dlopen API and later loads functions belonging to this library the following error occurs: RTS error 173 (Called program file not found in drive/directory) Why is this happening? Resolution: This RTS error 173 occurs if the flag RTLD_GLOBAL of dlopen API is not used. This RTS error 173 is normal in regards to the definition of RTLD_GLOBAL flag. RTLD_GLOBAL allows symbols in the module being loaded to be visible when resolving symbols used by other dlopen calls. These symbols will also be visible when the main application is opened with dlopen(NULL, mode). dlopen API: http://publib16.boulder.ibm.com/doc_link/en_US/a_doc_lib/libs/basetrf1/dlopen.htm The demonstration attached just reproduces the RTS 173 described here. In funct
This article helps understand the difference between two similar file status messages. Problem: How do you distinguish between the following similar file status messages? File status 37 is: An OPEN operation has been tried on a file which does not support the open mode specified in the OPEN statement. File status 9/37 is an RTS error 37: File Access Denied Resolution: File status 37 consists of the characters "3" and "7" (hexadecimal 3937). File status 9/37 is the characters "9" and "7" (hexadecimal 3937). Note: There is no file status "97" with which to confuse the latter. File status 37 is usually a programming error, such as OPEN EXTEND of an indexed file. File status 9/37 is usually a runtime error caused by a conflict between file and/or directory permissions and user access rights. Old KB# 14116
This article describes how to deal with a response key error: “Internal error, please restart machine and try again” Problem: When typing in the Response Key for a full license an error displays "Internal error, please restart machine again". The license is not accepted despite rebooting the machine and trying again. Resolution: This problem can be caused by a number of things. For example, a virus attack may penetrate a customer’s machine and corrupt the Net Express license which then needs to be reset. Follow this sequence of instructions and steps to resolve the error: Ensure that the Net Express installation has all the latest fixpacks/wrappacks installed and also the latest license protection fixpack (as of this article's publication date, the latest fix is clu12all.exe). Open a Net Express DOS command prompt and type the following command:protcfg /force_reset This brings up the window "MICRO FOCUS License Management System Configuration". select Net
This article explains which entry point names may cause error messages to occur. Problem: When compiling or running the following program with no special options, we receive the below error codes. IDENTIFICATION DIVISION.PROGRAM-ID. ROGERW.ENVIRONMENT DIVISION.DATA DIVISION.WORKING-STORAGE SECTION.01 ALLP PIC X.PROCEDURE DIVISION.CALL 'csort' USING ALLP.STOP RUN. error code: 161, pc=2B, call=1, seg=0 161 Illegal intermediate code Resolution: The problem is that csort is an entry point in the Micro Focus runtime library. There are a few more to be aware of as entry point names with the following prefixes: "_" "mF" "MF" "mf" "CBL" "cob" "CEE" "ADIS" "STRIPE" "fs" "FS" "CEE" "CCI" "oo" "STRIPE" "PARSE" "XML" "Invoke" "scum" (stands for Sooty Co
This article provides a resolution to Oracle error ORA-01801 (9D,1801) when running Acu4GL. Problem: This problem appears upon upgrading from runtime/Acu4GL Version 6.1 to Versions 7.x and 8.x. With Acu4GL Version 6.1, empty dates were converted in Oracle with a value of 00-DECEMBER-00. Although this behavior was fixed in release 6.2, it’s possible that old values are still stored in Oracle tables, so when runtime/Acu4GL Version 7.x or 8.x tries to read these date fields, an Oracle error ORA-01801 appears. ORA-01801 means that the date format is too long for the internal buffer. Resolution: One solution is to alter the Oracle session, calling the Acu tool sql.acu before opening an Oracle table, as shown here:CALL "sql.acu" USING "ALTER SESSION SET NLS_LANGUAGE='AMERICAN'". CALL "sql.acu" USING "ALTER SESSION SET NLS_TERRITORY='AMERICA'". OPEN INPUT table-name However, this method makes fields "read only." If you tr
This article describes getting a UNC path from a mapped network share's drive letter. Problem: You need to get a UNC path from a mapped network share's drive letter. Resolution: Use the Microsoft API WNetGetConnection. This function retrieves the remote name of the network resource associated with a local name. You can obtain this API from here: http://msdn.microsoft.com/en-us/library/aa922031.aspx Example (code is also provided as an attachment to this article) COPY "windows.cpy". identification division. SPECIAL-NAMES. call-convention 74 is STDCALL call-convention 66 is cc66. working-storage section. 78 SZ value 25. 01 lpLocalName pic x(5). 01 lpRemoteName pic x(SZ). 01 lpnLength DWORD value sz. 01 proc-pointer procedure-pointer value NULL. 78 MPRdll value "MPR.dll". 01 retDWORD DWORD. *> DWORD = pic 9(9) comp-5 proced
This article describes how to use a different path name (file) with a copied table. Problem: There is a facility to create a copy of a table; however, the underlying data file (path name) is shared between the two tables. So changing the path name for the copied table also changes the path name for the original table. More often than not this is not the desired setup. Resolution: Open the copied table and click Use the Edit Connections. Highlight the table name and click Delete Table Connection. Select the table definition (even if it's highlighted select it again) and click the Add Table Connection. You will be presented with the Add Table Connection dialog box; set the Path Name accordingly and click Add Connection. Click Save Changes. The copied table now uses the path name (data file) set above without changing the path name in the original table. Old KB# 14179
This article better explains the License List (menu pick #1) in AppTrack. Problem: The License List (menu pick #1) in AppTrack is informaton-rich, but can be confusing. Can you please explain? Resolution: Below is an annotated sample display with notes of explanation. 2006/08/13 09:54:52 Installed Application Server licenses: ---------------------------------------------------------- 00001 /product/default Note: This is an Application Server license (CPU license, unlimited user count) tied to the product in /product/default. The latter is the COBDIR value when the license was installed via AppTrack. Version ___ of Server Express 32-bit ES MTO Note: The version is blank because Server Express licenses are not tied to a particular version. For example, when a product is updated from 2.2 to 4.0SP2, the existing license is valid and therefore will not be reissued or supplied with the updated product. License users: Unlimited CPUs: 100 Duration: U
This article explains that corrupted shared memory segments may cause error A147. Problem: Why are the TXSeries transactions abending with error code A147? Message "/var/mfaslmf/nolicense [24] : date : not found. Resolution: When checking the console.msg created by TXseries region, it showed that some shared memory segments were corrupted: *** [tofas8]/var/cics_regions/PL4LOT2> cat con*msg ASLM: shm (pvc) attach fail ASLM: A shared memory area used by Apptrack licensing has been corrupted or deleted, and your system will need to be rebooted before this application can run. *** After rebooting, the error will disappear. Old KB# 14164
This article describes what to do if you get a syntax error when executing a query containing a CASE expression. Problem: Executing a query containing a CASE expression with AcuXDBC Version 8.0.0 results in a syntax error. Does AcuXDBC support CASE? Resolution: AcuXDBC Version 8.1 added support for CASE. For versions prior to 8.1, you may use DECODE to obtain the same results. For example, the following two queries are equivalent: select patient_name, decode (animal_type, 'Cat', 'MEOW', 'Dog', 'WOOF', 'Bird', 'TWEET', 'whatever') as SOUND from pets; select patient_name, case animal_type when 'Cat' then 'MEOW' when 'Dog' then 'WOOF' when 'Bird' then 'TWEET' else 'whatever' end as SOUND from pets; With Version 8.1.0, executing either query against the sample database (created by demo.bat) will return: PATIENT_NAME SO
This article describes how to use the ACUCOBOL-GT built-in Profiler to identify processing times of specific program paragraphs so that you can determine if code changes would improve performance in your batch applications. Problem: You have a batch application that currently takes a certain amount of time to complete. You want to determine if there are any coding changes you could make that would significantly reduce the program's processing time. Resolution: Use the Profiler to create a report that shows the processing time being spent on each paragraph in your program. Examine those paragraphs where the most time is spent to determine if coding changes could reduce processing times. The Profiler is available in version 7.0.0 or higher of the ACUCOBOL-GT runtime. To use the Profiler, follow these simple steps: Compile programs with debugging symbols. UNIX Example Windows Example ccbl -gy test.cbl ccbl32 -gy test
This error occurs when trying to run a compiled program Problem: When trying to run a compiled program, we are receiving this error: 187 Run-time system not found on $COBDIR path (Fatal) Resolution: This error occurs because the environment is not set up properly. When installing the product, ensure that the environment is set correctly to point to the product and its drivers and, where appropriate, set other environment variables as follows: On IBM® RS/6000® and Power PC systems running AIX®: COBDIR=/opt/microfocus/cobol export COBDIR PATH=$COBDIR/bin:$PATH export PATH LIBPATH=/usr/lib:$COBDIR/lib:$LIBPATH export LIBPATH On HP® 9000 Series running HP-UX®: COBDIR=/opt/microfocus/cobol export COBDIR PATH=$COBDIR/bin:$PATH export PATH SHLIB_PATH=$COBDIR/lib:$SHLIB_PATH export SHLIB_PATH LD_LIBRARY_PATH=$COBDIR/lib:$LD_LIBRARY_PATH export LD_LIBRARY_PATH On all other systems: COBDIR=/opt/microfoc
This article addresses the possible ASLMF errors encountered with HP-UX 11.11/i operating system. Problem: Hewlett-Packard has introduced some new twists on shared memory usage with the introduction of the HP-UX 11.11/i operating system. Some of these HP enhancements required similar changes in Micro Focus Application Server runtime licensing, as well as the runtime licensing for Server Express Developer. This article will cover these changes. Resolution: As more HP customers migrate their COBOL applications to HP-UX 11.11/i from older HP operating systems, which are no longer supported, Micro Focus SupportLine has recorded more cases of ASLMF memory failures. Here are two that are particular to this environment and are easily resolved: ASLM 1025 Due to misuse reboot is required This error may not be solely caused by the change to HP-UX 11.11/i for shared memory windows but the problem persists in all Server Express 2.0.10, 2.0.11, 2
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.