Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
Problem: Customer inadvertently closed the screen component toolbox in AcuBench by clicking on the small "x" in the upper right corner of the toolbox and is unable to get it to display again using the View\\Screen Component toolbox menu item or the Component toolbox push-button. Resolution: A search of the registry for CASEMAKER shows that entries for AcuBench appear in: HKEY_CURRENT_USER\\Software\\CASEMaker\\AcuBench720 This includes a sub-key of Component Toolbox. Once the AcuBench720 key was deleted and AcuBench restarted the screen component toolbox now appears correctly. Old KB# 2647
Problem: Where to find .def copy to interoperate with Word, Outlook, Crystal Report? Resolution: You can create your own .def copy using ACUCOBOL-GT utility axdefgen.exe located in the BIN directory of AcuGT installation. Under Components you can find a list of all COM installed into your computer. Under Libraries all ActiveX are listed. Old KB# 2721
Problem: AcuSort uses field parameters offset, length, type, and order. The offset and length are easy to determine if the field is at or near the beginning of the record and there is no packed data. What if the field to be sorted on is somewhere in the middle of a very large record? Is there a simple way to determine the field parameters? Resolution: Generate an extended file descriptor (XFD) for the file by using the -Fx compile option. The 'Field Section' of the XFD includes the details about each field. Column one is the offset in bytes. Column two is the size in bytes. Column three is the data type. For example, to sort ascending on the field MORE-DATA that has this XFD description: 0000001892,0000000006,16,0000000006, 00,000,000,03, MORE-DATA (The offset is 1892 the size is 6 and the type is 16.) The AcuSort command would be: acuso
Problem: If you are using an Entry-Field with a variable defined pic 9(2) and when the person is typing "03" you want it to show "03" instead of "3" on Acubench. What do you do? Resolution: The solution is a trick. On the FORMAT PICTURE field for that entry field you have to enter the following format : 99B This will make sure that the data entered will be the data shown. Fast an easy, once than we know it... Old KB# 2656
Problem: When a program is executed stand-alone, it is possible to change the focus of the cursor with no problems; but if this same program is called by another one, the called program loses focus. Resolution: This problem is caused by having a floating window on top of a standard graphical window, and in the event procedure of an entry field raising a message box. Upon return from the message box, it would be sent back to the original entry field, regardless of the event handler coding in the program to go to another entry field. This problem has been fixed with the ecn3763, and will be part of the 8.1.0 version. The workaround is to use an exception procedure instead an event procedure. Old KB# 2701
Problem: Property for "Target Browser" offers "Internet Explorer" and "Standard HTM". What does this do? Resolution: A Target Browser property "Specify Internet Explorer" selection causes the report writer to add Internet Explorer (IE) specific HTML tags to the output file (STYLE TYPE="TEXT/CSS"). If a web browser other than IE is used and the "Target Browser" property is set to IE, the results will be less than optimal. For such cases, the "Standard HTML" setting is recommended. (The results can be seen by generating Standard HTML then using Firefox or Opera (Apple) browsers to view the HTML.) Old KB# 2658
Problem: Acucobol-GT runtime reports "Inadequate memory available" when attempting to execute a program. Resolution: Cobol object file is corrupt. Most common cause of the corruption is that the file was transferred via FTP using ASCII mode. Cobol object files must be transferred via FTP in BINARY mode. Old KB# 2688
Problem: What are the differences between event procedures and exception procedures? When is it best to use event procedure and when to use exception procedure? Resolution: The key differences between Event Procedures and Exception Procedures are: Event Procedure does not terminate the Accept; Exception Procedure does. Event Procedure does not automatically update working-storage; Exception Procedure does. There are mechanisms which allow you to terminate an ACCEPT from within an Event Procedure -( Set Event-Action-Terminate to true )- and mechanisms that allow you to update working storage from within an Event Procedure -( Inquire [control] [property] in [working-storage-variable])-. These must be done programmatically, in an Event Procedure, where they are handled automatically in an Exception Procedure. Use an exception procedure when you want to break out of an ACCEPT, use an event procedure when you don't.
Problem: When ordering ports for the Linux operating system it is necessary to know the glibc version that is installed on the target machine to avoid a port mismatch. Resolution: From the command line type the following command: rpm -q glibc This should return output similar to: glibc-2.3.2-5 For ordering purposes, the glibc version in this example would be version 2.3. Example command line syntax and output: user@my_linux:~> rpm -q glibc glibc-2.3.2-5 On recent Linux distributions, the version can be found by simply running the library as if it were an executable: prompt% /lib/libc.so.6 GNU C Library stable release version 2.2.5, by Roland McGrath et al. [...] The first line of the output contains the version number. Another way to determine the version is to see what version string is embedded in the library itself: prom
Problem: In Version 8.0 when a check of the compiler version is done, ccbl -v, the following message is returned: "./acusql: No such file or directory". What does this mean? Resolution: (Note that on some operating systems only "./acusql: No such file or directory" will be displayed and on others "./acusql: not found".) The version check mechanism is outputting this message which simply means acusql is not present. The message is harmless and will not affect the ability to use the compiler normally. If the intent is to use the AcuSQL precompiler and acusql is missing, reinstall and follow the instructions in the AcuSQL manual. Old KB# 2698
Problem: After upgrade from 7.0 to 8.0 problems with signed numeric fields that have a value of zero have been encountered. Here is the situation: A numeric field is defined as PIC S9(7) TRAILING SEPARATE. In this particular data file the value is zero, when viewing this field in the debugger in hex it's value is 30303030 30303030 The program has this statement: IF NUM-FIELD NOT = ZEROS In version 7 the above statement is not true because the value of that field is zeros. Now compile the program using version 8 and run with version 8 runtime the above statement is true. This is causing programs to break. Example: 01 NUM-FIELD PIC S9(7) TRAILING SEPARATE. (hex value 30303030 30303030) Here is an example of how version 8 reacts to these statements compared to version 7. IF NUM-FIELD = ZEROS (version 7 says YES, version 8 says YES) IF NUM-FIELD NOT = ZEROS (version 7
Problem: With Version 8.0.0 when a COBOL program calls a function in a DLL from two different locations in the COBOL program, the second call will fail with a MAV. Resolution: Version 8.1.0 resolves this issue. This change is also available for version 8.0.0 in a patch which is attached to this article. If the 8.0.0 Runtime in use is already patched with other Engineering Change Notices (ECN) contact Supportline to determine whether this patch is appropriate. "wrun32 -v" will return "ACUCOBOL-GT runtime version 8.0.0" if it has not been patched. To apply this patch download the archive, back up the current 8.0.0 bin directory, then extract the two files to that directory. "wrun32 -v" should then report "ACUCOBOL-GT runtime version 8.0.0.943". Update: 8.0.0 WS1 is available and contains the fix. You can download it from http://supportline.microfocus.
Problem: On some systems it may be desirable to have more than one version of the Acucorp product suite operating concurrently. However, doing so may cause concerns about compatibility in license management using multiple versions of the acushare utility concurrently. Resolution: In version 7.0, the acushare utility, which provides shared memory and licensing management, has been rewritten to use network sockets (rather than the previous IPC message queues). Due to this change, old and new versions of acushare may run simultaneously on the same system. However, acushare versions 6.x and earlier cannot be used with extend7 or extend8 products. Conversely, acushare versions 7.x and 8.x cannot be used with pre-extend7 products. Each version of acushare must be installed in and started from separate directories. Example: /opt/acucorp/610/bin/acushare -start /opt/acucorp/700/bin/acushare -start Note in the example below that the IPC key has cha
Problem: Is there any sample code that demonstrate how to obtain the number of records in a Vision file? Resolution: *Use the "filesys.def" copy file, which is included with the *ACUCOBOL-GT product distribution. Working-Storage Section. 01 the-filename pic x(15). 01 the-filename-full pic x(250). 01 num-recs-in-file pic 9(9). 01 the-file-handle usage is pointer. copy "filesys.def". Procedure Division. move "my_file.dat" to the-filename. move 500 to max-rec-size. move 500 to min-rec-size. move 3 to num-keys. * Use runtime logic to find the full path of the fi
Problem: If you try to rebuild the runtime and during the make you find out that you are missing libz.o here it is what you have to do to create it. Resolution: You need to add the following "target" to the Makefile you are using to rebuild the runtime. Preferably at the end of the file: libz.so: libz.a $(CC) $(SHAREDLIB_LDFLAGS) $(NO_UNDEFS_LDFLAGS) $(LIBRUNCBL_LDFLAGS) \\ libz.a -o libz.$(SHARED_LIB_EXT) The second and third line you are adding have to start with a TAB, no spaces. It is compulsory for any make, so please be expecially careful when adding those lines. After this addition, save the file, close it and type : make libz.so If you have renamed your Makefile, for exemple Makefile.ora type the following line make -f Makefile.or libz.so Now you only need to rebuild the runtime (make) and everything should work fine. Old KB# 2739
Problem: While a program is performing extensive I-O activity on Windows if an attempt is made to do any user input for the program the title on the window changes to "Not responding" and the window gray's out. Is there a way to avoid this behavior? Resolution: Prior to Version 3.2, the runtime automatically processed system events during file operations. Starting with Version 3.2, this feature was turned off by default, that is why a program can get a "Not responding" screen. The program still is running and, if the user allows it to finish, the screen turns back to "Responding" mode. Users can avoid this "Not responding" screen by setting the FILE_IO_PROCESSES_MESSAGES runtime configuration variable to 1 or by using the FILE_IO_PEEKS_MESSAGES variable set to 1. Old KB# 2735
Problem: AcuBench v7.2.x: how to paint a variable grid? The number of grids are not known at design time. At runtime the grid must be painted according information e.g. from within a file. Resolution: The solution is: - With the Screen Designer to design a GRID with NUM ROWS = 0 and NUM COLUMNS = 0. - At runtime to define the columns in a loop with e.g. the following sample code: modify sc-tab-zelle reset-grid = 1 move 1 to ind1 move 7 to ind2 modify sc-tab-zelle, data-columns = ind1 display-columns = ind2
Problem: According to the documentation ACCEPT OMITTED should cause the program to pause at the displayed screen and the user is required to enter a termination key. Resolution: RM COBOL does not have the concept of OMITTED in the ACCEPT statement. Due to this, when in RM compatability mode OMITTED has no affect and the program does not stop. The resolution for this problem is to not use -Cr compiler option, or, if that is not possible, change the ACCEPT OMITTED to an ACCEPT of a dummy variable defined in working-storage. Old KB# 2678
Problem: According to the manual, $WINHELP's "HELP-CONTENTS" opcode will have the runtime display the help file's contents. However, the following code fails to display the help file's contents, instead it displays the help file's first page. call "$WINHELP" using "APHELP.HLP", help-contents. The correct behavior can be demonstrated by double-clicking on the HLP file directly. Resolution: The following code will result in the desired behavior: call "$WINHELP" using "APHELP.HLP", 11. The information provided in the manual was correct for earlier Windows systems prior to XP, but the newer help system API now uses a different op-code and will be updated in a future version. A list of the constant values for the Microsoft "WinHelp" library routine which is called from "$WINHELP" at the URL below. http://www.smountain.com/resource/CPPWinHelp.pdf These two
Problem: Commenting out the NO_SOCKETS variable in the config85.c and then relinking the runtime the Acu the products no longer function as they cannot communicate with the AcuShare license manager. Resolution: In version 7.0 and later when making changes to the config85.c do not make changes to the NO_SOCKETS section. Acushare needs the sockets to communicate so if the sockets are remove the products will no longer function. /* If you set NO_SOCKETS to 1, then the runtime will not need to link */ /* with any sockets libraries. Note that CLIENT and ACUCONNECT both */ /* require sockets, so setting this to 1 will automatically imply */ /* NO_ACUCONNECT and NO_CLIENT. &nbsp ; &
Problem: An XML file was submitted to the xml2fd utility and the resulting FD stops after the 01 level. The XML file, test.xml contains: <company> <name>Acucorp</name> <address>8515 Miralani Drive</address> <city>San Diego</city> <state>CA</state> <ZIP>92126</ZIP> <remarks>COBOL tools</remarks> </company> using "xml2fd -p cust- test.xml" the resulting FD contains only: * .\\test.fd - Generated by xml2fd from test.xml on 2008/01/18 fd cust-company. $XFD NAME = name 01 cust-name & nbsp; pic x(7). Resolution: The XML inside test.xml is interpreted by x
Problem: A call to the C$SOCKET library routine with the AGS-READ opcode and a read length of zero should populate RETURN-CODE with the number of bytes of data available on the socket. That value can then be used for the read length to obtain all the data in a single read (if the buffer is large enough). If the call to C$SOCKET AGS-READ with length zero doesn't occur within an ACCEPT then RETURN-CODE is always zero even if there is data available on the socket. Resolution: First call C$SOCKET AGS-READ with a length of negative 1 (-1) then call C$SOCKET AGS-READ with length zero. This will ensure that RETURN-CODE contains the number of bytes of data available in the socket regardless of whether the call is made within an ACCEPT statement. It will look something like this: **** read with length -1 to set up the read with length zero **** &nb
Problem: When executing STOP RUN statement, the application error occurs. Our investigation shows the causes appears to be a combination of the length of the filename as well as double byte characters in the filename. Resolution: This problem is resolved in version 8.1.0 by Engineering Change Notice (ECN) 3775: SUBJECT: Too long filename with DBC causes MAV at exit Change Number: ECN-3775 Status: Complete Type of Change: Correction Priority: Medium Incidents: 2178343 RPI Number: 1061056 Date: 2008-02-05 Product: ACUCOBOL-GT Module: runtime New Version: 8.1.0 Machines Affected: All Known Versions Affected: At least 4.3.1 and later DESCRIPTION of problem or enhancement: When us
Problem: On one Windows XP PC, AcuBench version 7.2.2 gets an error when using Microsoft Mask Edit Control version 6.0. It shows up in ActiveX control Components fine and can be chosen. However when the control is placed on the screen the following error is received: Design-time license for OCX.MaskEdBox control missing. Loading control with place hold only. In an effort to load the Design Time license the ActiveX controls were loaded from the VB5 CD, with no luck. On other PC's the control is does not encounter the design time license issue and is working fine. Resolution: Resolved by registering the MaskEdBox ActiveX control for development by running the VBCTRLS.REG from the Visual Studio CD. Old KB# 2653
Problem: If you use a sintax like this one runcbl -e error_log_file o display_log_file programme_cobol to redirect the DISPLAYS of your application into a log_file and you have control characters all over the place, what to do to have a clean display_log_file? Resolution: The solution on this case is pretty simple. Position this two variables : A_TERM=none SHUTDOWN_MESSAGE_BOX=0 And compile your program with -Ca (ansi compatibility for accept and display). This way the display_log_file will be clean and proper. Old KB# 2740
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.