Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
Problem: Release: 3.1 What you need to do is to go through the internet applicaton wizard again. Resolution: You should select the relevant forms as if he is generating the CGI again from scratch. When this is done you will be prompted to overwrite the existing CGI. You should select NO and then only the relevent copybooks will be changed. Old KB# 6873
Problem: Compiling this statement EXEC SQL SELECT nextval for myseq INTO :hostvar FROM MYTABLE WHERE COL1 = 10 END-EXEC returns this compiler error : COBES0100S Incorrect SQL statement syntax near : sample.cbl(23,20) Resolution: OpenESQL is designed to support ANSI-standard SQL. As the NEXTVAL and PREVVAL clauses are not part of the
Problem: You may be using the COM interface to access to some data in a Excel Sheet that may have some column with data in Unicode (cyrillic letters for example) and you may want to process that data in your program and finally show some results using Dialog System. Resolution: There is support for Unicode in Net Express 4.0 (only UTF-7 and UTF-16, UTF-8 is variable length and it hasn't been implemented yet) so you can define something like 01 my-unicode-variable pic N(10) usage is national. But there is no support for Unicode in the COM interface at the moment, so when receiving a Unicode value from the COM interface, it will be converted to a USAGE DISPLAY character. This conversion follows the same rules that the DISPLAY-OF function follows, so if your code page doesn't contain that character, the "?" character is chosen instead. So at the moment, to be able to receive a Unico
Problem: You may have multiple push buttons on a Dialog System screen and want to be able to tab between them. Resolution: Enclose the push buttons within a group box. Old KB# 6938
Problem: 173 Error calling a VB DLL Resolution: VB6 DLLs are actually COM DLLs. You should not use the CALL statement to call then. You should use the COM Support in Net Express. The Distributed Computing section of the help details the syntax requirements. In summary you need a class-control section with something like:- mycomclass is "$OLE$theVBprogid" and then use the INVOKE verb to call the COM methods. Old KB# 6906
Problem: You can reference an external MS VB.NET DLL from a solution or project. Resolution: The MS VB.NET DLL must be added as reference in the solution by following the steps below: 1. right-click on References, which is in his Solution Explorer 2. select Add Reference 3. click on Browse button to get the DLL 4. click on the Open button 5. click on the OK button. Old KB# 6932
Problem: After adding an external reference (e.g. Microsoft Visual Basic . NET DLL), you might want to find out what classes, structures, properties, or methods are available in that external component. Resolution: Use the Object Browser. You will need to do few things before you can actually see the details about the external component since it will not be shown automatically: 1. click on the Customize that is just next to the Browse drop-down list 2. click on the Add button 3. click on the Browse button to find the component 4. click on the Open button 5. click on the OK button Old KB# 6934
Problem: Performance problems occuring due to locking issue. Resolution: 1. Do not use the compiler directive set(ansi92entry) with SQL Server 7.0 Using ansi92entry sets the transaction isolation level to serialization from the default of read committed. Add COMMIT statements to programs to release locks 2 .SET exec sql set concurrency readonly end-exec exec sql set scrolloption forward end-exec immediately after connection or aternatively, just declare cursors to be forward and read only unless otherwise required, as in exec sql declare x forward readonly cursor for ... end-exec (note default concurrency is lock) Old KB# 6877
Problem: Does the SET OPTION QUERYTIME option affect all queries executed on a connection or only those in the same COBOL module? What is the minimum value that can be used? Resolution: If SET OPTION QUERYTIME is specified, it is used for all subsequent SQL operations within that thread, hence any subprograms will effectively inherit that setting. This is also true if you have multiple connections within a single application thread. The option passed to QUERYTIME specifies the number of seconds that the program waits for a response to an OpenESQL statement. According to SQL Server documentation, the minimum value is 0, which means no timeout, but the lowest timeout is 1 second. Old KB# 6919
Problem: If a cookie (e.g. mycookie pic x(6)) is placed in a HTML page, Net Express's Form Designer will generate a copybook for the web application as follows: ... 03 gmycookie. 05 pmycookie pic x(5). 05 mycookie pic x(06). 05 smycookie pic xx. 03 hmycookie redefines gmycookie pic x(13). &nb
Problem: How to get more information if the application gets back a run time error similar: 17, 25, 1? Resolution: You can find additional information within copybooks pan2link.cpy and pan2err.cpy based in the Net Express ...\\base\\source folder. For example: 17, 25, 1 25 -> pan2link.cpy -> 'GetWindowData' and 1 -> pan2err.cpy -> 'Window-Doesnt-Exist' Old KB# 6943
Problem: PCB-S-00106, Unable to open INCLUDE file returned during precompile of Pro*COBOL application. Resolution: Ensure that the directory containing the copybook is specified within the setting of the Pro*COBOL INCLUDE option. Refer to the Oracle documentation for further details. Alternatively, if using the Cobsql precompiler, specify the p(cp) compiler directive, and ensure that the directory containing the copybook is specified within the COBCPY environment variable setting. Old KB# 6908
Problem: Using Net Express Version 40 OpenESQL interface: What to do to get locked records similar to COBOL's locked records using ISAM files? Resolution: Firstly, you should turn on the SQL(DBMAN=ODBC) compiler directive: IDE: Project -> Properties -> SQL Directives... This ODBC interface has a wide range regarding the use of relational databases, if you are using Microsoft's SQL SERVER you should add the TARGETDB=MSSQLSERVER option as well. To control a CURSOR behavior you should set the SET CONCURRENCY LOCKCC option to get locked rows after a FETCH. This option should be set by default unless the ESQLVERSION option is set to 2.0, then the default should be set to OPTCC (optimistic). Old KB# 6892
Problem: When using the Help screens, clicking on a link may get the error An Error Has Occurred in the Script on This Page Error: Object doesn't support this property or method This is a Microsoft error. Resolution: Go into Regedit and go to HKEY_LOCAL_MACHINE SOFTWARE Microsoft Internet Explorer ActiveX Compatibility and delete the key labeled {ADB880A6-D8FF-11CF-9377-00AA003B7A11} Close down Help, start up Help, and the links will now likely work. Old KB# 6895
Problem: You may set the EXTFH environment variable to a specific .cfg file to determine certain behaviour for the file handler on specific files. However, it may be that the settings in the config file specified seem to be ignored. eg: set EXTFH=D:\\Test\\Big File\\extfhbig.cfg testextfg.cfg may contain the lines: [XFH-DEFAULT] FILEMAXSIZE=8 Resolution: If the path to the filename has spaces it must be enclosed by quotes. For example: set EXTFH="D:\\Test\\Big File\\extfhbig.cfg" In the instance above the file should now adhere to the FILEMAXSIZE specified Old KB# 6922#ServerExpress#AcuCobol#RMCOBOL#COBOL#netexpress
Problem: Using an ISAM file you get a run time error 9/018 for .exe or .lbr: 'Read part record error: EOF before EOR or file open in wrong mode' for a READ NEXT statement after OPEN I-O successfully. What should I do to avoid this because as an .int or .gnt the application does run as well? Resolution: This ISAM file was built using data compression, you should take a look at DATACOMPRESS compiler directive first. There are two values regarding a data compression environment supported at run time: 1 or 3. Using value 1 you have to link additional CBLDC001.obj from ..\\base\\lib into .exe otherwise using value 3 you have to link CBLDC003.obj. Old KB# 6893
Problem: The z'string' is used in place of 'string' & x'00' to create a Null terminated character string. Resolution: A null-terminated string can be created by specifying Z'string' and can be used anywhere a nonnumeric literal is permitted. The resultant literal is equivalent to concatenating X'00' (a null byte) to the end of the specified string. In other words, the two following lines are equivalent: Move z"my-literal" to an-item Move "my-literal" & X"00" to an-item In the following example, the Picture declaration has an extra byte reserved for the zero (null) byte: 01 my-name Pic X(5) Value Z"Jane". The MOVE for this would be coded as: Move z"Jane" to my-name Old KB# 6878
Problem: Can you connect to a database using ODBC without configuring a Data Source Name (DSN) ? Can I connect to SQL Server without using a DSN? Can I connect to Oracle without using a DSN? How do you use ODBC connection strings? Using an ODBC connection string, a -19703 error occurs on the CONNECT statement. Resolution: Yes, by using a connection string, this doesn't require a datasource name (DSN) to be set up on the target workstation. The connection string and parameters differ for each driver. For the driver name, use the name that appears in the left-most column of the drivers tab in the ODBC control panel. For other connect string options, look up "SQLDriverConnect" or "Connection String" in the help file for the driver. You access the help file by starting to set up a DSN and then clicking the help button. There may be other options tha you set up through the configuration of a data source that yo
Problem: Don't want to silently install the base release but have the latest service pack installed in the process. Resolution: Currently the only way would be to put the following steps in a bat file, need to create the runtime files to be copied, easiest way is to install lastest service pack on a machine and use this as the basis for files which need to be copied. 1. copy runtime files and set path (when running a deployed application, will have to ensure that path is set to point to these runtime files) 2. set up a new license database a. Create a directory to contain the new license database, if necessary. b. Copy into that directory the files prodfile and semfile from application server folder c. Run the aslmpclocate utility as follows: aslmpclocate license-db
Problem: Here are few notes from documentations about migration from old Dialog System to Net Express Resolution: Chapter 8: Dialog System V2.5 This chapter lists some points to note if you're moving to the Dialog System in Net Express compared to Dialog System V2.5. If you've come from 32-bit graphical Dialog System V2.5 on Windows 95 or Windows NT, you should have no migration problems. There is just one minor incompatible change - see the section DSRUN below. The non-graphical versions and some little-used tools have been omitted. Source code templates are provided to enable you to use the new Class Library support for spin buttons, status bars, OCX controls, and a tree view control. You access the definition software from the Tools menu in the IDE. For advice on moving from 16-bit to 32-bit, and from other operating systems such as OS/2, see the chapter Same Screen, Different Platform in the online book Dialog System Guide . DSRUN The Gr
Problem: Install This page explains how to install Net Express, Net Express with .NET and Net Express Professional Edition, and the other software on the CD. If you want to create applications (using Microsoft Visual Studio .NET) to run in the Microsoft .NET framework, then follow the instructions for installing Net Express with .NET. If you want to create Windows applications that do not run in the .NET framework, or if you want to create applications to run on UNIX, then follow the instructions for installing Net Express 4.0. Warnings: If you install Net Express with .NET and either Net Express Professional or Net Express 4.0, you may be asked to reboot when Net Express Professional/Net Express 4.0 has completed installing, but before Net Express with .NET has started installing. Do not choose to reboot your machine until the Net Express with .NET install has completed. You may need to minimize the Setup window to see the dialog box for the install of Net Expr
Problem: The sample program below illustrates various methods of invoking an Oracle stored procedures and functions. This COBOL program illustrates invoking these procedures and functions with positional values, that is the physical order of the input data in the CALL is associated, in order, with the stored procedure and functions parameters as defined in the CREATE statement. This sample program also demonstrates the use of an Oracle package. An Oracle package is just a logical way of grouping objects together. It consists of a specification which identifies the interface to each object (stored procedure and function) and the body, which implements the procedural logic. The procedures and functions are very simplistic but demonstrate the mechanism for creating and calling ORACLE stored procedures and functions through the ODBC interface in Net Express. Resolution: The package GETCOUNT contains a stored procedure 'gcount_sproc&
Problem: How do you specify location of copybooks and include files using Oracle ? Resolution: There are two ways to resolve the location and expansion of copybooks. One is through the use of Oracle's Pro*COBOL INCLUDE option and the other is by using the CP pre-processor along with setting COBOL's COBCPY environment variable. The assumption being made is that the copybooks contain either embedded SQL statements or the declaration of host variables used in embedded SQL statements and the copybooks are not located in the source/default directory. (1) Using Oracle's Pro*COBOL INCLUDE option. This solution only works if the copybooks are included with the EXEC SQL INCLUDE statement. (and extension is cob). This is the easiest solution since Pro*COBOL automatically expands files included through the EXEC SQL INCLUDE statement if they can be located. In order to specify the location, use Pro*COBOL INCLUDE option for
Problem: How exactly do you setup Net Express and Visual Studio 6.0 to debug a Visual C/C 6.0 DLL from within Net Express? Cobol is calling the 'C' DLL. This is one of those situations where you must accept Microsoft Win32 limitations and adopt an approach that is less intuitive. Under Microsoft Win32, only one debugger can be running at any time. You need both the Net Express development system and the Visual Studio system installed on the same machine. You need to make certain the Dynamic checkbox is checked in your Build Settings for your COBOL program(s). Merge your COBOL project into the 'C' project directory structure where the 'C' DLL project is located. Both directory structures have a Debug directory. Your COBOL application file (*.APP) and your COBOL source files are in the same directory as the 'C' source programs and workspace files. The Debug directory should be subordinate to this project directory.
Problem: When the following warning messages are issued when compiling a SQL application : 801-W External Compiler Module message ES1000 Use of EXEC SQL INCLUDE SQLCA END-EXEC. 12 05 SQLCABC PIC S9(9) COMP-5 VALUE 136. *1209-I COMP-5 is machine specific format. (future occurrences not indicated) Resolution: The warning messages appear when compiling with the WARNINGS"3" compiler directive: 801-W External Compiler Module message ES1000 Use of EXEC SQL INCLUDE SQLCA END-EXEC. This warning message is required for ANSI certification. 12 05 SQLCABC PIC S9(9) COMP-5 VALUE 136. *1209-I COMP-5 is machine specific format. (future occurrences not indicated) This message is due to the SQLCA structure contain
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.