Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
Problem: I have a line sequential file, with the following file structure: 01 lsfile 05 ACCOUNT PIC 9(9) COMP. 05 MOREINFO PIC X(20). I want to rebuild this file to IDX8 format, using ACCOUNT as the key. Can I use a COMP field as an index, if so, how can I do this? Resolution: The size of a PIC 9(9) COMP is 4 bytes so, in this case, the total record size is 24 bytes. For the lsfile example: 01 a pic 9(9) comp. 01 b pic x(20). $ rebuild lsfile, ifile -r:f24 -o:lseq,ind -t:mf8 -k:1 4 $ rebuild ifile -n File : ifile
Problem: When setting the switch A, the display is working differently in that it sends some blank lines after the execution/animation. Without A the comman line immediately returns after the last Display. For Example with A there are some empty lines after the execution between the last dispay and when the command line returns: Display 1 Display 2 Display 4 /home/support/test Resolution: After the user exits animator, the shell command prompt appears about 15 lines below the remnants of the program's DISPLAY output. For customers who don't want the program's output to be upset by Animator in any way, recommend cross-session animation, like so: Log in as the user that will run the program and cd to the directory from where the program will be run, then type "cobanimsrv". In a separate window, log in as the same user and cd to the same directory, then execute the program normally, as t
Problem: The application is using OpenESQL to retrieve data from an Oracle table. One of the columns is defined as a VARCHAR(5) and contains the value "AN " with trailing spaces left intact. If the WHERE clause of the SELECT statement is compaing the colun to a literal value of "AN " it will retrieve the the rows containg this value. But if the WHERE clause is changed to compare against a host variable of PIC X(5) which contains the value "AN " then no rows will be returned. The user would like to know why. Resolution: Here is the explanation: OpenESQL is working as expected --- the problem here is space padding on varchar fields. For a standard character data type in a database that has a length of 5, "AN" and "AN " are identical; however, this is not the case when it comes to the variable character data type --- indeed "AN&quo
Problem: DECIMAL-POINT IS COMMA is a clause which is used in the IDENTIFICATION DIVISION of a COBOL program which changes the thousand separator (comma) and decimal point (point), which are the default settings, to thousand separator (point) and decimal point (comma). Naturally, if using this clause, the program is compiled and ultimately run to use this format. This is not always desirable and can be resolved at runtime when running the program. Resolution: To change the format during execution the NLS compiler directive must be used. At compile time the checker must know which symbol is used for the decimal point in the program source code itself; for example, in PIC clauses. Then there is the value that is used at run time; for example, the value which is ultimately displayed and written to data files. Normally these are the same. However, if you compile the program with the checker directive NLS then the runti
Problem: Going to Tools | Options | Micro Focus COBOL Tools | OpenESQL Assistant shows the following message on the Options page: ----- This dialog should display an Options page added through extensibility. However, the control to display here could not be loaded. Please re-install the Add-in that displays this page. ----- Resolution: 1) Uninstall current WrapPack 2) Uninstall the Net Express support for .NET a. Go to Add or Remove Programs b. Select Micro Focus Net Express 5.0 c. Click on Change d. Click on Next e. Make sure Modify is selected f. Click on Next g. Click on the drop-down list of Net Express support for .NET h. Select "This feature will not be available." i. Click on Next j. Cick on Install 3) Repair Net Express installation a. G
Problem: The demonstration attached uses Dialog system to simply create a GUI application and retrieve the handle of its Window. This application can be modified and will work as soon as you have the handle ( HWND ) of a GUI Window i.e. you can Set a Timer or|and Set Hook Procedures assuming that you have Window Handles --> The program detailed below could be a generic program which manages Timeouts on more GUI applications ... Resolution: This KB here contains 2 demonstrations i.e.: 2 .ZIP files. The 2 .ZIP files contain a Dialog System Application (DS) .... which is a convenient way to create a GUI Window ==== DEMO 1: ........... The .ZIP file named DSWindowtimeout.zip is the sample demonstration: 1) in the SCREENSET-INITIALIZED event, set at the GlobalL Dialog Level, the handle of the Window is retrieved thru the DS function MOVE-OBJECT-HANDLE, the variable EXIT-FLAG is set to 9
Problem: File status 9/104 when trying to Open a file. Resolution: You specified a data-name for a file-name instead of a literal, and the data item contained only spaces when you tried to open the file. Resolution: Recode your program specifying the correct file-name. Example Wrong: Select myfile assign to file1. open output file1. File status 9/104 Correct: Select myfile assign to file1. move "empl-file" to file1. open output file1. File status 0/0 Old KB# 2009#ServerExpress#COBOL#AcuCobol#RMCOBOL#netexpress
Problem: If you want to store the date in the DATE-COMPILED paragraph of COBOL source then specify the DATE directive when compiling. Resolution: Specifying the "DATE" compiler directive will put the date in the DATE-COMPILED paragraph and at the top of each page of the listing. The sytax is as follows: DATE "string" DATE (with no string) NODATE The "string" is an alphanumeric literal The date and time, available from the operating system, are automatically inserted when you specify DATE. You can, however, enter the date yourself as the parameter. With NODATE, the paragraph is left unaltered. With DATE, the operating system date or the string you enter appears at the top of each page of the
Problem: The windows system seems to hang. The task manager reported up to 100% CPU time on a process called csrss.exe. Resolution: csrss.exe is an important process in the Windows system and should NOT be terminated, see: http://www.processlibrary.com/directory/files/csrss/ A known problem can be found in the Microsoft's knowledge base article 555021: http://support.microsoft.com/kb/555021 Furthermore, the csrss.exe might be cloned by malicious software writers. That said, anyone with a misbehaving csrss should definitely run malware scans, preferably at least two different ones (eg an antivirus utility and an antispyware one). --------------------------------------------------------------------- csrss is the userland side of the Win32 subsystem. It handles user-mode Windows API and graphics API calls, passing them on to the kernel. Consequently it's a bottleneck (so a variety of performance problems will manifest in it), and it's somewhat
Problem: Release: 5.0 .NET After passing a TreeView object reference to my own (not Painter created) class, there is no Intellisense available in this class which shows the methods for a TreeView. Only 4 standard methods like "equal" are offered. Resolution: A reference to Visual Studio 2005 System.Windows.Forms is required in the references of the project of the own class. The Intellisense is available for the notation SET Myobj :: "MyMethod"( ... ) and also for the Micro Focus extended notation INVOKE MyObj::"MyMethod" ... but there is no Intellisense, when the invoke is written in standard notation as INVOKE MyObj "MyMethod" using ... returning Old KB# 1551
Problem: In the unlikely scenario of accidentally deleting or corrupting the NetExpress registry settings, there is now a very easy way of resetting them back to their original state. Resolution: Go the the Control Panel > Add/Remove Programs > select NetExpress > Change > select the Repair option. In so doing this will repair any deleted or damaged NetExpress registry settings. Old KB# 1603
Problem: This Net Express 5.0.NET package includes 2 DVDs covering a Microsoft Visual Studio 2005 Standard Edition to be installed before using the Net Express 5.0.NET environment. However, there is no CD-/DVD-device available to install Microsoft's VS2005 Edition, thus it was copied onto a network share to install from. Is there a recommendation how to act safely because it can fails to obey "changing the discs" while installing VS2005? Resolution: Yes, please refer topic 1.3.6. from the link below describing how to install VS2005 safely from a network share. http://msdn.microsoft.com/en-us/library/aa718687.aspx Old KB# 1604
Problem: Net Express 4.0 Command prompt MFNETX /DEBUG:program The program is local Why does debug want to connect to a remote machine? Resolution: First check a project under Net Express, animate tab, settings to see if remote and remote machine is set. If remote is set, unsetting that will clear the problem. In some cases the animate setting will not reflex what is in the registry. NOTE THAT CHANGING THE REGISTRY INCORRECTLY COULD CAUSE PROBLEMS WITH THE MACHINE. Windows START BAR RUN REGEDIT Look at the following location. My Computer\\HKEY_CURRENT_USER\\Sofeware\\Micro Focus\\Net Express\\4.0\\IDE\\Execute Configuration. Look at the entries for REMOTE and Machine Name. If REMOTE is ON set it to OFF to resolve the problem. Old KB# 1567
Problem: Background information: Indexed files in Micro Focus COBOL can have different formats or organizations. An indexed file's format is decided at the time the file is created, under the control of the IDXFORMAT compiler directive. The default IDXFORMAT value is 1, meaning "C-ISAM", whereas the value 4 means, "an optimized form of Micro Focus indexed file format". Here is a table summarizing common formats: 1 C-ISAM format. 3 Micro Focus indexed file format. 4 An optimized form of Micro Focus indexed file format, for fast duplicate key handling. 8 Large indexed. For more information on indexed file formats, look in the main index of the Server Express documentation, under the keyword "IDXFORMAT", and check each of the references there. The question in this case is: An existing file is of type IDX4 (as shown by "rebuild -f <filename>"), but the file is expec
Problem: When deploying a service to the local host using cobimtk the following error appears "Fatal Error: MccListServiceProviders returned 12 (an external component failed)" And mccerror.txt contains the following: Sun 19 Nov 2006 12:29:50 PM PKT BindToDS: MLDAP error binding to provider: 0x51 SERVER_DOWN Sun 19 Nov 2006 12:29:50 PM PKT MccDoListServiceProviders: no configured directories are available Sun 19 Nov 2006 12:29:50 PM PKT MccListServiceProviders: DoListServiceProviders failed: (12) an external component failed Resolution: The errors in mccerror.txt mean that MLDAP couldn't connect to Micro Focus Directory Services (MFDS, running as mfds) and none of the configured directories are available. (By default, the only directory is MFDS at localhost:86.). So the first thing to check is that mfds is running ok on the machine ps -ef | grep mfds and that the Micro Focus Enterprise Server Administration pages can b
Problem: The ability of a COBOL program to store and retrieve the values of certain data items and objects from within any Web page of an application that will also maintain its state between multiple client requests is essential in ASP.NET development. Resolution: The following code will create a new session variable called "MyName" which will be associated with the value of the "Text" property of the wsName object. Session variables are always stored as a name/value pair where "value" can refer to anything from a simple string to a complex COBOL object instance. The actual location where Session variables will be stored is dependent upon the Session state configuration options set within the applications Web.config file. The default storage location is "InProc" which means that the Session data will be stored within the memory space of the ASP.NET worker process "aspnet_wp.exe". invoke self::"Session&
Problem: How can one access locale date/time within Cobol? Resolution: This demo demonstrates using strftime to format the local time in the default representation for the current locale: $set sourceformat(free) mf working-storage section. 01 time-parameters. 03 time-now pic x(4) comp-5. 01 localtime-parameters. 03 localtime-tm pointer. 01 strftime-parameters. 03 locale-time pic x(60). 03 buffer-size pic x(4) comp-5. 03 format-string pic xxx value z"%c"
Problem: response file ( containis list of .OBJ to static link in .EXE |DLL with CBLLINK see .BAT file pasted below Resolution: .BAT file showing the use of a response file containing a list of .OBJ to be static linked in the .EXE or DLL to be generated The interesting command in shell below is: cbllink -v -d -OaDll.dll @Cbllink.fil see that the CBLLINK command uses here the file Cbllink.fil which contains a list of .OBJ: TOclP1.obj TOclP2.obj TOclP3.obj TOclP4.obj TOclP5.obj ========================= @echo off set ProgModelete=P1 del TOclP*.* rem ................................................................................. :CopyFromP1 copy %ProgModelete%.cbl TOclP1.cbl copy %ProgModelete%.cbl TOclP2.cbl copy %ProgModelete%.cbl TOclP3.cbl copy %ProgModelete%.cbl TOclP4.cbl copy %ProgModelete%.cbl TOclP5.cbl :Compil cobol TOclP1.cbl,TOclP1.obj; cob
Problem: This error occurs when trying to run rebuild on UNIX or Linux Resolution: This message is saying two things: first, rebuild wants to give you a message, and secondly, that it cannot find the file of appropriate messages. This normally happens when the LANG environment variable is incorrect. typing 'locale' will show the current setting. List the available LANG values using ls $COBDIR/lang Either export LANG equal one of the supported values or try setting a link by typing 'ln -s $COBDIR/lang/C default' This should at least cause English messages to be displayed if the correct LANG value hasn't been supplied. Old KB# 2092#RMCOBOL#ServerExpress#netexpress#COBOL#AcuCobol
Problem: How can I store the .idy file, used for animation, in a seperate directory when compiling a program? Resolution: You can set the COBIDY compiler directive when compiling to store the .idy file in a separate directive. The syntax is as follows: COBIDY "path-name" The default is NOCOBIDY. If you do not specify path-name, the path-name in the COBIDY environment variable is used; if the environment variable contains multiple path-names the first of them is used. With NOCOBIDY, the .idy is written to the same path as the .int file. Old KB# 2001
Problem: Dialog System - How are multiple lines of data items highlighted in a List Box control? Resolution: Set the Selection Type to control how the list items are selected at run time. Select Single so that only a single list item can be selected in the list box. Select Multiple so that more than one item can be selected in the list box. The user must click the mouse over each item in turn. Select Extended so that more than one item can be selected in the list box. The user must click the mouse and drag it over the items to be selected. The GET-LIST-ITEM-STATE function can then be used to determine which items have been selected. Old KB# 1577
Problem: My application must create a large file. I define the File Handler configuration file with the FILEMAXSIZE option that is validated to 8 . All times the file status 9/194 is displayed Resolution: The line of the File Handler configuration file [XFH-DEFAULT] must be write without space between 'T' and ']' . If this line is written [XFH-DEFAULT<space>] the following options are not validated . Old KB# 2031#netexpress#ServerExpress#AcuCobol#RMCOBOL#COBOL
Problem: Net Express 5.0 has a .NET support for Microsoft Visual Studio 2005, but is it also supported in Microsoft Visual Studio 2008? Resolution: Net Express 5.0 is only supported with Microsoft Visual Studio 2005. It is however planned that Net Express 5.1 will be supported with Microsoft Visual Studio 2008. Old KB# 1555
Problem: This message is displayed under AIX 5.2 at the compilation that is made with a makefile Resolution: This message is displayed because the value of the environment variable LIBPATH is not passed to the make command by operating system . The temporary solution is to insert before the cob command the line : <TAB>LIBPATH=$COBDIR/lib;export LIBPATH;\\ example : all : cob -x prog.cbl is replaced by : all : LIBPATH=$COBDIR/lib;export LIBPATH;\\ cob -x prog.cbl Old KB# 2020
Problem: Application is getting a "77 Internal ISAM module error" when trying to read a mainframe file from a Net Express program. Resolution: The problem is that the ISAM file was brought down directly from the mainframe without conversion and tried to read it with a mainframe program which was recompiled under Net Express. It is necessary to first convert the file to a sequential file in ASCII format on the mainframe and then use the Data File converter to create a Micro focus readable file format. Old KB# 1539#RMCOBOL#netexpress#ServerExpress#AcuCobol#COBOL
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.