Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
Problem: MFSORT returns 9/007 when sorting large (filemaxsize=8) file The TEMP and TMP environment variables are set to C:\\TEMP Resolution: The 'C' drive was not an NTFS drive. Creating a TEMP folder on an NTFS drive and revising the User environment variables for TEMP and TMP to the NTFSdrive:\\TEMP solved the problem. Note: Sorting a "large" file, MFSORT will be writing files to TMP and or TEMP paths that will require an amount of disk space equal to the size of the file being sorted. Sort files may also be very large as well. Therefore, TEMP and TMP must point to an NTFS drive where there is significant disk space available. Old KB# 5272#AcuCobol#COBOL#ServerExpress#RMCOBOL#netexpress
Problem: CALL 'CBL_DEBUGBREAK' to animate a program vs. via Net Express command-line with COBSW= A or COBSW= a Resolution: The preferred way to debug programs under Net Express is to start via CALL 'CBL_DEBUGBREAK', whereas COBSW= A also COBSW= a are out of use, therefore not documented. COBSW= A was included within older 16bit/32bit Micro Focus products (e.g. Workbench), and it is not intended to use this under Net Express. Old KB# 5267
Problem: This is an example that will walk the user through the steps needed to take an EBCDIC mainframe sequential file and convert it to ASCII. Follow each step carefully in the Resolution below to take the ASCII file and convert it back to EBCDIC. The example will also demonstrate how to create and use a Record Layout to be used with these files. Resolution: Convert mainframe EBCDIC file using Tools ==> Data Tools ==> Convert to an ASCII file. Next, take ASCII file and convert it back to EBCDIC file. Files and project also will be attached to article Attachments: ascii_ebcdic_convert.doc Old KB# 5297
Problem: Error when attempting to silently install the Net Express product. In the log file from the install the following error is displayed: Error: Invalid silent script file, unable to start unattended install. when using a script that was previously recorded. Resolution: This can be caused by the ordering of some parameters in the install command. Run the install with a command using the following syntax: setup.exe /INI=C:\\mynetx.ini /LOGFILE=C:\\nxsetup.log /NO_SILENT_REPORT /SILENT=C:\\mynetx.sss This should produce the desired result. Old KB# 5291
Problem: Unable to create a Net Express project on a Novel Netware drives (NWFS) but create successfully on Windows drives Resolution: Make sure the user has the network rights to use the Netware drive. The other possible cause of the problem is that the EXTFH environment variable is set, and it contains FILEMAXSIZE=8, which enables the 64-bit file addressing and allows to create files greater than 4GB. Net Express does not support 64-bit file addressing on Netware (NWFS) drives. If FILEMAXSIZE=8 is not set, Net Express will then use 32-bit file addressing and can create file up to 4GB on Netware drives. If you need to use FILEMAXSIZE=8 for other applications, you will have to set the EXTFH environment variable from each application level, not from system level. If it is set from the system level, Net Express will be affected as well. Old KB# 5285
Problem: Net Express 4.0 on Windows XP. Problems compiling source code which contains Japanese DBCS user-defined words. Resolution: To compile your programs successfully ensure that both your User and System Locale are set to Japanese on Windows XP. Old KB# 5265
Problem: Can MFSORT be used outside of Net Express? Resolution: MFSORT is part of Micro Focus' development and application server products. It works on Windows, Linux and UNIX. Old KB# 5305
Problem: ProgramA is compiled with the directive $set CallFH "MyProgram". When any file access occurs (e.g. Open i-o File) this correctly calls the "New file Handler" MyProgram. However, the means to access the FCB of the relevant file is not at all clear. For example, including the Directive FCDREG in the calling and called programs has no effect. Resolution: The following is a workable example of accessing the FCD below. The program turns on key compression in a file by setting the appropriate bits in the file's Key Definition Block. $set fcdreg select masterfile assign to ... organization is indexed record key is rec-key alternate key is m-alt-key-1 with duplicates alternate key is m-alt-key-2 alternate key is m-alt-key-3 with duplicates. select indexfile assign to ... organization is indexed record key is rec-key alternate key is t-alt-key-1
Problem: Problem when running a sample downloaded from the Micro Focus web site. The sample is a Net Express 4.0 CGI application that sends email using CDO to access an SMTP server. When running the sample on a development server it can send email fine. When the application is moved to a test server that has Application Server 4.0 installed, the following error message is displayed in the browser: execution error : file '' error code: 200, pc=0, call=1, seg=0 Run-Time System internal logic error (in rtsarea.c 85. line 400). The Application Server is unprotected. see incident 2104379. The Application Server was updated with aps05a40.exe (4.0.005?) The CDO sample was on the Micro Focus website. see incident 2105768 Resolution: The sample was being linked using the static and multi-threaded options. After changing these options to dynamic shared and single threaded the problem was resolved. Old KB# 5257
Problem: Micro Focus has both Net Express and Mainframe Express. Is the Net Express Interface Mapping Tool just Mainframe Express's Component Generator renamed? Resolution: The answer is no. Net Express has an Interface Mapping Tool which allows one to select fields for mapping to a new display format. In COBOL, one can describe a data item's data type precisely, using its picture-string. COM, Java and XML (used for sending data between a client and a Web service) each define their own sets of data types. The Interface Mapper maps the COBOL types in your program onto the types available in COM, Java or XML. CG (Component Generator) is an interface allowing creation of Java and web components to allow testing of a legacy application that has been web enabled. CG allows one to (1) analyze an application, (2) capture its output screens (BMS or MFS), (3) create an eBiz transaction for displaying the output or for allowing access to a VSAM dataset or
Problem: NetExpress releases 4.0 - 5.0 Overview of file handler parameters. Resolution: To get an overview of file handling, please refer to: Net Express Help -> Help Topics -> Content -> Reference -> File Handling -> File Handler -> Configuration -> Configuration file parameters - Overview Old KB# 5307
Problem: A legacy code is added to a solution, and it is set as "Console Application" for the output type. The solution gets rebuild successfully, but a class is unable to call the "console" application. There is neither a warning or error. Resolution: When a program's output type is set as "Console Application," it will be built as an EXE. In other words, it cannot be called. The output type should then be set as "Class Library", so it can be built as a DLL. Old KB# 5284
Problem: Release 4.0: Setting the compiler directive PERFORM-TYPE"ENTCOBOL" to ensure that programs have the best compatibility with the mainframe COBOL dialect. Since doing so, the user cannot do a RUN RETURN in the animator to step out of a performed paragraph or section. Resolution: This is the expected behaviour. Setting a mainframe dialect for PERFORM-TYPE has an implementation, where the appropriate information to determine the correct return point is not available. The PERFORM-statement behaves different from the default to the PERFORM-TYPE setting to mainframe compatibility (or RM). a. perform b through d. display "a1". goback.
Problem: Method to make PROJMAKE build the debug and/or release versions Resolution: Supply the parameters within quotes, for example: projmake -buildall <name.app> "Generic Debug Build" or projmake -buildall <name.app> "Generic Release Build" Old KB# 5294
Problem: When running a program and calling the CBL_DELETE_FILE-routine, files being write-protected are not deleted. How to change the file attributes for those files with a CBL-routine without using a DOS box? Resolution: Windows API functions can be used to unset the read-only attribute of files. copy Windows.cpy. program-id. main. special-names. call-convention 66 is WinApi. working-storage section. 01 Attrib DWORD. 01 ReadOnlyOff-Mask DWORD. 01 B-RetVal BOOL.  
Problem: To use the GUI Class Library ListView object within a Dialog System screen, and to set focus on a specific ListView Item and give it the focus, users should first put the focus on the ListView itself by calling "SetInputFocus". Then they can set focus on the ListViewItem. The following code assumes that aListView is an object reference representing the ListView itself and aListViewItem is an object reference representing the particular item for users to select and set focus on. This code would be placed in the appropriate area of the control program for the ListView: INVOKE aListView "SetInputFocus" INVOKE aListViewItem "setSelectedWithFocus" If you do not invoke "SetInputFocus" on the listview first, then the listview item may appeard gray because it was selected, but does not have focus. Resolution: In order to use the GUI Class Library ListView object within a Dialog System screen, and to set focus
Problem: Customer was attempting to do a PInvoke function call from a C# ASP.NET code-behind program to an unmanaged COBOL .DLL created with Net Express 3.1 preSP1. Customer compiled the application using REENTRANT"2" but the application also uses embedded SQL Server ODBC statements and the SQL(Thread=Isolate) was not supported in 3.1 pre SP1. Customer could successfully run the ASP.NET application and call the unmanaged COBOL .DLL if only one user was running the application. When they added multiple users making simultaneous requests for the Web application the Platform Invoke call started to fail and one client's working-storage would end up in another client's program. Pgm1: 3rd party C# .NET? multithreaded exe calls/passes data Pgm2: COBOL dll calls/passes data Pgm3: COBOL dll Resolution: The following information is in regards to your attempts to create a C# based ASP.NET application which uses Platform Invoke to call an unmanaged
Problem: compiler directive set: $set p(prexml) o(basic.pp) ENDp $set ilpinvoke(cblxmls.dll) sum-up compiler directive ILPINVOKE ( extracted from MF .NET doc): Makes the specified unmanaged code available, so that the entry points in the unmanaged code are available to the program being compiled. See the Visual Studio Help topic Calling Unmanaged Code from COBOL Using Platform Invoke Services for more information. Syntax: >>-.----.--ILPINVOKE--"unmanaged-dll"------>< -NO- Parameters: unmanaged-dll The name of the .dll containing the unmanaged code that is required Properties: Default: NOILPINVOKE IDE equivalent: Add a reference to the unmanaged .dll to the References folder of the solution Resolution: Instead of $set ilpinvoke(cblxmls.dll) use &
Problem: How to write all the console output (including errors) from a batch program to a text file? Resolution: 1) You will need to compile your programs with the CHARACTER option rather than GRAPHICAL. This ensures that any errors are display as plain text rather than in a Windows message box. 2) You will need to set the following runtime switches: set cobsw=-I2 S5 3) You then run your program with redirection: paddy01.exe > x.txt For example, the following program: procedure division. display "Before CALL...". call "fred". display "After CALL...".
Problem: Method to trap COM Errors without the black console box popping up Resolution: Code/logic a registered COM Exception Handler: The exception handler does not automatically terminate but allows users to determine the best action. In many cases this would be to terminate (ie STOP RUN). However, users can decide on the correct course of action for themselves. An Example of this is:- $set ooctrl( P) program-id. ADSIDemo. ****************************************************************** * * Author - David Sands (Micro Focus Technical Support) * * Date - December 2003 * &n
Problem: If a migration is being done from a character user interface application from Workbench 4.0 to Net Express 4.0, the ADIS control keys must be enables to behave in Net Epress the same as they did in the Workbench application. Resolution: When using ADIS in the Workbench application, an ADISCTRL file which contains the saved settings is picked up by the application at run time. This file needs to be copied into the application folder in the Net Express environment to allow the same key settings to be re-implemented into the migrated application. Old KB# 5259
Problem: Installing Net Expresss and getting an error stating Application Server is already installed. Resolution: This sounds like an intermittent issue with the Net Express 4.0 installation. The following steps should be followed: 1) Using REGEDIT, rename: HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall to HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall-temp 2) Start the Net Express setup. 3) At the setup welcome screen, rename the above key back to Uninstall. 4) Continue with the installation. Old KB# 5262
Problem: Method to uninstall Net Express 4.0 and any applied fixpacks silently from a command line Resolution: End-users can silently uninstall any Micro Focus products (which use Micro Focus' proprietary wrapper install technology), without the need to go to Add/Remove Programs in Control Panel. First, users need to establish the values of %UNINSTALLER% and %UNINSTALLTAG% as referenced below in the [Setup] section of the wrapper.ini file, which can be found in the root of the Micro Focus product Installation CD. Users should be logged on as the same user which originally installed the product. Use the following command template as a guide to uninstalling products silently: START/WAIT %UNINSTALLER% /FILE=%UNINSTALLTAG%UNINST.DAT /SMS As an example for Net Express 4.0 this would equate to: %UNINSTALLER%=NETEXPRESS40UNINST.EXE and %UNINSTALLTAG%=NETX40 The version of the file related to %UNINSTALLER% resides in the C:\\WINDO
Problem: A text in your application appears differently once executed on another machine or a font routine fails to use a font that is installed in Windows. Resolution: It is possible that the selected font is not a True Type one, and Windows is set to use ONLY True Type fonts. Since Courier for example is not a True Type font, a routine such as PC_PRINTER_SET_FONT would fail with return code 13. Not only this Cobol routine cannot use it, but all applications in Windows. Here are the steps to turn off this setting in Windows: 1. Go to Control Panel 2. Open Fonts 3. Click on Folder Options from the Tools menu 4. Click on the True Type Fonts tab 5. Uncheck the only option in there, which is "Show only True Type fonts in the program on my computer" 6. Click on the Apply button 7. Click on the OK button, and you will be prompted to restart the machine 8. Restart Windows (after saving your work) Old KB# 5274
Problem: Is there any way to run the file conversion process from the command line in a batch job. Conversion of many data files with the tool can be easier and more reliable when done within a batch job. Resolution: This can be done using the following command line: run dfconv profile-fname [input-fname] [output-fname] where: profile-fname is the name of the profile file that contains the details of the task you want to perform. input-fname is optional and is the name of the input file. output-fname is optional and is the name of the output file. The input and output file-names are optional as they can be extracted from the profile file. If you specify file-names on the command line as well as in the profile file, those on the command line take precedence. After conversion, the operating system error level ERRORLEVEL is set to non-zero if an error occurred during conversion. If you are running the con
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.