Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
Created On: 11 January 2013 Problem: Customer has a Visual COBOL application that resides on a remote server, on which COBOL Server is installed. They install all of their user licenses on this remote server using the Micro Focus License Manager.Users attached to this remote server also have COBOL Server installed on their workstations as they will be running the application locally, executing it from the remote server.Instead of installing a user license locally onto each of these workstations, the customer would like the local Micro Focus License Manager to look on the remote server for the centralized license that has been installed.Is there a way to configure the local Micro Focus License Manager to look at the remote server for licenses as part of a silent installation of the COBOL Server product on the workstations? Resolution: Yes, there is a command line utility that can be run after the silent install of COBOL Server has been done on the workstation. The fol
Created On: 20 December 2012 Problem: Working and debugging an application in Thin Client mode, the remote clients usually are remapped on the server to an unique local user-name. This causes different developers/testers to work in debug using an unique .adb file. Since developers may create their own breakpoints, the .adb file is constantly rewritten. Sometimes the file may become corrupted, breakpoints lost or the multiple accesses at the same time may cause remote debuggers to hang. Is it possible to isolate this file so that each user has its own file? Resolution: In order to have different debug files for different working users, you need to make sure you have different values of USER-ID for each local user-name. The best way to do that is to log in as different users, not have everyone use the same username. This means that you must have in the AcuAccess file and these variables in you acurcl.cfg file: SECURITY_METHOD LOGONWINNT_LOGON_DOMAIN &nbs
Created On: 20 December 2012 Problem: Acubench 9.1 returns "license file not found". Which are the correct licenses to use? Resolution: Acubench 9.1 used to have an issue with the license file. As a matter of fact, extend 9.1.0 and 9.1.1 contains AcuBench 9.0.1. You must expand the AcuBench license code and key with a 9.0.1 activator. For these releases, there is a 9.0.1 activator included in the AcuBench directory. The related acubench.alc file must contain:# Product........: AcuBench# Version........: 9.0.0 and usually is located inside this directory:%allusersprofile%\\Micro Focus\\extend\\9.0.1\\x86 This issue is now fixed in 9.1.2.1. So, this release and later need a 9.1.2.1 license which must contain:# Product........: AcuBench# Version........: 9.1.0 This acubench license file is located in this Windows directory:%allusersprofile%\\Micro Focus\\extend\\9.1.2\\x86 Incidents #2605858, 2602885 Attachments acubench-license-not-
Created On: 18 January 2013 Problem: How do I get the compilers to support Cobol 68 style copy statements? 01 SOME-NAME COPY SOME Copy. The first line of the copy book (01) is replaced by the SOMENAME value when the copy occurs. $SET OLDCOPY – First line of program. (Directive) They were getting the following errors when trying to use the OLDCOPY directive with ENTCOBOL dialect. COBCH2043W OLDCOPY incompatible with flagging dialect: C:\\xxx\\xxx\\COBOL\\CMN\\A13B002R.CBL (1, 6) COBCH0634S Feature not supported in selected dialect: C:\\xxx\\xxx\\COBOL\\CMN\\A13B002R.CBL,c:\\lam\\mpi\\copy\\cmn\\TEPREC.CPY(2,9) Resolution: Make sure the following dialects are set: Dialect: non-mainframe Additional dialects: Dialect"MF" OSVS Incident #2572427 Old KB# 36743#dialect#COBOL#COBOL68#Enterprise#COPYBOOKS
Created On: 09 January 2013 Problem: In the Visual COBOL documentation it shows a sample command line for installing Safenet licenses using the CesAdminTool as follows: start /wait\\bin\\cesadmintool –term activate AuthorizationCodeHowever, when the following is run placing quotes around the command name because of spaces in the folder name an error occurs: start /wait "C:\\Program Files (x86)\\Common Files\\SafeNet Sentinel\\Sentinel RMS License Manager\\WinNT\\cesadmintool" -term activate 1234567890123456What is the correct command line to use to install a Safenet license from the command line? Resolution: It seems that the problem occurs because the start command expects there to be a title parameter present when starting it this way. Placing a dummy title in the command line as follows will fix the problem: start /wait "" "C:\\Program Files (x86)\\Common Files\\SafeNet Sentinel\\Sentinel RMS License
Created On: 27 November 2012 Problem: Import large project 2500 COBOL source files and 5000 copy books. A process is automatically started that will index all the source code and copy books so that ECLIPSE IDE navigation can take place of variables in copy books. This may take a long time. Resolution: In the Window/preferences/Micro Focus COBOL/Builder Page, set the ‘Enable Indexer’ check box to off. Incident #2602944 Old KB# 36637
Created On: 03 December 2012 Problem: When trying to install an AcuCobol product on Linux the error message appears - libc.so.6.1: version `GLIBC_2.3.4' not found. Resolution: To install an AcuCobol product on a Linux machine the minimum Operating System requirement is GLIBC_2.3.4. The customer should be advised to upgrade the Linux platform to at least this level. Old KB# 36653#COBOL
Created On: 27 November 2012 Problem: There are Stored Procedures that are causing the MicroFocus.COBOL.FileHandler warning that is preventing the ability to publish to the SQL Server 2012 database. Resolution: Use NOOUTDD directive Incident #2602526 Old KB# 36638#COBOL
Created On: 16 November 2012 Problem: Do I need an authorisation code when installing Visual COBOl Development Hub Product? Resolution: No, when installing the Visual COBOL Development Hub product it will install a 30 day Evaluation license automatically, then you have 30 days to aquire a Full License and install this via the APPTRACK utility. NA Old KB# 36612#COBOL
Created On: 14 December 2012 Problem: What is the safe maximum number of parameters that can be passed to a COM object from an unmanaged COBOL program? Resolution: Any application that call a COM componment needs to be built with the OOCTRL( P) compiler directive. This directive limits the number of parameters passed on an invoke to 31.If an application passed more than 31 then an RTS114 or RTS252 runtime error may result.To work round this limitation you can design the COM method so that is accepts another COM object as a parameter. The parameters can be set as properties on this object that is passed. Alternatively properties could be exposed on the COM object and set before the invoke is made to the method. Incident #2597978 Old KB# 36679#COBOL
Created On: 04 December 2012 Problem: The error message produced is: "Acubench Integrated Development Environment has stopped working". Sometimes, when compiling a COBOL program, AcuBench would crash. This was due to a correction made in 9.1.2 that removed memory leaks. Resolution: This issue has been resolved by ECN-WB915: SUBJECT: AcuBench crash on build Change Number: ECN-WB915 Status: Complete Type of Change: Correction Priority: High Incidents: 2597131 RPI Number: 1086395 Date: 2012-11-13 Product: AcuBench Module: ccbldll.dll New Version: 9.2.0 Machines Affected: Windows only Known Versions Affected: 9.1.2 and later DESCRIPTION of problem or enhancement: Sometimes, when compiling a COBOL program, AcuBench would crash. This was due to a correction made in 9.1.2 that removed memory leaks.Please either request or raise an incident with the Micro Focus Supportline and request this patch for V9.1.2. The next AcuCobol version release is extend V9.2.0 which is cu
Created On: 30 November 2012 Problem: Customer would like to set a breakpoint when animating in Server Express, so that the program breaks whenever the value of a particular data item changes. Is this possible? Resolution: For the Animator in Server Express, you cannot set a global break condition (i.e. unassociated with a particular statement in the Procedure Division), where execution would stop whenever the value of a data-item changes. This was a feature of earlier releases of MF COBOL, such as Workbench and Object COBOL Developer's Suite, but it's not in Server Express. Instead, you will have to set a breakpoint on a particular statement, using the If option in the Breakbpoint menu. Execution will break on that statement if/when: That statement is reached, and the condition is met. Old KB# 36647
Created On: 20 November 2012 Problem: The Visual COBOL v2.1 documentation states that the return parameter for the C$SetEnv RM library call within is optional. Syntax: CALL "C$SetEnv" USING name, value [, return] Parameters: name PIC X(n) value PIC X(n) return PIC 9(n) BINARY, where n can be a digit from 1 to 9 However if the "return" parameter is not used an ArrayIndexOutOfBounds Exception occurs. Resolution: The return parameter must be used. Incident #2602271 Old KB# 36621#ArrayIndexOutOfBounds#CSetEnv#COBOL
Created On: 10 December 2012 Problem: Program that uses an ActiveX control works Ok with Windows runtime version 9.1.2.1 when it runs standalone; but with thin client it crashes, the program works Ok with previous Thin Client versions. Resolution: The problem is due to the ECN-4159 introduced in version 9.1.2.1, while development still is investigating this problem, the solution is to turn off the runtime configuration variable ECN-4159, like this: ECN-4159 OFF Incident #2603362 Old KB# 36669
Created On: 23 November 2012 Problem: How do you get the DB2 JDBC JNDI database connection with Visual COBOL for Eclipse? Resolution: 1. Introduction This document covers working with OpenESQL applications under the Visual COBOL eclipse product lines, including some background on how things fit together, and an example of building and executing a sample program. 2. Software requirements The document assumes that you already Have a copy of Visual COBOL for Eclipse installed and licensed appropriately. Have a copy of DB2 installed like db2 10.1 express version. Have a copy of simple JNDI class library .jar file like simple-jndi-0.11.4.1.jar 3. DB2 COBOL example In Eclipse Create JVM project create cobol program TestDate Cut and paste the below program into the new program. $set sql(dbman=jdbc) program-id. TestDate as "TestDate". &nb
Created On: 12 December 2012 Problem: Having Internet Explorer 8 installed, the Web Browser control returns a value related to IE 7. This may cause some issue to customer's application which will run a test on the browser installed on end-users' machines. Resolution: This problem is caused by some changes that MS introduced during the IE 8 Beta1. The following link explains the problem and the solution. http://blogs.msdn.com/b/ie/archive/2009/03/10/more-ie8-extensibility-improvements.aspx In short, you need to add a registry key naming the executable (wrun32.exe or acuthin.exe, or if you have renamed the runtime, whatever name you gave it). Incident #2599414 Old KB# 36675
Created On: 15 November 2012 Problem: Converting an RM fixed length indexed file using RM to MF Data Conversion sample produces an MF variable length IDXFORMAT(8). Resolution: The RM to MF Data Conversion sample is a "sample" program, and it should not be considered as an official Micro Focus conversion utility. The purpose of this sample program is to convert an RM indexed file into an MF variable length IDXFORMAT(8) file. If you wish to modify the sample to convert into an MF fixed length IDXFORMAT(8) file, you will need to change lines 541 and 542 of MigrationForm.xaml.cbl:set tmpStr to String::Concat(IntermedFile, ", """, outFile, """ /o:seq,ind /r:v", MinSizeStr, "-", MaxSizeStr, " /t:mf8 /k:", KeyStr::Trim()) to the following:set tmpStr to String::Concat(IntermedFile, ", """, outFile, """ /o:seq,ind /r:f",&
Created On: 16 November 2012 Problem: Customer is using a C# Windows Forms project in his application and they need to be able to call some native COBOL .dlls from C#.What is the easiest method to do this in Visual COBOL? Resolution: The easiest method is probably to create a wrapper program using managed COBOL that C# can call directly.The managed COBOL wrapper program would then format the parameters passed to it according to what is expected by the native COBOL program.There is a demo program attached to this article that shows one method that this can be done.Here is the description from the demo: TestWrapper Demo This example program demonstrates how C# can call a native COBOL program by using a managed COBOL wrapper program. The managed COBOL wrapper program is compiled with the ilsmartlinkage directive which causes the c
Created On: 29th November 2012 Problem: In Visual COBOL for Eclipse, when compiling a remote project which includes DB2 directives it fails with an error: [cobol] [cobol] Compiling (64-bit) Program1.cob... [cobol] [cobol] Load error : file 'cobsqlecm64.so' [cobol] error code: 198, pc=0, call=1, seg=0 [cobol] 198 Load failure (No such file or directory) [cobol] [cobol] cob64: error(s) in compilation: Resolution: Before starting the RSE server process via the script $COBDIR/remotedev/startrdodaemon the environment must be correctly configured so that the DB2 libraries can be found. The environment can be configured using the db2profile script provided with DB2 in the sqllib directory located in the home directory of the DB2 instance user. For example, you could create a script to
Created On: 14 December 2012 Problem: Customer is using a C# front end that calls a managed code COBOL class which in turn calls a native COBOL .dll. The C# program is creating a new instance of a RunUnit (MicroFocus.COBOL.RuntimeServices.RunUnit) and then calling the managed COBOL program by adding it to the RunUnit. Is it OK for the managed COBOL to call the native COBOL .dll when it is part of a RunUnit? Resolution: Yes, you can call native COBOL .dlls from managed COBOL when they are part of a RunUnit instance. The native runtime has a “one rununit” per process model, so in effect the native code will be shared between all the managed RunUnits. The native and managed RunUnit have no interaction with each other, so a CANCEL in managed code has no effect on the native RunUnit. The same goes for open files, they will not be shared between the two RunUnits. This in itself might not be a problem if the program is stateless or serialized… ie: local-storage based
Created On: 16 November 2012 Problem: Customer is using Net Express 5.1 and has the following question.Net Express has the instrinsic functions upper-case and lower-case. Is there a Function or Module that converts string fields into upper AND lowercase? For example: I would like to convert "JOHN DAVID SMITH" into "John David Smith". Resolution: There is no COBOL intrinsic function to do this mixed case conversion but here is a simple demo to show you how you can write one in COBOL. This example is also attached to this article as a zip file.The mixedcase function will capitalize all words in a string passed to it.Calling program: *----------------------------------------------------------------* * Test Case *  
Created On: 28 November 2012 Problem: Having build several Visual COBOL executables a customer would like to deploy them onto peoples desktops. Rather than have a standard 'Windows' icon on the desktop to represent their application they would like to have their own images displayed as the icon. How do they build the executable so that these 'images' can be seen as the desktop icon rather than the 'Windows' icon? Resolution: Basically just open up project properties to Application tab and select the icon that you want to use for the application: Old KB# 36641#Enterprise#VisualCOBOL#COBOL#EnterpriseDeveloper
Created On: 20 November 2012 Problem: Using the compiler directive XMLGEN(WS) instructs the compiler to create the XML model files. However the IDE creates the XML model file(s) in the project root directory, but the runtime is expecting to find them in the output folder so an error 39 is generated, for example:Error: 39[01] model (symbol table) file that defines model data-name not found[39]ModdelFileDataName parameter: "Address-Struct" Resolution: The XMLGEN directive can specify a path for the directory/folder of where to put the model template file. This path can be relative or absolute. If the ws option is desired, specify it in a separate XMLGEN(ws) directive that follows the XMLGEN(path) directive, where path indicates your desired directory/folder, because setting the path nullifies the XMLGEN(ws) option. For example, cobol testxmlgen01 XMLGEN(c:\\windows\\temp) XMLGEN(ws); will
Created On: 28 November 2012 Problem: Customer was converting a Net Express native application to a Visual COBOL managed code application and noticed that there was an extreme performance hit when executing a COMPUTE statement that included fractional exponentiation.Program looked like: 01 ws. 05 WS-TEST-VALUE PIC S9(9)V9(4) COMP-3. 05 WS-TEST-INTEREST PIC S9V9(6) COMP-3. 05 WS-NO-DAYS PIC S9(05) COMP-3. 05 WS-DAYS-BET-ANIV PIC S9(05) COMP-3. MOVE 44406.25 TO WS-TEST-VALUE. MOVE 0.015 TO WS-TEST-INTEREST. MOVE 365 TO WS-NO-DAYS. MOVE 365 TO WS-DAYS-BET-ANIV. COMPUTE WS-TEST-VALUE ROUNDED = WS-TEST-VALUE * ((1 WS-TEST-INTEREST) ** (WS-NO-DAYS / WS-DAYS-BET-ANIV)). The Compute statement above was taking about 20 seconds to execute.How can this performance be increased? Resolution: The problem is that in managed code COMP-3 data types do not map directly to a manage
Created On: 19 November 2012 Problem: When installing Visual Cobol 2.1 Products it will install the License manager using lmsetup64.msi , this will automatically create Firewall rules to allow for communication to licening servers. Is there a parameter to prevent firewall rules from being set during license manager installation? Resolution: You can use the following parameter when installing the license manager: > lmsetupx64.msi ENABLEFIREWALL.B770BEF9_6C75_468D_A6D3_B6B7856579C8=”FALSE”This will not create any Firewall rules when installing the license manager. NA Old KB# 36619#COBOL
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.