Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
Problem: How to create an icon side file for Dialog System's screensets? Resolution: 1. Open a text editor (e.g. Notepad) 2. Add a line for each icon with the following format: unique-number ICON icon-name.ICO e.g. 200 ICON Bank.ICO 3. Save the file with RC extension 4. Start a Net Express Command Prompt 5. Change directory (CD) to the location of the RC file 6. Compile the resource file as follows: RC -R TheRCfileName.RC<enter> 7. Link the resource file as follows: LINK -MACHINE:I386 -DLL -NOENTRY TheRCfileName.RES<enter> 8. Edit the ICN file 9. Add [win-icons] if it is not there yet 10. Add the icons below [win-icons] as follows:
Problem: What is causing an Error 28[14] in LoadDocument during XML Import? Resolution: One main cause of this is that the schema file (.xsd extension) is among the model files. If the schema is present, the LoadDocument validates the input document against the schema. Unfortunately, most input documents are not schema-valid at this time, so the LoadDocument fails. Old KB# 4710
Problem: What does error -119 from ComponentMoveData on Install mean? Resolution: The files listed in the ERRORFILENAME system variable are those that could not be registered. Make sure these files are indeed self-registering (that DllRegisterServer and DllUnregisterServer are listed in the Export table). Old KB# 4708
Problem: What does XML-Status=050, Missing XML Parser mean? Resolution: On a Windows system, this would indicate that MSXML has not been installed. XML Extensions normally installs MSXML when it installs xmlif.dll. You can also get MSXML directly from Microsoft. Be sure to check the XML Extensions documentation for the correct MSXML version number. Old KB# 4709
Problem: How can I preserve horizontal tabs in my input to process a tab delimited file? Resolution: Use the RUN-SEQ-FILES configuration record. (See chapter 10 of the RM/COBOL User's Guide.) In particular, set TAB-STOPS=0. In this way, horizontal tabs are passed through to the COBOL program without expanding them into spaces. The attached program demonstrates this, as well as: - how to be informed of the input record length - how to symbolically define the horizontal tab character - how to unstring the record, and - how to convert numeric strings to numbers Unzip the attached file. Compile the COBOL program, and run it using the config.cfg file as the configuration file. Attachments: tabstops.zip Old KB# 4699
Problem: Is there a CodeBridge wrapper for Windows FindFile functions? Resolution: Attached to this solution is a zip archive containing the necessary CodeBridge template, a test COBOL program, and a pre-built DLL. Attachments: rmfindfile.zip Old KB# 4697
Problem: How can I diagnose a 30, 22 error on InfoExpress on a UNIX/Linux system? Resolution: The full error message is: COBOL I/O error 30, UNIX error 22 On UNIX/Linux systems, this is defined as: #define EINVAL 22 /* Invalid argument */ It means that a system call was made from InfoExpress using an arguement that makes no sense. This problem has been reported on two known occassions, in both instances, the problem was due to a misconfigured hosts file, on the line with loopback address. In particular, this line should always look exactly like this: 127.0.0.1 localhost You should examine this file on both the client and the server system. Old KB# 4701
Problem: How can I fix 30, 12005 errors on InfoExpress? Resolution: Error codes in the 12000 range are generated by the Windows Sockets interface portion of the RM/InfoExpress Windows client program, or the Windows server program, and represent memory allocation failures or unexpected conditions. Error 12005 is "Unexpected event occurred during initial receive". Follow these suggestions to resolve the 12005 error: 1. Make sure the client's IP address is in the hosts file on the Domain Name Server (DNS) machine. If you are using DHCP to assign the IP addresses, you could set up "dummy" entries in the host file. For example, if the DHCP server is assigning address for 1.1.1.15 through 1.1.1.18 the hosts file might look like this: 1.1.1.15 dhcp-15 1.1.1.16 dhcp-16 1.1.1.17 dhcp-17 1.1.1.18 dhcp-18 2. In the rmixclnt.ini file on the client machine, add 'UseBlockingIO=Yes' under the [Options] heading and 'KeepSession=No' under th
Problem: How can I export a large number of repeating data elements in XML? Resolution: Some uses of XML manipulate large documents that consist of a large number of repetitions of a few data items. An example of this is the ability of many relational database packages to output result sets as rows encoded in XML. One very straightforward way to create these large documents is to use the LINE SEQUENTIAL file access method and COBOL procedural statements such as STRING to create text records. For simple applications where requirements are well understood and stable, this approach should work well. The attached example uses a different approach. The output is segmented into pieces that can be conveniently accommodated in a COBOL array (using the OCCURS clause). These pieces are then exported, using XML EXPORT FILE, into a temporary XML documents. Finally, when all the pieces have been exported, the temporary d
Problem: Can I set the WOW tooltips to use Kanji? Resolution: Easy. See the attached example. It's really just a question of setting the tooltiptext property with the CORRECT Kanji data. Attachments: tooltip.zip Old KB# 4707
Problem: How can I get the WOW 10.0p patched dlls? Resolution: The new dlls are in the attached zip file. Please see the included text file for more information. Attachments: WOW10.0p.zip Old KB# 4704
Problem: How can I scroll a WOW form? Resolution: Out of the box, WOW does not provide a scrolling functionality. However, it does provide all the pieces needed to implement. (Visual Basic also doesn’t provide this type of scrolling support but with some programming you can add the desired functionality.) Here's how: 1. Set the form’s AllowFilterEvents property to false. 2. Add a container control to the form (the example program included uses the free Innovasys FramePlus control, as it allows the frame to be set to none, making it transparent to the user - see attached). 3. Place all the other controls inside the container control. 4. Add code to set the container control's size and position when the form is created. This allows you to define the scrollable ‘viewport’. 5. Add code in the form’s EVENTSEXTENSION section to trap the WM-VSCROLL and/or WM-HSCROLL events (messages). 6. Add code to handle the scro
Problem: How can I get the WOW 10.01 patch? Resolution: The new files are in the attached zip file. Please see the included text file for more information. There is also a test program attached that shows how to use the new functions provided for defect #5648. Old KB# 4705
Problem: Can EnterpriseLink Cluster Server work with JSP or ASP? Resolution: SmartCOM is often used to access integrated host and application data delivered from EnterpriseLink through VBScript in a Microsoft ASP. EnterpriseLink comes with an example of accessing a host application from VBScript instead of from a Web page. This example, smartcom.asp, is in your EnterpriseLink installation folder under the scripts subfolder. To run the example, you use the sample repository provided with the HollisCOM application. You can start the example with the URL http://localhost/stdocs/ssdemo/smartcom.html. This simple form accepts two inputs from the user and then invokes the ASP application. Old KB# 5025#Rumba#EnterpriseLink
Problem: What method for adding features to RM/COBOL was used prior to version 7.1? Resolution: Beginning with version 7.1 of RM/COBOL for UNIX, the customiz/relinking method for adding features to RM/COBOL was replaced with a simpler, more flexible system using optional support modules. It is no longer necessary or possible to relink the runtime system, the compiler, or the recovery utility. The customiz Bourne Shell script that was available in previous versions of RM/COBOL is no longer available. UNIX versions of RM/COBOL prior to 7.1 allowed non-COBOL subprogram libraries to be linked into the runtime by modifying the source file sub.c and using a Makefile generated by the customiz script. The source file sub.c is no longer present on the distribution media for UNIX. However, the source file usrsub.c and the various header files that it needs (all present on the RM/COBOL for UNIX distribution media and in the installation direc
Problem: How do you calculate the value of the "Cache Size" in the Enterprise Link configuration page? Resolution: The cache setting in EnterpriseLink is very simple. It is a single number which represents the number of screens or pages that are held in memory. So, if you have 150 pages and 200 screens across all the EL projects, a number of "200" would guarantee that all pages and screens are held in memory. Usually, an EnterpriseLink project follows an 80-20 access pattern: 20% of the pages are accessed 80% of the time. The remaining 80% of the pages are accessed the remainder of the time. This means that you don't need to have a cache size greater than the number of pages. Since EnterpriseLink uses a least-recently-used algorithm for cache replacement, only the most used pages and screens will remain in the cache. Setting the cache size to one-half the number of screens wo
Problem: How can I run the RPCPlusServer as a service? Resolution: There are two ways: 1. There is a Windows Resource Kit program (srvany.exe) that will run any program as a service (see Microsoft KB ID 137890). 2. Use the RPCPlusService described in Chapter 9 of the RPC 1.4 User's Guide, which you can download from here: http://www.liant.us/docs.html Attachments: RPCPlusService.zip Old KB# 4702
Problem: How can I get the WOW 10.01 patched dlls? Resolution: The new dlls are in the attached zip file. Please see the included text file for more information. Attachments: WOW10.01 .zip Old KB# 4703
Problem: When you delete a record from a C-ISAM index file, it doesn't phisically disappear straight away. That record gets marked as deleted but the information is still there, although it can not be accessed to by a COBOL program or any tool. Within time that free space may be used to store new records and the information that was there before is then completely lost. But while the information is still there, you may want to undelete a deleted record if it happened by mistake and there are no backups of the file. This behaviour is similar for files with Micro Focus format instead of C-ISAM. Resolution: Currently there is no tool in the products to do this. As we don't own the CISAM format we can not give you the information about its internal structure, but if you edit the data part of the file with a hexadecimal editor you will see that at the end of each record there is an extra byte that can contain: - the value x"0A" for a norm
Problem: What is missing in app server Resolution: The error was caused because the compiled program specified testcover compiler directive and did not ship the test coverage files. From the docs- If you want to use test coverage in a production system, you can compile TESTCOVER into your production system. However, we do not recommend this because of the high overhead costs. You will need to ship the files testcover.dll and gntcfg.dll in order for your users to be able to run the program if it has been compiled with TESTCOVER. You will also need a .tcf file, and your user needs to set up the environment variable accordingly. You need to store the .idy and the .cbl or .cpy file for the production code so that you can run reports on the .tcz files when you get them. This will enable your user to produce .tcz results files. In order to produce reports, you need the Net Express tcreport.exe file, as this is used to match the source lines in the code with the resu
Problem: The HCO Precompiler issues an error message, if the SQLCA structure is missing. The program does not contain an EXEC SQL INCLUDE SQLCA Resolution: SQLCA will be generated by the HCO precompile, if you set the compiler directive DB2(GENSQLCA) . Old KB# 5039
Created On: 29 June 2012 Problem: How do I scan a comma-separated record (CSV)? Resolution: See the attached file if you have someone supplying data in a comma-separated (CSV) file. Note that this code provides the skeleton of scanning comma-delimited records, including detecting fields that are enclosed in quotation marks ("). Subsequent conversion of numeric values, embedded quotation marks, and other anomolies you might find in 'real life' are not addressed. Attachments CSV Example.txt Old KB# 4696
Problem: Does RM/COBOL take advantage of multiple processors? Resolution: Yes, provided there are enough users to cause the CPU to be a bottleneck. While the RM/COBOL runtime component uses a single processor thread for running the application instance, multiple application instances can use multiple processors simultaneously, both for the application code and the file i/o processing. So, if the CPU is a bottleneck is due to load from multiple users of the application(s), then the more processors the better. If the CPU is not the bottleneck, or a single user is alone saturating the CPU, then more processors will make no difference. Si, con tal que haya bastantes usuarios para hacer la CPU ser un embotellamiento. Mientras el componente RM/COBOL Runtime utiliza un procesador hilo (thread) para correr un caso de la aplicación, múltiples casos de aplicaciones pueden utilizar múltiple procesadores simultáneamente, para ambos el c
Problem: How do I use the RM/COBOL LIKE condition? Resolution: The LIKE condition Using the LIKE condition is a relatively effortless way to match the content of any display data item against a pattern that can express just about any possible desired value. For example, suppose your program needs to verify that the user has entered a well-formed email address in a form field. Let's say a well-formed email address satisfies the following rules: 1. Leading and trailing spaces are ignored. 2. Preceding a single required "at sign" character ("@"), there are one or more characters from the set of "word" characters, (digits, uppercase and lowercase letters), plus the period, hyphen, and underscore characters. 3. After the "at sign", there are one or more "word" characters, plus the hyphen and underscore characters, followed by a period. 4. Rule 3 can be repeated one or more times. 5. Finally, two to four uppercase or l
Problem: What can cause runtime error LOC 829 on UNIX/Linux systems? Resolution: This error occurs when the RMdaemonR or RMdaemonC is not able to start successfully, or dies for some unknown reason. Typically, a regular user is not able to execute the Runtime or the Compiler, but root can. This error can be caused by security monitoring software detecting the daemon doing a setuid 0 (so it can run as root) and killing it. In one reported instance, a third party security package called eTrust was in use. Since software initiated by a regular user gaining root privileges is considered a security issue, the monitor was killing the process silently. It needed to be modified to allow the daemon to proceed. Old KB# 4694
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.