Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
Problem: How do I define "Sparse keys"? Resolution: Sparse Keys A sparse key is an alternate key for which index entries are not created when the key has a particular value. For example, if an alternate key containg all spaces is defined as a sparse key, index entries for the key are not created when the alternate key contains only space characters. Using this feature results in smaller index files. The larger your key(s) and the more records you have for which the alternate key has the given value, the larger your saving of disk space. To enable sparse keys, use SUPPRESS WHEN ALL in the ALTERNATE RECORD KEY clause in the SELECT clause: file-control. select idxfile assign to "idx.dat" organization is indexed &n
Problem: You want to convert a string (e.g. "12.3") to decimal data type in .NET. Resolution: program-id. DecStrConv as "DecStrConv". environment division. configuration section. repository. class stringClass as "System.String" class decimalClass as "System.Decimal" class convertClass as "System.Convert" . data division. working-storage section. 1 myString object refer
Problem: Trying to set-up Unix publish by populating the Unix .rhosts file in the home directory with the tcp/ip address of the PC. The following error is displayed when trying to verify the server settings: The server refused to execute the Server Control Program. Please check your server configuration. rshd: 0826-813 Permission is denied. Resolution: The Net Express documentation contains the following warning in the Unix Option Guide (Appendix A: Installing Samba and SCP): Warning: The .rhosts file must be owned by the user ID that owns the directory and must not be writable by either group or world ( that is, it must have rw-r--r-- permissions). Also, it cannot be a symbolic link. In this case the problem was due to permissions of the .rhosts file being rw-rw-r--. Correct permissions can be set using the following command in the home directory: chmod 644 .rhosts Old KB# 5803
Problem: Ported project from another machine to a different test machine. Trying to start animation from project. Resolution: One scenario for this error is as follows: The build settings for the EXE were sent to another directory other than the debug folder - **this was found by highlighting the EXE on the left hand side and doing a right hand click and choosing build settings -- the "file on disk" option had been changed to send the EXE to a different location other than the default "debug" or "release" folder. Trying to start animation from the top which was pointing to the debug folder if you hits browse and goes to where the exe is located it starts the easier method is to just highlight the exe on the left hand side and do a right hand click and choose animate Old KB# 5794
Problem: Das Modify Data Tag (MDT) soll als Eigenschaft eines Feldes im Editor gesetzt werden. Kann üblicherweise bereits für ein BMS Feld eingestellt werden, nicht erst im SEND MAP Aufruf. Wo ist der Schalter im Net Express BMS Editor ? Resolution: Das MDT Bit wird durch den Schalter FSET in den Feldattributen gesetzt (Field Properties / General). Old KB# 5790
Problem: If COBDIR is defined with the correct values, as an environment variable for the Windows system, there are no compilation errors. When it is removed from the environment variables in the Windows system and defined with the same values in the Project Properties in Net Express IDE, compilation errors are seen: ASLM: Semaphore failure. ASLM: Errno 1002 Rebuild complete with errors Resolution: The COBDIR environment variable lists the paths of the COBOL system directories where INT, GNT, LBR, DLL and EXE files, which are used by an application, occur. Setting this in the IDE, will cause the COBOL runtime to look only in the path specified. You should set the COBDIR environment variable in the Windows System. If you do set the COBDIR environment variable in the IDE, you will have to prefix your path with '%COBDIR%;' to ensure the application finds the run-time files needed, for example: Variable - COBDIR
Problem: A VB application needs to run a COBOL console application in the .NET environment. Pressing a button on a VB form is required to startup a COBOL Console exe that will accept and display. Resolution: One way would be to have a COBOL COM object (a dll) as a proxy between the VB application and the COBOL Console application. This is the documented method and is the recommended route to take when passing arguments or values between the two languages. Please refer to the documentation on COM in the Getting Started and Distributed Computing books. Please note that you cannot accept and display from a COBOL dll. On the otherhand, you can run a COBOL Console exe directly from the VB with the following statement in the VB code: System.Diagnostics.Process.Start("the COBOL Console exe file") Old KB# 5822
Problem: Converting a data file from EBCDIC to ASCII that contains packed numeric fields (usage COMP-3) using DFCONV from the command line, or alternatively the File Convert data tool from the Net Express IDE, results on corrupted data in the numeric fields. Resolution: The problem may be that the packet fields are not EBCDIC character data, they are just numeric data that follows a particular format (packet decimal) but it always follows the same format whatever the OS. I will give you an example. If you have the following hexadecimal data from the mainframe: 94 2C What would you say it is? It could be the value 924 in packet decimal format, but it could also be the EBCDIC string "k<". If you tell the File Convert tool that your file is all in EBCDIC, it will take it as the string "k<" and generate its ASCII equivalent, in hexadecimal: 63 BC This is perfectly valid if it really was the string "k<", but if that
Problem: 'Verify Server Settings' returned this error. Resolution: Norton Internet Security was enabled on the PC and did not for some reason report that it was blocking access to this IP. When this was resolved, publishing worked OK. Old KB# 5804
Problem: Running a Dialog System application with a Calendar control the following error may occur: OLE returned an error H"800401F3", invalid class string. Resolution: This error indicates that the ActiveX control has not been registered in the operating system. Iit would appear that the Calendar control is supplied as part of Microsoft Office (MSCAL.OCX). You will need to have installed Office on the machine. For more information see: http://support.microsoft.com/default.aspx?scid=kb;en-us;279098 Old KB# 5802
Problem: Deploying a web service and creating a COBOL client for that service in Visual Studio 2005 and Net Express v5.0 Resolution: Steps: Creating the Web Service: Create a blank solution in VS File | New | Project | Other Project Types | Visual Studio Solutions | Blank Solution Add a new web service or an existing one In Solution Explorer, Right click on the solution, Add | New Web Site (or Exisitng Web Site) For New Web Site, in the Language dropdown choose COBOL, then the ASP.NET Web Service Template. The Template already has a Hello World method. Add any methods you want, rebuild and save. Deploying the Web Service: In Solution Explorer, right click on the solution, Add | New Project | Other Project Type | Setup and Deployment | Web Setup Project Under File System on Target Machine, make sure Web Application Folder is selected, then go to Solution Explorer and right click on your Web Setup Project. Select Add | Project Out
Problem: When this statement is run DISPLAY "TEST" WITH BLINK AT 0101. there is a gray colour back ground - is the a limitation? Resolution: Unfortunately, BLINK is not a supported capability under Windows Old KB# 5825
Problem: Release 5.1: The Net Express Animator fails with runtime error 173: Called program file not found in drive/directory ...\\progname.exe while trying to start a 64bit application on a Net Express command prompt via: >mfnetx /debug:progname Resolution: To resolve this issue use instead: >mfnetx /debug64:progname For more information, please s.: Help: Reference: Command Line Reference: Handling Projects and Debugging from the Command Line: Old KB# 5914
Problem: Unable to populate an empty Net Express project from CA Harvest. Resolution: This seems to be caused by an undocumated feature in CA Harvest prior to version 5.1.2. Either upgrade to 5.1.2 or 7 of CA Harvest to correct the problem. Old KB# 5793
Problem: Receiving an error running MFSORT - error is SORT042U. Cannot find MFSORT documentation that lists this message - is there a complete set of MFSORT error messages ? Resolution: Open Net Express Help and click the "Contents" tab. Then open these folders: Reference File Handling Sorting Files Mfsort and click the "Error messages" document. The messages are grouped into 0001 through 0099 and 0100 through 0199. Your error is within the first group. SORT042U Memory allocation failure The mfsort utility was unable to allocate the required memory. Resolution: Try reducing the value of the SORTSPACE environment variable. See Also: Environment Variables SORTSPACE The amount of memory to be allocated to internal workspace for SORT operations. This can be specified in different formats: for example, you could specify 64M, 2G, and 10000
Problem: 1. Program A calls program B. 2. Program B opens a file, then returns control to program A. 3. Program A calls program B again. 4. Program B accesses the file, assuming it is still open from program A's prior call. This causes an immediate "47" I/O declarative error. Apparently, working-storage variables in program B held state from the previous call but the FILE OPEN state did not - the file has reverted to a closed status without ever being explicitly closed. Again this behavior is different from my 3.0 system. Is this also a compiler directive or runtime setup issue? Resolution: The sub program was using EXIT PROGRAM to return to the calling program which using RM directive will close all open files. Adding "ANSI" to the RM directive will allow the EXIT PROGRAM to keep files open. RM"ANSI" Old KB# 5814#AcuCobol#RMCOBOL#netex
Problem: Unable to debug C and COBOL programs at the same time -- why? Resolution: This is expected as you can only use on hard mode/low-level debugger at a time in Windows. Both Visual Studio and Net Express use the low-level debugging support i.e. they conflict. Your options to get around this are: 1) Debug the C in Visual Studio and run the COBOL. 2) Run the C from Net Express (Animate Settings) and debug the COBOL. 3) Run the C from the command line and use CBL_DEBUGBREAK. Alternatively, you could switch to .NET where you can have the C and COBOL mixed together within Visual Studio as managed code. Old KB# 5823
Problem: What does C$OSLockInfo Subprogram do? Resolution: C$OSLockInfo returns the PID of the process that has the record locked when a lock request fails. It should be called immediately after a lock request fails. This subprogram is available only under UNIX; there is no Windows equivalent. Calling Sequence: CALL "C$OSLockinfo" USING processid processid is a four-byte, unsigned COMP-4 numeric item. Old KB# 6123
Problem: How do you right-justify a numeric value? Resolution: If a numeric value is accepted in an alphanumeric field, (which is left- justified) and it needs to be right-justified, try the following code: 01 alpha-item pic x(10). 01 move-item redefines alpha-item pic z(10). 01 num-item pic 9(10). ... accept alpha-item. move move-item to num-item. display num-item. This should cause num-item to be right-justified. A direct move won't work because we pad alphanumeric fields with trailing spaces, and these spaces don't get stripped. Old KB# 6114
Problem: Why is my data not stored as a numeric? Resolution: If you have a group item, all members of the group are treated as alphanumeric, even those defined as a numeric field. For more information, see the Language Reference Manual, under Data Structures. Old KB# 6120
Problem: In Form Designer, there is a blank space above the form, which is a gridded box. How to remove this blank space? Resolution: Make sure FORM is the very first item in BODY. To do this, you will need to look at the Form Designer's tree view and delete any items that are above FORM in the BODY structure. There could be a Heading or Paragraph that is above FORM. Just right-click on it and click on Delete. Old KB# 5826
Problem: Is there a pause, sleep, or wait command in RM/Cobol? Resolution: C$Delay is used to relinquish the CPU for a length of time specified in seconds. Calling C$Delay will allow other programs to run while the original program waits. The amount of delay is not exact. It depends upon the particular machine configuration and the load on the machine. Calling Sequence: CALL "C$Delay" USING seconds "seconds" is a PICTURE 9(n) BINARY, where n can be a digit from 1 to 9. It specifies the length of time, in seconds, to delay. Delays longer than one day are not normally meaningful and should not be used. Old KB# 6122
Problem: How can I use C$SCRD to Read the Display Screen? Resolution: An example source code file is attached. Attachments: SCRD.CBL Old KB# 6118
Problem: Does EL require DCOM services to be running? Standards recommend that DCOM be turned off. Will this affect the way EnterpriseLink is run? Resolution: No, DCOM, Distributed Component Object Model, is not necessary for EntepriseLink. Old KB# 5906#Rumba#EnterpriseLink
Problem: A user cannot save a new page in Builder. Resolution: Seems that the memory that EnterpriseLink Builder was trying to access to save the page was unavailable. Once the user was able to reboot his machine and open Builder and then try to save the page, it worked. Old KB# 5907#EnterpriseLink#Rumba
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.