Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
Problem: INSERT with ACCESS ODBC gets SQLCODE -106 optional feature not implemented Resolution: Compile the application with the SQL(USECURLIB=YES) compiler directive. Old KB# 7103
Problem: We have done web service development using VB and C# in the .NET environment, and would like to incorporate COBOL. However, it appears that the University edition of COBOL .NET restricts the creation of a web service. It compiles, and is visible in IIS, but the required files to reference the web service are missing. Resolution: You cannot deploy a Web Service created with Net Express UE, as it does not include Enterprise Server and its associated facilities. You will need a Server installation to create and deploy a Web Service. Old KB# 7102
Problem: Normally, when inserted the Net Express CD starts automatically by Autostart.The setup.exe in the root directory is started and launches the Internet Explorer to start this process. How can be the Micro Focus Net Express Setup.exe started when this is failing? Resolution: 1. You may try to copy the CD to your c: drive and start the setup.exe from there. 2. if this also fails: - start a CMD prompt - insert the CD into the drive - change the actual directory to the root directory of your CD drive - enter: \\setup\\setup.exe /ini=\\setup\\nxsetup.ini to start the Micro Focus Net Express setup. Old KB# 7100
Problem: The ODBC trace is somewhat difficult to decipher. Are there any other diagnostic capabilities available from OpenESQL? Resolution: Yes, you can compile your applicaion with the SQL(TRACELEVEL=n) directive. Notes : 1. The trace filename is actually OpenESQLTrace.processID.log . If your application is compiled with the SQL(DBMAN=ADO) directive, the trace filename will be ADOTrace.processID.rununitID.log . 2. If the OpenESQL application is executing under the auspices of ASP.NET, the effective user ID under which the application invokes is not your Windows user ID -- instead, the ASPNET user ID -- hence the location of the trace file may not be where you expect it. 3. If you have installed the ESQ08N40.EXE FixPack, or ALL06N40.EXE WrapPack , OpenESQL will write out trace files to the current directory. If the process doesn't have write permissions to the current directory, the trace file will get written to the directory specified by the TEMP
Problem: Problem with trying to drop/delete a table in XDB and getting error X153 no space for locks Resolution: Increase the sort space size in the XDB Server Configuration Old KB# 7135
Problem: How to replace a single file using: run library file.lbt and how to note down? Resolution: a) for a single file, i.e. RUN LIBRARY FILE1.XXX LIBRARY1.LBR = LIBRARY1.LBR b) within .LBT file, i.e. FILE.LBT: FILE1.XXX LIBRARY1.LBR = LIBRARY1.LBR RUN LIBRARY FILE.LBT Old KB# 7107
Problem: If it is desired to debug .NET code (C# or VB .NET) that is invoked from an unmanaged COBOL program, please try the following: In the Visual Studio .NET Project Properties menu, select Configuration Properties, Debugging. Make sure that "Enable Unmanaged Debugging" is set to true and that "Start Application" specifies the name of the COBOL executable (or the runw.exe trigger program if using .int or .gnt code). The "Debug Mode" property should be "Program". When debugging, the COBOL program should run and execution should stop at the breakpoint you set in the .NET code. Resolution: If it is necessary to debug .NET code (C# or VB .NET) that is invoked from an unmanaged COBOL program, please try the following: In the Visual Studio .NET Project Properties menu, select Configuration Properties, Debugging. Make sure that "Enable Unmanaged Debugging" is set to true and that "Start Application&qu
Problem: Use an environment variable for the compiler directive OUTDD($OUTDDENV) The $ is used to let the runtime know that it is to read this environement variable when the program does the first DISPLAY. Resolution: $SET INITCALL(MFEXTMAP) OUTDD($OUTDDENV) * * TO CHANGE THE CONTENTS OF AN ENVIRONMENT VARIABLE, * MFEXTMAP MUST BE LOADED. * IDENTIFICATION DIVISION. ************************************************************** * PROGRAM-ID. OUTDDENV. * ******************************************
Problem: What functions are supplied with Net Express that allow an application to establsih if a file exists within a given path and then also what functions allow you to delete it? Resolution: There are 2 routines supplied with Net Express that can check\\delete files in given paths - including paths that contains spaces. Please note that these functions do not work against paths that contain wildcard characters. The first function is CBL_CHECK_FILE_EXIST - this checks whether a file exists and returns details if it does. The other is CBL_DELETE_FILE Both routines are fully documented in the Net Express help. It is recommended when specifying the path concerned that it is enclosed in quotes so as to ensure that the spaces in the folder names are accepted. Old KB# 7114
Problem: COBOL Web Service Clients default to PIC X(100) for Strings. This can cause issues as more than 100 characters may be returned in a string. Resolution: You can amend the WSDL for a WebService to specify the expected string size and then generate the COBOL Client from the amended WSDL. An example of this is below:- <?xml version="1.0"?> <definitions name="CATrafficService" targetNamespace="http://www.xmethods.net/sd/CATrafficService.wsdl" xmlns:tns="http://www.xmethods.net/sd/CATrafficService.wsdl" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:new="new"> <types> <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="new"> <simpleType name="string2"> <restriction base=&q
Problem: How do you define a custom collating sequence? Resolution: Check the language reference manual. Below is the syntax that can be used to define an alphabet and how to make that alphabet the collating sequence for the program. Changing the collating sequence in this manner impacts everything in the program, if statements, condition name conditions, key sequences in randomly accessed files and sort statements. The alphabet is just an ordered series of literal values. Ranges can be specified with through/thru. environment division. configuration section. object-computer. program collation sequence is alphabet-name-1. special-names. alphabet alphabet-name-1 is literal-1 thru literal-2 literal-3 also literal-4. For an example, see attach
Problem: If an application creates a .NET dialog box and then tries to make it modal to an unmanaged character-base app built as graphical, it won't seem to be purely modal. This is because the text window runs in its own thread so if the dialog box is created in the main thread each window will be using a different message queue and so the text window will still be able to process messages (such as Close). There is an EnableWindow API on Windows to enable/disable message processing on a window, that could normally be used within a Dialog Box, but there may not be any equivalent in .NET so the C# code would need to access it via a platform invoke to the unmanaged API. The application would call EnableWindow(hwnd, false) when the dialog box is entered (on the Activate event maybe) and EnableWindow(hwnd, true) before the dialog box is removed (on the Closing event). Resolution: If an application creates a .NET dialog box and try to make it modal to an unmanaged
Problem: In Dialog System is there a password field type entry field? When entering the password into this entry field, an asterisk will appear for each keystroke. Resolution: In Dialog System use Object -> Entry field. Right mouse click on the entry field object and click on Properties. An Entry Field Properties window will appear. Click on the Options tab and checkmark Noecho. Next, click on the OK at the bottom of the Entry Field Properties window. By checking this Noecho option, asterisks will appear for each keystroke that the user enters into this entry field object. Old KB# 7139
Problem: I'm getting a return File Status code of 35 with a spacey directory/file name: MOVE 'C:\\PROGRAM FILES\\SAMPLEFILE.TXT' TO WS-FILE. Resolution: When using dynamic file assignment, you need to use double quotes for spacey paths. If you were using static file assignment it isn't necessary- Because of the spacey path you need to change this move statement MOVE 'C:\\PROGRAM FILES\\SAMPLEFILE.TXT' TO WS-FILE to add " s around the file path and name (i.e. single quote double quote) MOVE '"C:\\PROGRAM F
Problem: Many developers find that older COBOL applications or those written for other COBOL compilers like WANG or DEC, demonstrate numeric entry that seems simpler than what Micro Focus COBOL expects. Fewer keystrokes are needed to complete the entry and decimal alignment of edited numeric fields doesn't require the entry of a final period (.) in order to complete the ACCEPT command. Here's a trick that works for all versions of Micro Focus COBOL, whether you are using UNIX products like Server Express or Object COBOL Developer Suite or the PC products like Net Express or the older COBOL Workbench. Resolution: Using this short demonstration example: Program-ID. Numtest. WORKING-STORAGE SECTION. 01 MY-NUMBER PIC 9(09).
Problem: Net Express 3.0 installation on Windows 2000 service pack 3, Error duing installation of service pack 1, error 255 when trying to install compiler fixpack. Resolution: Uninstall Net Express 3.0 and prepare machine for reinstall. Suggest installing Net Express 3.0 into a folder with no spaces, for example-> c:\\ne30 step 1) uninstall Net Express 3.0, retain license step 2) make sure no folders exist from previous installation attempts step 3) set tmp and temp environment variables in both system variables and user variables to c:\\temp How to set temp and tmp: goto My Computer and right mouse click and select properties &nbs
Problem: Session Recorder enables the recording of all keystrokes and screen images during the execution of a COBOL program. This was available in the old Micro Focus Workbench. Resolution: Session Recorder is not available in Net Express. Note: this feature is however available in the Micro Focus Object Cobol or Micro Focus Server Express on Unix. Old KB# 7123
Problem: Net Express was recently installed on a computer. When trying to run it, a Semaphore failure error is reported. It is necessary to uninstall Net Express 4.0, clean up registry and previous installed folders, reboot, and reinstall Net Express 4.0 Resolution: step 1) control panel -> administrative tools-> services stop micro focus directory server stop micro focus xdb server step 2) control panel -> add/remove programs and uninstall Micro Focus Net Express 4.0 step 3) start -> run -> regedit if net express is the only micro focus product you have installed then search and delete "micro foc
Problem: Is it possible to load multiple COBOL source files in to the same instance of the Net Express IDE by double clicking on files in Explorer? Resolution: It is not possible to configure the Net Express IDE in this manner. It would require Micro Focus to add a DDE/OLE interface layer and this is something that is not currently present. Alas, it is not the sort of functionality that will be added given our strategy of further Visual Studio integration in the future. Old KB# 7121
Problem: Can I specify Microsoft's linker options like -version:<major>.<minor> using CBLLINK? Resolution: No, CBLLINK does not forward options to Microsoft's link.exe. The options -version:<major>.<minor> can be specified by a different syntax in a .RC file, which can be included into the link process after being compiled to a .RES file. Alternatively start CBLLINK using options -V and -K -V means 'verbose' -K means 'keep temporary linker files' Rerun the link.exe with additional parameter -version:<major>.<minor> Old KB# 7095
Problem: ODBC errors when accessing data using Intelliview and an XDB ODBC Driver Resolution: These errors are caused by having the "XDB" check box option set in the ODBC Server configuration. Changing this to DB2 resolves the problem. The XDB is for use with old versions of the XDB Server. Old KB# 7125
Problem: Compiler error "unknown class" when building a .NET project that references classes in another project. Resolution: If you reference a class that exists outside the project you are building, be sure to include the namespace for the class being referenced in the repository. In Net Express with .NET, there is a "Default Namespace" under the "Common Properties"..."General" area. You can see the project properties by right-clicking on the project name in the Solution Explorer window and choosing "Properties" from the pop-up menu. The namespace will default to the project name. If you blank-out this name, you don't have to prefix the class name with a namespace in the repository. As an example, if I defined a class called "MyClass" in the "MyProject" project with a default namespace of "MyProject", then you would reference this class in the repository as: REPO
Problem: How to use the data file editor for files with non DAT extensions? Resolution: The extensions must be added before the file is added to the project. If you have a data file with an extension of XYZ that you would like to use the data file editor within a Net Express project you will need to set the extension XYZ to data. PROJECT menu Extensions Add XYZ Data Select the OK button and then the Close button Now, by adding the file to the project, it will be setup as a data file. Old KB# 7090
Problem: When attempting to create a window that has 3 fields that occur 7 times per line for 20 lines the following message is reported: "You have attempted to add more than 255 gadgets to a window". Can a window contain more than 255 gadgets? Resolution: The answer is that a window cannot contain more that 255 gadgets. There is a limit in Dialog System that prohibits more than 255 objects (or gadgets) PER window. This is documented under Dialog System Limits in the Dialog System Help or just type "limits" from the Help Index and double-click on the "Limits" topic. That would show the Dialog System Limits. Old KB# 7138
Problem: Is there a variable (or function), similar to file status code, that can be queried to find out if a file was opened for input / i-o etc ? Resolution: You can use the "fcdreg" compiler directive, the "FH--FCD" special register and the "xfhfcd.cpy" copy book to gain access to the "fcd" file descriptions compiled into your program. Define your "fcd" in your linkage section (1 myFcd.) followed by a copy statement retrieving the "xfhfcd.cpy" COBOL copy book delivered with your development system. In your procedure division set addressability to your "fcd" in your linkage section with a set statement. Compile your program with the "fcdreg" and "qual" compiler directives. 000010$ set fcdreg qual 000020 file-control. 000030 select myLogicalFile assign 'MYDATA.DAT' ... 000040 linkage section. 000050 1 myfcd. 000060 copy xfhfcd.cpy. 000070 procedure division. 00008
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.