Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
Created On: 25 February 2011 Problem: Inability to launch server application. Resolution: This error indicates a problem with the working directory on a UNIX server. The Change Directory command failed to execute. When the AcuRCL spawns a runtime, it changes to the directory specified as the working directory in the Alias entry. Ensure that the working directory exists that is specified for the Alias and that the correct permissions have been set. Old KB# 33535
Created On: 21 February 2011 Problem: AcuXDBC is successfully installed and a system DSN is created. The first attempt at connecting gives the following error message:[ODBC Driver] DLLLOAD: acuxdbc04, could not find module. Resolution: It is possible that a permissions issue us preventing finding the right AcuXDBC libraries. Add AcuXDBC installation path (i.e.: C:\\Program Files\\Micro Focus\\Acucbl900\\AcuGT\\bin) to the PATH environment variable to solve this problem. Incident #2502867 Old KB# 33409
Created On: 14 February 2011 Problem: What fixes are included in the InstantSQL v12.05 (Websync 1) Patch available on the Product Updates page of the SupportLine Web Portal? Resolution: The InstantSQL v12.05 (Websync 1) Patch specifically addresses RPI 1073475. The problem symptom was a crash that could happen almost anytime but usually happened when an InstantSQL statement specified a large number of parameters. Such statements are ones like the SQL BIND COLUMN or SQL BIND PARAMETER statements that bound a large number of columns or parameters. This patch is recommended for all users, whether or not, you are encountering the described behavior. Old KB# 33364
Created On: 15 February 2011 Problem: Say that XML GENERATE is being used to create XML for the following:01 XML-DATA. 03 XML-DATA-REC. 05 XML-DATA-DETAIL OCCURS 100. 07 XML-NUMBER PIC X(04). 07 XML-STRING PIC X(40).When only 3 rows are filled in the table and the following is used:XML GENERATE WS-XML-DATA FROM XML-DATACOUNT IN WS-XML-COUNTWITH XML-DECLARATIONYou will get the following result :0001TEST10002TEST20003TEST3 ...Can XML be generated without the empty fields from the table? Resolution: XML GENERATE General Rule 8 states:If a character value consists only of spaces, one space remains as the value after trimming is finished.In order to remove the blank tags you can use an Occurs Dependi
Created On: 14 February 2011 Problem: What fixes are included in the XML Extensions v12.05 (Websync 1) Patch available on the Product Updates page of the SupportLine Web Portal? Resolution: The XML Extensions v12.05 (Websync 1) Patch provides a fix for RPI 1074421. The problem symptom was failure to fully export values when the source data structure being exported contained nested OCCURS clauses and the first item of the group in the OCCURS was “empty” (value of spaces for non-numeric or zero for numeric).This patch is recommended for all users, whether or not, you are encountering the described behavior. Old KB# 33365
Created On: 17 February 2011 Problem: The Visual COBOL product is governed by SafeNet licensing and, as such, the user of the product will have to insert an authorization code (issued on purchase of product) in order to license the product. If the machine, on which the product is installed, is not connected to the Internet, a license string has to be generated on the back of the authorization code and the ID of the machine in question, and inserted into the appropriate field in the License Management System tool. There appears to be an issue in that the Micro Focus license server generates a license string with empty lines between the various components of the product and an empty line after the last component. So, having applied the license string with these empty lines, the license administration tool within the product is unable to handle the license string. Resolution: Simply edit the license string (see attached LicenseString.txt file) by removing the empty lines betw
Created On: 16 February 2011 Problem: After installing Net Express 5.1 WrapPack 5 a compiler error is displayed for a Dialog System application that used to compile without error.The error is:COBCH0666S Reserved word used as data name or unknown data description qualifier : and points to a copyfile (.cpb) which was generated by Dialog System that contains the following: 03 FUNCTION-DATA. 05 WINDOW-HANDLE PIC x(4) COMP-5. 05 OBJECT-REFERENCE OBJECT REFERENCE. *>Error points to this data item. 05 CALL-FUNCTION
Created On: 23 February 2011 Problem: It's possible that when compiling a very large program you may receive the following error:Compilation error: Maximum number of data items exceeded.S* Compiling progname.cbl* 808-S ( 0)**** Maximum number of data items exceeded.cob32: error(s) in compilation: progname.cblCompilation incomplete Resolution: This is a restriction and therefore the only option is to reduce the number of data items – as stated in the error message produced:COBCH0808 Maximum number of data items exceededThe compiled program contains more than 64,000 data items.To resolve this, eeduce the number of data items then recompile your program. The most obvious way to reduce the number of data items is to create sub programs for code and data items that can be isolated and called separately. But of course this is never a simple task with
Created On: 23 February 2011 Problem: If you have a .Net string that is padded at the end with null (x"00") characters how can you remove these from the string ? Resolution: The .Net method TrimEnd from the System.String class allows you to do this. You need to supply an array of characters to the method that tells it what characters to strip.In Visual COBOL an example piece of code that does this is:- program-id. Program1 as "TrimNulls.Program1". data division. working-storage section. 01 ws-string-with-nulls. 03 filler pic x(4) value "Test". 03 filler pic x(16) value all x"00". 01 ws-string string. *> .Net String Type 01 ws-nulls character occurs 1 value (0). *> Array (1 element) of chars (null). procedure division. set ws-string to ws-string-with-nulls display ws-string " is of length " ws-string::Length *> Display length of string display "Trimming String ....." set ws-string to ws-string::TrimEn
Created On: 25 February 2011 Problem: Inability to launch server application. Resolution: This error indicates the inability to launch server runtime on a UNIX server. Check the AcuRCL configuration file (acurcl.cfg) to ensure the correct path specification is set for SERVER-RUNTIME. This must be set if the remote runtime is installed in a different directory than AcuRCL. The permissions for the runtime should be executable. Old KB# 33536
Created On: 24 February 2011 Problem: A client encountered RTS error code 163 in a program after writing an Indexed (VSAM/CISAM) record. The program was writing the record and then immediately trying to write a subsequent record, with the only change being a partial increment of the record key. The remainder of the data was to remain the same. However, they found that the data from previous record was not stored in the record buffer after the first WRITE operation of the record, even though they had not specified for the record buffer to be cleared. Based on their description of the problem it would be expected that setting the NOFDCLEAR compiler directive would fix problem. Resolution: The FDCLEAR directive ensures that the record buffer will be cleared after a WRITE operaqtion has been completed.But when they checked their compiler directives file, FDCLEAR was not specified.They then checked the documentation and found that NOFDCLEAR was the default, and so assumed the
Created On: 16 February 2011 Problem: How do you check the number of licenses available and/or currently in use in the Visual COBOL runtime? Resolution: You can do this by using the lsmon tool on the machine where the licenses are installed. You simply open a command prompt and run c:\\Program Files (x86)\\Common Files\\SafenetNet Sentinel\\Sentinel RMS Licnese Manager\\WINNT\\lsmon localhostThis will display the licenses in the server, who is using them and also how many licenses are in use or are left available.A similar GUI utility is c:\\Program Files (x86)\\Common Files\\SafeNet Sentinel\\Sentinel RMS License Manager\\WINNT\\wlmadmin.exe. Add the localhost to the defined server list and you will be able to see which licenses are installed.For historial analysis you can analyse the lservrc.log file in the directory programdata\\Micro FocusThe license server generates a usage log file with the following format: Element D
Created On: 25 February 2011 Problem: AcuRCL fails to start and performing "acurcl -v" returns the error "no entry for product acuRCL". Resolution: This error indicates a licensing problem. Ensure the correct product code and key were entered when using the Activator license utility. Ensure the Activator license utility has created the license file acurcl.alc. Verify that the version of AcuRCL on the server is the same version as Thin Client on the client PC. Old KB# 33538
Created On: 15 February 2011 Problem: Using XDBC I tried to retrieve and/or update data of a COBOL file and get, when the COBOL file is bigger than 4 gigabytes, this error on the SELECT statement: 17:21:19,995 ERROR [Application] ... scan, sqlState = 07000java.sql.SQLException: executeQuery exception: MFEXTFH: Cannot open 'FileNAme',No space in directory or directory does not exist at vortex.sql.vortexPreparedStatement.executeQuery(vortexPreparedStatement.java:154) at org.jboss.resource.adapter.jdbc.CachedPreparedStatement.executeQuery(CachedPreparedStatement.java:90) Resolution: You have to set the File Handler option FILEMAXSIZE=8 in an File Handler configuration fileand for convenience set an EXTFH environment variable pointing to the full pathname of the File Handler configuration file.(This is documented in Net Express like Server Express documentation)(File Handling->Chapter 6: File Handler Configuration)Content of File Ha
Created On: 24 February 2011 Problem: When executing ‘cobrun A progname’ or ‘cobanim progname’ the program runs instead of passing to the animator. For example, let’s assume you’re attempting to use cobanim to animate the demo program ‘tictac’ from the $COBDIR/demo/tictac/ directory. You can activate ‘cobanim’ either directly or via the ‘cobrun A’ commands. For example the command 'cobanim tictac' or 'cobrun A tictac' runs the program (as if 'cobrun tictac' had been entered) instead of opening the animator. Resolution: When you run either of these commands, if you find that instead of activating the animator and allowing you to step through the code it runs the program exactly as if you had entered ‘cobrun tictac’, then one thing to look for is to make sure that you are not attempting to animate from the Server for COBOL (Application Server) runtime environment. You cannot animate programs from the runtime environment, you can only animate from
Created On: 18 January 2011 Problem: When running the 'cobjrun' command, get the following error message: Sorry unable to load libcobjvm_java2 If libcobjvm_java2 is on shared library PATH, then ensure 'libjava' and 'java' are found on the PATH/Shared Library PATH. Resolution: Run the command: cobsje -vCompare the values displayed by the 'cobsje -v' command with the values echoed from the environment variables such as COBJVM, JAVA_HOME, LD_LIBRARY_PATH, PATH, CLASSPATH, COBCPY, etc and see if the values are the same or not.E.g: echo $COBJVMto display the contains of what the environment variable is currently set to.Or run the 'env' command to obtain all the environment variable listings.If not the same as those shown via the 'cobsje' command, then use the 'export' command to manually change the environment variab
Created On: 23 February 2011 Problem: An issue was encountered when running Server Express on both HP-UX PA-RISC 11.11 and 11.23 whereby running the ‘anim’ command produced a core file. This error only occurred when COBMODE=32 was set. When this happened the core_on_error=1 configuration option had been set. Core_on_error had been set in order to produce a core file for a program that was abending when being started using the ‘cobrun’ command. As the program was genuinely faulty a core file was generated, as expected. However, with core_on_error=1 set they then attempted to animate a different program, which was a ‘clean’ program that did not abend. This program had previously run correctly to completion when activated using the ‘cobrun’ command and core file was produced. But, when they then tried to animate the program (anim progname), it instantly produced a core file, even though the program had previously run to completion. A core file ‘should’ only be created when yo
Created On: 25 February 2011 Problem: Thin Client fails to launch server program and the error "connection failed, unable to start remote process" is displayed. Resolution: This error is caused by permissions, system resources and other reasons. Ensure that the working directory specified for the Alias exists and that the correct permissions are set. Check the AcuRCL configuration file (acurcl.cfg) to ensure the correct path specification is set for SERVER-RUNTIME. This must be set if the remote runtime is installed in a different directory than AcuRCL. Ensure that the remote runtime has a valid runtime license. If many instances of the server application are running successfully, this indicates a lack of resources on the server. Old KB# 33539
Created On: 23 February 2011 Problem: A COBOL developer wanted to obtain a compiler listing fie (.lst) including both the data cross-reference and the source code listing. The compiler directive XREF was specified in the "cob" compilation command. When the resulting .lst file was examined, the cross-reference was present, but the source code was not included.The "cob" compilation command specified a directives file, like so:cob -C directives=/directory-path/site/cobol.dir -C XREF -uvP helloworld.cblThe file /directory-path/site/cobol.dir was discovered to include the compiler directive ERRLIST, which was preventing the source code from being included in the .lst file. Testing at Micro Focus showed that changing ERRLIST to ERRLIST"EMBED" would give the desired behavior, requiring no other changes to the "cob" compilation command.However, due to policies at the site, users were not authorized to modify the /dire
Created On: 23 February 2011 Problem: A general question was asked regarding how to deploy an application to run under Server for COBOL on a server and configure the client machines to run the application in a multi-user environment. They needed to understand the general concept of deploying the application in a server/client configuration. Hence, they asked for a simple explanation of how to deploy the application on a server and configure the client machines to run the application. Resolution: Here are some general thoughts. Firstly, check the the online help. Open the Net Express development environment IDE and go to ‘Help’ and then ‘Help Topics’. Select the ‘Contents’ tab, then select ‘Micro Focus Server’ and look at the chapters on ‘Shipping Applications’ and ‘Deployment Licensing’. Probably the two most common ways of setting up a multi user environment would be: 1) Install Server for COBOL on the server and have each client map to the server across the network.
Created On: 08 February 2011 Problem: Thin Client is unable to launch a server program and receives the error "connection failure, Alias does not exist". Resolution: This error indicates a problem with the Alias file (acurcl.ini).Verify that the Alias exists by performing an "acurcl -alias". Ensure that the Alias file that is created is the same one that AcuRCL is using. If the file does not reside in the default directory, set the AcuRCL server configuration variable SERVER_ALIAS_FILE to the correct location. Old KB# 33294
Created On: 14 February 2011 Problem: The key codes can be set in the cblconfig file. How can this be set directly in the program via the command "set configuration"? Resolution: Here is a programing sample: set environment "KEYSTROKE" to "exception=2001 ^x". set environment "KEYSTROKE" to "exception=2002 ^c". set environment "KEYSTROKE" to "exception=2003 ^v". set environment "KEYSTROKE" to "exception=2004 ^z". set environment "KEYSTROKE" to "exception=2005 ^a". Set exception value 2001 to cut-selection.
Created On: 11 February 2011 Problem: By default, the definition of the figurative constant HIGH-VALUES is hex FF. Users may want to change this, particularly users of the Native Language Set (NLS) feature. In native languages, such as Spanish or French, the collating sequence is different and there may be a more appropriate definition for HIGH-VALUES than the default hex FF. Resolution: The following COBOL program sets HIGH-VALUES to the uppercase letter A, which is the 66th character of the ASCII sequence if you begin counting from 1 rather than from 0. Following the same method as this example, HIGH-VALUES may be set to any character, if the user knows the location of the character in the ASCII sequence starting from 1. It may even be set to characters beyond the end of the ASCII sequence, up to 255. The OVERRIDE compiler option does not necessarily have to be specified in a $set statement in the source code. I
Created On: 11 February 2011 Problem: A newly-created indexed file containing zero records (or an indexed file from which all previously-existing records have been deleted), will have size zero in the data portion but will occupy at least 3K in the .idx portion. Why is that? Resolution: The 3K or more of data held in the .idx portion of an empty indexed file is header information necessary to define the file. The header information includes the primary key position and its length (or the position and length of each of its pieces if it is a split key) and its data type (numeric or character). It also includes the position, length and type of each of the alternate keys, as well as other defining information about the file.For indexed files of type MF"8" a.k.a IDXFORMAT"8", the data portion and index portion are held in one disk file. This one file will show at least 3k even when the file contains zero data records; this 3k
Created On: 11 February 2011 Problem: A large COBOL program compiles and runs fine under Visual COBOL 2010 R3 on a 32-bit Windows XP computer. The program is compiled as managed code with a target of AnyCPU.The same program is run on a 64-bit Windows 7 computer and a .NET StackOverflow Exception occurs on a PERFORM statement in the program.The program has a large number of PERFORM and PERFORM THRU statements.Why does it run fine on a 32-bit computer but fails on a 64-bit computer? Resolution: The amount of stack space used in a 64-bit program is about double that of a 32-bit version. There are two known resolutions to this issue:1. Using the Configuration Manager, change the target type of the project from AnyCPU to x64.2. Try adding the compiler directive PERFORMTYPE(VSC2) to the project properties under the COBOL tab. Incident #2499057 Old KB# 33325
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.