Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
Problem: A client installed his application on Windows Vista for the first time. The machine had Application Server for Net Express 5.0 (i.e. Micro Focus Server 5.0) installed. The application was character based and required settings in ADISCTRL. In partucular it required function keys to be enabled. Testing led him to believe that ADISCTRL was not being read and that defaults were therefore being taken. Yet, the same configuratiopn worked correctly on XP and previous Windows versions. Resolution: When the application was distributed the preset copy of ADISCTRL was copied into the Application Server directory (eg C:\\Program Files\\Micro Focus\\Server 5.0\\bin). As this was Application Server he was not able to run adiscf to make the appropriate adjustments. When running the application the F-Keys (and other settings such as having the enter key work as a tab key) were not being recognized. The PATH was checked and seemed correct. C
Problem: Can you use Windows printers with Printer Command Language (PCL) ? PCL is a printer language that uses escape sequences to contol the display of different font and styles such as Bold and Italics. Over recent years there has been a trend in low cost printers to drop the support of PCL escape sequences. This means that they can only be used with applications that use the Windows Print Spooler. This means that applications which use SELECT ASSIGN PRINTER syntax and embed escape sequences cannot be used with these printers. Resolution: The runtime has a variety of PC_PRINTER_ calls that support Windows printing. They application can be changed to use these calls which support any printer that has a Windows printer driver. Alternative there are 3rd party utilities that convert PCL and send that to a Windows printer. Old KB# 1500
Problem: Customer reported that after installing WrapPack #3 for Net Express 5.0 he started getting the following error message when compiling any COBOL program from Visual Studio 2005: error COBCH0857 : System error - failure during ILASM phase Resolution: In WrapPack 3 the checker was modified to use some temporary directories on the system. The problem was solved by changing the following registry entry that disables the creation of short names. And on the problematic machine this entry was set to true. HKLM\\SYSTEM\\CurrentControlSet\\Control\\FileSystem\\NtfsDisable8dot3NameCreation = TRUE The solution was to set this entry to false and recreate your logon on that machine. Old KB# 1463
Problem: The documentation for COBOL XML Syntax show that you can parse XML where the actual element names are unknown. How can you extend this through more levels of XML hierarchy ? Resolution: You need to build more levels on depth into the XD definitions. An example of extension to a lower depth based on the documented example:- $set sourceformat"variable" preprocess(prexml) o(foo.pp) warn endp select doc assign to "MYXML.XML" *>address of mybuf organization is xml &nb
Problem: Net Express 3.1 does not support Internet Explorer 7 (IE7), so installing Net Expres 3.1 on a machine that already has IE7 installed will result to an error about the IE version. How to ignore or skip the IE version check? Resolution: NOTE: It is not recommended to ignore or skip the IE version check if you will be developing web applications with Net Express 3.1. Net Express 3.1's Form Designer supports IE5 and IE6 only. If you will be developing web applications, you can either remove IE7 and install IE6 instead or upgrade Net Express to the latest version, which is now v5.0. Having read the above, here are the steps allowing you to install Net Express 3.1 without having the setup to check for the IE version: 1. copy wrapper.ini from the Net Express CD to your local drive, e.g. C:\\ 2. edit C:\\wrapper.ini with a text editor 3. search for "checkie" --> this should find CheckIE5OrAbove 4. delete the whole line 5. save w
Problem: Under .Net you can use COBOL rununits to isolate COBOL working storage between concurrently running sessions such as under ASP.Net and other multi threaded environments. Under rununits you can also use COBOL .Net classes and use static data. Static data can be delared as:- class-id. Class1 as "CLASSTEST.Class1". environment division. configuration section. repository. static. data division. working-storage section. 01 WS-STATIC-DATA PIC X(100). When this class is added to a rununit is static data isolated to the rununit ? Resolution: No it
Problem: When compiling DB2 applications with the DB2 compiler directive, you receive Compile error: SQL ECM or dependent module not found When compiling OpenESQL applications with the SQL compiler directive, you receive Compile error: ODBC ECM or dependent module not found Resolution: These errors can occur when : 1. Compiling DB2 applications, the required DB2 client support is not installed. 2. Compiling on UNIX, the DB2 ECM/OpenESQL support is not available on your platform. Refer to the on-disk readme under $COBDIR/docs for details. Old KB# 1429
Problem: When trying to add an option to our Net Express installation, we continually receive the message - 'unable to load c:\\supportdir\\xinstaln.dll' as we try to install a new option. Where is the DLL xinstaln used? Resolution: This installation process uses this module as a part of its processing. The customer was using the CD labeled 'Studio for Mainframe Migration'. For Windows XP Pro, if he went to the Windows Control Panel 'Add/Remove Programs', then 'Change', he could select the desired option. For Windows Vista it is slightly different in this area: go to 'Programs and Features', then 'Change'. Because the new releases of Net Express and Mainframe Express use the Microsoft Installer, one cannot re-insert the CD to add/remove options. Instead, one must use the Windows interface via the Control Panel. Old KB# 1517
Problem: Ajax is only a name given to a set of tools that were previously existing. The main part is XMLHttpRequest, a class usable in JavaScript , that was implemented into Internet Explorer since the 4.0 version. The same concept was named XMLHTTP some times, before the Ajax name becomes commonly used. ==> There is no problem for a JavaScript function to invoke a CGI program thru AJAX... http://www.w3schools.com/ajax/default.asp AJAX Tutorial AJAX stands for Asynchronous JavaScript And XML. AJAX is a type of programming made popular in 2005 by Google (with Google Suggest). AJAX is not a new programming language, but a new way to use existing standards. With AJAX you can create better, faster, and more user-friendly web applications. AJAX is based on JavaScript and HTTP requests. http://msdn2.microsoft.com/en-us/library/aa384109.aspx WinHttpRequest Object Reference Resolution: In the demonstration attached, 1) &nbs
Problem: compiling from a Net Express command prompt using the COBOL command to compile a program The compilation hangs after displaying the line '* Checking complete with no errors - starting code generation' Resolution: In this scenario; The dir file has COBIDY($COBIDY), Specifying $COBIDY with the COBIDY environment variabe should not be done. Just specifying COBIDY is the correct method to get the same behaviour. The problem is, that COBIDY environment variable is set to the directive parameter COBIDY=$COBIDY and this causes an infinite loop when trying to resolve the COBIDY environment variable later. Old KB# 1446
Problem: When trying the rebuild an EXE the following error message is displayed: MyProg.obj: Error LNK2001: unresolved external symbols _GetSaveFileNameA@4 _ CommDlgExtendedError@0 _ GetOpenFileNameA@4 Resolution: The library comdlg32.lib has to be added to the EXE. When using the IDE, rightclick the EXE (or DLL) and select "Build Settings..." On the tab "Link", change the category to "Advanced" Enter comdlg32.lib into the entry field titled "Link with these LIBs" And rebuild the project. Old KB# 1433
Problem: CHANGING ONE LINE OF CODE AND TRYING TO COMPILE SINGLE PROGRAM. THE REST OF THE MESSAGE STATES - THE FILES MAY BE LOCKED OR READ ONLY. CUSTOMER USED SAVE AS TO SAVE TO ANOTHER FILENAME. SOURCE CODE IS ON A NETWORK DRIVE. CUSTOMER HAS CHECKED ALL RIGHTS AND CUSTOMER HAS FULL ACCESS TO THE FILES. CUSTOMER IS ABLE TO USE EXPLORER TO READ THE FOLDER AND THE SOURCE. Resolution: Close down Net Express IDE. Check the DEBUG and RELEASE folders and any other place where programs are compiled. Look for any files where the extension of the filename starts with .$$ If any files with this extension are found, then delete them. Now, start Net Express IDE and edit your file and the EDIT 147 should not appear. Old KB# 1453
Problem: Other than in compiler directives within the NetExpress IDE, can the TARGETDIR environment variable for NetExpress 5.0 IDE path concatenation be exported or set? Resolution: Yes. For the sake of convenience, create a new batch file, (e.g., "NetX.bat") and include "set TARGETDIR" and PATH variable statements, then invoke NetExpress at the end of the .bat file. Place the .bat file in the root of the local C: drive, or any other location within the system path. Then create a new shortcut for this batch file on the Windows desktop. Old KB# 1497
Problem: Do you know why DB2 distributed would not like this statement? 01 WS-TIMESTAMP PIC X(26) VALUE SPACES. EXEC SQL SET: WS-TIMESTAMP = CURRENT TIMESTAMP END-EXEC It worked fine in XDB. Resolution: It will work in MFE and Net Express using XDB and will work in MFE using HCO (Host Connectivity Option) because HCO passes code to DB2 to allow this to work. This will not work in Net Express using UDB. SET :HV = CURRENT TIMESTAMP is not supported in native DB2 UDB and since HCO is not a part of Net Express this statement will not work. Old KB# 1467
Problem: Installation terminates with "Internal Error 2908" message. Resolution: Internal 2908 error in NetExpress 5.0 indicates that a Micro Focus runtime environment was previously (or is currently) installed on the intended target machine for the NetExpress 5.0 installation. Both runtime and NetExpress environments cannot be installed on the same physical machine. Solution: Remove any previous Micro Focus runtime installations (Application Server, Server for COBOL 5.0, etc.) Locate any system registry keys containing "ASLMF" (Under the HKEY_LOCAL_MACHINE registry hive) and delete them. Reboot the system, then remove any Micro Focus folders that remain on the file system. Reboot the system once more, then re-install NetExpress 5.0. Old KB# 1507
Problem: When running your application against Sybase or after Animation, a 252 memory corruption detected is returned. Resolution: This error can occur when there is a mis-match in the version of the Sybase Client and the Database Server version. If you have recently upgraded the Database software, you must also upgrade the Client software. Old KB# 1427
Problem: When trying to run the demo ...\\Net Express 5.0\\Examples\\Visual Studio Integration\\Pinvoke on a 64 bit operating system, the demo does not run through the unmanaged call. Resolution: When using a 64 bit operating system, Visual Studio generates managed code for the 64 bit environment while the precompiled SUB.DLL is still 32 bits. The given SUB.cbl has to be recompiled to a 64 bit DLL, e.g. in a 64 bit Net Express CMD prompt e.g. by the command CBLLINK -d sub.cbl The DLL has to be copied to the bin\\debug directory. Starting the Visual Studio now from the Start-Menu still results in a failing call to the unmanaged code because the unmanaged runtime system set by PATH is still the 32 bit one. When the 64 bit Net Express CMD prompt is used to start Visual Studio, e.g. by typing the solution's name, here: PInvoke.sln, then Visual Studio gets the correct environment to run the demo or debug the managed code p
Problem: Can Visual Studio 2005 WinForms display a pic 9(7)v99 value with decimal points? Resolution: A masked text box can be used. Right-click on the masked text box and select Properties. e.g. #,###,###.## has to be used as mask The masked text box can be filled e.g. by 01 Field pic 9(7)v99 value 1234567.89. set maskedTextBox1::"Text" to Field When the property Cutlure is English (USA) - 1,234,567.89 is displayed. When the property Culture is German (Germany) - 1.234.567,89 is displayed. When the property Culture is German (Swiss) - 1'234'567,89 is displayed. ... Old KB# 1524
Problem: With the TESTCOVER directive set and the TESTCOVER environment variable set to the location of the test coverage config file no tcz file was produced. Resolution: This was caused by the TESTCOVER directivebeing set in user environment variables. The program was running in the context of a Windows Service. The environment variable therefore needs to be set as a system environment variable. Old KB# 1430
Problem: To differentiate faultfinder ouputs from one another, previously, in the faultfinder configuration details ($COBCONFIG file) you could specify :- set faultfind_outfile="fault%p.log" where 'fault' would be a name of your choice, %p would be replaced with the process id of the faulting process, and '.log' would be another name of your choice When using faultfinder within Enterprise Server in a busy system, it can happen that the process-id is not sufficient to keep the Faultfinder dumps unique, especially in IMS and CICS where many transactions can be executed in a single SEP (therefore all of them under the same PID). Resolution: From Nexpress 5.0 Websync WS4 and Server Express 5.0 Websync WS4, the options %d and %t have been added. %d will be replaced with the date of the fault in the format <yyyymmdd> And %t will be replaced with the time of the fault in the format <hh
Problem: Program is executing a SORT statement using the following syntaz; SORT SortFile ASCENDING Data-Item USING InputFile GIVING OutputFile The sort statement when executed results in a runtime error 153 - Subscript out of range. Resolution: When encountering this type of problem the first thing that should be looked at is the record definition of the sort file, input file and output file. In this particular case the error was due to the fact the the SortFile record definition length is shorter than the Input File and Output File. Using this type of syntax you must ensure that the record length of all files are equal. Old KB# 1502#RMCOBOL#netexpress#ServerExpress#AcuCobol#COBOL
Problem: Is the Host Compatibility Option (HCO) available for Net Express? Is the Host Compatibility Option (HCO) available for Server Express? Is the Host Compatibility Option (HCO) available for UNIX platforms ? Compiling an application with the DB2 and CHARSET(EBCDIC) directives returns an 801-S error (Does not accept EBCDIC data). Resolution: Up to and including the 5.0 WrapPack 2 releases of Net Express and Server Express 5.0, it was not possible to compile DB2 applications with the CHARSET(EBCDIC) directive. As of the 5.0 WrapPack 3 release of both Net Express and Server Express, the Host Compatibility Option (HCO) is now available as part of the base product installation. HCO is a set of tools that enable you to offload DB2 for z/OS development and testing to Windows or UNIX platforms using IBM's DB2 Universal Database (UDB) V5 or later. HCO does this by allowing EBCDIC-enabled programs to work with DB2 UDB. In addition, HCO can be u
Problem: A wrong CALL-CONVENTION can cause that the perform logic is falling through the EXIT at the end of a performed section or paragraph - especially when executing as EXE. How can the correct CALL-CONVENTION be determined? Resolution: A CALL-CONVENTION is a collection of bits, where the bit "1" means (2**1) that the callee removes the parameter off the stack. E.g.: This bit is set in the CALL-CONVENTIONs 2, 66, and 74 And is not set, if CALL-CONVENTION is omitted or is set to 0, or 8. If (this part of) the call-convention is by mistake, the CALL is executed normally. But after the return from the called program the stackpointer is corrupted. The program executes the following instructions as nothing has happened - including subsequent CALLs. But on a EXIT SECTION or EXIT PARAGRAPH a fall through may occur - instead of a return to the PERFORM statement. When the "CALL-CONVENTION 2 is CALLEE-REMOVES-STACK" is specified
Problem: using the eza socket feature. Trying to run an initapi, but receives a return code of -1, and receives the error number 0. Resolution: The console showed that he EZASOKET was stopped becuase of bad data and needed to be restarted. 0918 11381705 5820 EZATEST CASSP0002I Server manager informed of process termination, pinfo = S,0000006484 11:38:16 070918 11381705 6680 EZATEST CASOP0000I 01 of 02 From (,,CSKL) EZY1298E 09/18/07 11:38:17 CLOSE CALL FAILURE TRANSACTION= CSKL 11:38:17 070918 11381705 6680 EZATEST CASOP0000I 02 of 02 From (,,CSKL) TASKID= 0015 ERRNO= 00
Problem: Release: Net Express 5.0 .NET & Visual Studio 2005 Coming up with sources from SP2, using a comp-5 redefinition and compiling this under Net Express 5.0.NET: 10 SP2-CD-MENU-ID PIC S9(4) COMP-5. 10 SP2-CD-CTRL-FIELD-KEY REDEFINES SP2-CD-MENU-ID PIC S9(4) COMP-5. 10 SP2-CD-BUTTON-ID REDEFINES SP2-CD-MENU-ID
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.