Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
Problem: We want to have a Hint-Pop-up appearing when the user moves the mouse cursor over a Bitmap Push Button. Resolution: Usually the property 'Title' for push buttons allows us to indicate the text that we are going to show on the button. On the case we have a bitmap button, there is no text shown but a bitmap, and then using this 'Title' property we set up the text that we will have on the Hint Pop-Up for the push button. This is specially useful if you have buttons on a ToolBar. You have two variables that can affect the hints : HINTS_OFF, HINTS_ON. On version 8, we can only put hints on bitmap buttons. Old KB# 2711
Problem: During a program run, the error message Perform Stack Overflow occurred. Resolution: This error message normally indicates that an AcuCOBOL-GT program exceeded the number of levels PERFORM statements can be nested within paragraphs or sections. A PERFORM statement is nested if the statement contains a PERFORM statement against another paragraph/section. This error can occur if a PERFORM statement did not exit properly. By default, the amount of nesting allowed by the runtime is set to 128. That is, 128 PERFORM againstg a paragraph/section that contains a PERFORM statement against another paragraph/section. This value can be increased by setting the runtime variable PERFORM_STACK to a higher value in the configuration file. If a paragraph/section is not exited correctly, the perform stack will not clear down properly. Normally the end of a section is marked by the EXIT verb and the end of a paragraph is marked by another paragraph name (for exampl
Problem: Is there a way to initialize the fields of Working-Storage at compile time? Resolution: To initialize Working-Storage at compile time, use this option: -Di This option causes the compiler to initialize Working-Storage. Normally, the compiler will initialize all data items to spaces or the value specified with the "-Dv" option, except for those items given a VALUE clause. If this option is specified, data items are initialized according to their type: Alphabetic, alphanumeric, alphanumeric edited, and numeric edited items are initialized to spaces. Numeric items are initialized to zero. Pointer items are initialized to null. Index items are initialized to the value 1. Automatic initialization applies only to Working-Storage and does not apply to any item that (a) is given a VALUE clause, (b) is EXTERNAL, or (c) is subordinate to a REDEFINES phrase. Old KB# 2718
Problem: If you want to work on a HP-UX 11.23 (for exemple) and you have an emulator from Ordina Denkard that emulates and MPUX (HP3000) environment, you need to relink the runtime to be able to work with the emulator and with KSAM files. Here I am just going to point out the steps you need to follow to make it work. Resolution: To do this we are going to recreate a new runtime. We do this in the lib folder. You should keep one original copy of this folder or, at least, of the files you are going to modify. First of all we are going to modify "filetbl.c" . Look for the following lines : #ifndef USE_MPE #define USE_MPE 0 #endif /* USE_MPE */ And modify them to have the following : #ifndef USE_MPE #define USE_MPE 1 #endif /* USE_MPE */ Then save the file. Now we are going to modify "Makefile". On this file we have several lines to modify, but first we are going to add one. At the begi
Problem: If acushare is shutdown ungracefully either by issuing a "kill -9" or other catastrophic event that causes the system to shutdown unexpectedly, acushare may be left in a state in which it cannot be restarted without intervention. Users may experience the following message: "Shared memory and license manager (acushare) is not running" or "Acushare: Time out waiting for reply" However, attempts to restart acushare fail despite the following message: "acushare: already running" or "Acushare: Time out waiting for reply" may be repeated Resolution: Version 7.x and higher Should acushare terminate unexpectedly, its master shared memory segment may be left behind. Before restarting acushare, execute the "acushare -clean" command to remove the stranded memory segment. Version 6.x and earlier Before restarting acushare, it will be necessary to manually clean up shared
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: For some reports, it may be desirable simply to print to the default printer using the default font. Resolution: Getting Started with ACUCOBOL-GT Version 8.0 Chapter 2: Windows Installation > 2.5 Printing and Spooler Issues > 2.5.1 Spooler Formatting > 2.5.1.1 -P SPOOLER If it is desirable to utilize the default printer and font, simply assign the print file to "-P SPOOLER". For example, to assign "PRINTER1" to the spooler, enter the following line in the COBOL configuration file ("CBLCONFI"): PRINTER1 -P SPOOLER By default, the runtime system assigns the "PRINTER" device to the spooler. This may be changed in the configuration file by assigning "PRINTER" to some other name. When the runtime opens a file assigned to "-P SPOOLER", it automatically initiates a job with the Windows spooler and constructs print pages in accordance with t
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: Using an 8.x (8.0.0, 8.0.1, 8.1.0 alpha) compiler with the AddPercent sample program (attached) the compiler encounters and "internal error 45". Using the 7.2.x and earlier compilers the program compiles cleanly Resolution: This is fixed in 8.1 WebSync 3 by ECN-3788. A work around of not using the USE/END-USE construct can be used as well, since the cause of the problem is using a USE/END-USE construct with an ActiveX control to set multiple properties. Old KB# 2725
Problem: C$REGEXP library routine does not find the searched string when the program accepts the argument through an entry-field, if the argument is harcoded then it works ok. Resolution: The problem is that the regular expressions must be NULL-terminated because trailing spaces are allowed in regular expressions. It is necessary to use the following coding style when parsing: INSPECT regular-expression REPLACING TRAILING SPACES BY LOW-VALUES before to make the call to C$REGEXP library routine. Old KB# 2704
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: Executing the JavaCallingCobol sample program it generates an error on UNIX using the standard, statically linked, ACUCOBOL-GT runtime. Resolution: In order to call COBOL from Java the shared object version of the ACUCOBOL-GT runtime must be used. It is important to note that a shared object version of the runtime does not exist for all UNIX platforms, e.g.: VAX VMS HP3000 SCO OpenServer TRUE64 Old KB# 2706
Problem: The print file is opened to do some write statements to print part of the report then use this code to get the write-cursor's current position: INITIALIZE WPRTDATA-DRAW. MOVE WPRTUNITS-PIXELS TO WPRTDATA-DRAW-UNITS. MOVE 1 TO WPRTDATA-DRAW-SHAPE. CALL "WIN$PRINTER" USING WINPRINT-SET -CURSOR, WINPRINT-DAT A &nb
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: How to capture a screenshot of a window into a bitmap Resolution: You have to use this syntax: CALL "W$BITMAP" USING WBITMAP-CAPTURE-IMAGE, "C:\\AcuSamples\\bitmap\\Resource\\image.bmp", 0, | 0 = active window is captured 0, | 0 = The entire window is captured, including the title bar, window frame, menu, etc. 1, | 1 = monochrome, 32 = 32-bits per pixel GIVING w-BITMAP-HANDLE If W-BITMAP-HANDLE = 1, you will find your screenshot in the saved .bmp file. For further details, see: Appendix I: ACUCOBOL-GT Library Routines > I.1 Library Routines > W$BITMAP Old KB# 2736
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: 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: Due to size resctrictions, files needed to be converted from VISION 3 to VISION 5; but when these files were copied to another server an error 98,68 is encountered by the COBOL program. Resolution: When moving Vision 4 and Vision 5 files it is important to transfer both the data segment and the index (.vix) segment. When the index segment is missing a 98,68 will be generated. Old KB# 2694
Problem: When installing the Web Thin Client on Vista, Internet Explorer will prompt for permission to install the web thin client activex control. Even though permission is granted the Web Thin Client will not properly install due to Vista's UAC. Resolution: Thin Client and Web runtime Installations Vista's UAC mechanism blocks the installation of ActiveX controls, such as Acucorp's Thin Client, onto systems that are not running Internet Explorer 7 in administrator mode. To run in administrator mode right click on the IE7 shortcut and select "Run as Administrator". Vista also includes an ActiveX installer service that allows IT administrators to use Group Policy to specify Web sites from which standard users will be allowed to install ActiveX controls. Old KB# 2728
Problem: How to make work the CGI demo Oscars with Apache on Windows. Resolution: First you need the runtime installed on the computer with the samples demo folder and Apache installed. My demo was made with Apache 2.2 and AcuCobol GT runtime 8.0 but older versions should work fine. First of all you should copy header.htm, footer.htm, body.htm and oscars.acu on the cgi-bin folder set-up for Apache. On my example that folder was : C:\\Program Files\\Apache Software Foundation\\Apache2.2\\cgi-bin You can copy as well oscars.htm at the location you are going to install html pages, for example on my demo was : C:\\Program Files\\Apache Software Foundation\\Apache2.2\\htdocs Here, open oscars.htm and modify the POST sentence to reflect your installation : <FORM method="post" action="http:\\\\par-gfollana.microfocus.com:8080\\cgi-bin\\oscars.acu"> Open httpd.conf and add the following line of code : ScriptInterprete
Problem: Trend Micro released an update to their anti-virus program which caused a serious performance issue when accessing vision data files. Resolution: It is unknown if there is a method to not have Trend Micro scan vision files. To date the only proven resolution used was to uninstall Trend Micro. Old KB# 2714
Problem: If the runtime receives a file status 98 on a Vision file it means the file has been corrupted. How can the Vision file be fixed? Resolution: To recover a corrupt Vision file which is returning a file status 98, use the "-rebuild" option of the Acucobol file utility, vutil. Keep in mind that the Vision file system has redundancies built into it, so that different rebuild options (-k #) will use different algorithms to rebuild the file. If one fails, another may succeed. At the end of a rebuild operation, you will be prompted with "Do you wish to replace the original file?" If N (NO) is chosen, the rebuilt file will be retained, such as it is, in the current working directory. It will be named VTMP####. * vutil -rebuild filename * vutil -rebuild -k 0 filename (rebuild on primary key) * vutil -rebuild -k 1 filename (rebuild on 1st alternat
Problem: At times it may be desirable to rename the Windows version of the ACUCOBOL-GT runtime to something other than wrun32. However, doing so caused the following error during runtime execution: The procedure entry point w_suppress_event could not be located in the dynamic link library atermmgr.dll Resolution: While it is permissible to rename the ACUCOBOL-GT runtime, care must be taken that only wrun32.exe is renamed. Wrun32.dll cannot be renamed since it will cause this error. To correct this error, restore the file back to its original name wrun32.dll. Old KB# 2712
Problem: A program working fine on Windows OS, does not detect the Function keys being pressed when running on UNIX/Linux platforms. Modifying the a_termcap file does not provided the expected results when using PF/Function keys either. Resolution: This is a terminal emulator problem. If the emulator does not send the appropiate character string to the operating system and the OS does not forward this information to the runtime, there is no way for the runtime to pass to the program which key was pressed. The solution is to change the settings of the emulator to map the right character set and send the correct string to the program. Testing a sample program with two different emulators each emulator needs to be changed to pass the correct escape seqence strings in a different way. For example: 1) With the termincal emulation package CRT it is necesary to map the F5 through F12 keys. By def
Problem: Windows has its own locking mechanism, called Opportunistic Locking, for files shared in a network environment. This mechanism is enabled by default and can contribute to file errors and performance issues in such an environment. Resolution: Disable Windows Opportunistic Locking. There is a Microsoft KB article regarding Opportunistic Locking here: http://support.microsoft.com/kb/296264 Note that there are two separate registry keys; one controls the granting of locks and the other controls the requesting of locks. On each machine both registry keys should be set to disabled. Set OplocksDisabled to 1 and set EnableOplocks to 0. Attached is a zip file containing an AcuCOBOL-GT program that will make the registry entries to disable Windows Opportunistic Locking. This program is provided without warranty. Since the program modifies the Windows registry a backup of the registry
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.