Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
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: 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: From the bottom of result set, start doing array fetches backward thru cursor using fetch previous- when you get to the top, there are only 3 rows left to fetch ( array size is 5) sqlerrd(3) is still set to 5 and sqlcode= 1 attempt to fetch before the result returns the first rowset Resolution: From MicroSoft: It seems that this is expected behavior for SQL_FETCH_PRIOR. If the fetch overlaps the beginning of the resultset, SQLFetchScroll() returns SQLSTATE 01S06 (the message that you are seeing). SQLCODE will be 1 (SQL_SUCCESS_WITH_INFO). The last fetch actually does return 5 rows, the 3 rows that you expect plus an additional 2 rows from the previous fetch buffer. This explains why SQLERRD3 is 5 rather than the 3 that you were expecting. This behavior is by design from the ODBC specification document. Recommendation: if you want to use scrolling
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: 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: 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
Problem: Customer is encountering a problem in publishing a method in Web Services. He's following the tutorial - compiles the Hello Word program, asteriscs it etc. When he comes to creating the client part adding the Web Service part he says that the Hello World method is not published and he cannot see it. Resolution: This problem may actually occur with any service that is selected from the Add Web Reference wizard. This simply means that the file name extension (.asmx) was not mapped to any program or interpreter that processes that type file. Here are the steps to map that file name extenstion to the program or interpreter: 1. Find out if there are different versions of the MS .NET Framework installed on the machine 2. Determine which one (if there are more than one version) is the latest version by looking at the directory name (e.g. C:\\[Windows directory]\\Microsoft.NET\\Framework\\v1.1.4322 is more recent than C:\\[Win
Problem: Error on COMPILE on a 88 level item defined as USAGE COMP SYNC in DECLARE SECTION using Oracle Pro*COBOL 1.8. Resolution: The COMP SYNC is being converted to COMP-5 SYNC within the DECLARE SECTION. This will work if the host variable is defined within a SQL INCLUDE file, but not when it is defined within the main program. This can be resolved by specifying the Pro*COBOL directive COMP5=NO. Old KB# 6907
Problem: When using a ListView in Net Express Dialog System, the method "allowItemsToBeEdited" only relates to the first column of the List View. Resolution: This method does only allow items from the first column to be edited. To edit the other columns, you would need to use a form of grid control, such as Proto View (demo available in in \\dialog system\\demo\\activex\\custgrid.app ). This demo uses grid control software supplied by a company called Infragistics on an evaluation basis for testing. Go to <http://www.infragistics.com/download/downloads.asp> to download the evaluation version of the grid control software to use with the Net Express custgrid demo. Old KB# 6915
Problem: Can you specify an EXEC SQL INCLUDE statement using an environment variable, for example EXEC SQL INCLUDE $MYENV\\MYCOPY END-EXEC where MYENV points to the directory where the MYCOPY copybook is located. Resolution: You can do this by additionally using the CP preprocessor. Add the P(cp) compiler directive to enable use of this preprocessor. Old KB# 6930
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: It seems that a PREPARE statement is not running correctly within an OpenESQL application using dynamic SQL. You may also find the SQL Descriptor Area (SQLDA) structure is not set as expected. Resolution: You should check your application regarding the SQLDA items SQLN and SQLDABC first because it is a must to initialise these items before you can run PREPARE. SQLN This must be set to the maximum number of SQLVAR entries that the structure can hold. SQLDABC The maximum size of the SQLDA. This is calculated as SQLN * 44 16 Old KB# 6894
Problem: Description: OLESUP method "adviseEvents" gets error 243 - class could not be loaded The class olesup cannot load the event handling class because the case of the event handling class name does not match the case of the class name in the program using olesup. When using the olesup "adviseEvents" method to register an event handler, keep in mind that the class names default to lower case. In this case, you should specify the class name literal in CLASS-CONTROL as lower case in the program where you invoke the "adviseEVents" method of the olesup class: CLASS-CONTROL. MYEVENTCLASS IS CLASS "eventhandlerclass". If you specify the class name in upper case ("EVENTHANDLERCLASS"), then make sure that you add an entry in CLASS-CONTROL in the event handling class such as: CLASS-ID. EVENTHANDLERCLASS, INHERITS FROM OLEBASE-E. CLASS-CONTROL.
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: 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: 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
Created On: 21 March 2011 Problem: When deploying a web service you get the following error in a dialog box:<html><head><title>Error - File Not Available</title><meta name="robots" content="noindex"></meta><body><h2>HTTP Error 404 - File Not Available</h2><p>The requested file is not available</p></body></html> Resolution: A 404 error at the beginning of the deployment operation almost certainly means that MFCS was unable to locate either the mfdeploy.exe program or one of its path components, or one of the path components in the PATH_INFO portion of the URL.Once the CAR file has been built and the server's deployment listener has been contacted, the deployment client (here the IMTK) does an HTTP POST operation to send the CAR file to the deployment receiver program, mfdeploy.exe. It uses a URL that specifies the virtual path to mfdeploy.exe and the virtual path to the dep
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: Two methods besides using LITLINK compiler directive and adding the correct MQMCB32.LIB or MQICCB32.LIB to the CBLLINK process. Add "call-convention 12" to your program and modify all the calls to MQ from " CALL 'MQ' " to "CALL MQCALL 'MQ'". This will require the correct MQMCB32.LIB or MQICCB32.LIB to be linked. This can only be uses as DLL or EXE not GNT or INT. Resolution: IDENTIFICATION DIVISION. PROGRAM-ID. 'MQODBCPUT' environment division. configuration section. special-names. call-convention 12 is MQCALL. PROCEDURE DIVISION. &
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: 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: 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: Using Sybase with Net Express may return RTS114 error Variables defined in Sybase-provided copyfiles, cobpub.cbl and sybhesql.cbl, are defined as USAGE COMP. This does not match the byte ordering expected by Sybase. Resolution: In the Sybase-supplied copyfiles cobpub.cbl and sybhesql.cbl, change all data items defined as USAGE COMP to USAGE COMP-5. Old KB# 6882
Problem: Can Net Express Application Server be run on a clustered server? Resolution: We are not aware of any issues with running Net Express Application Server in a clustered environment. The only thing to be aware of is licencing. As licencing is local to each machine, each PC in the cluster would have to have its own licence definition/database. Old KB# 6941
Problem: COBRT199 Operating System error code lies outside expected range (Fatal) Error This error may be encountered when attempting to output a sequential file greater than 4 gigabytes even though the EXTFH.CFG extended filehandler configuration file has the option FILEMAXSIZE set to 8. This error will only occur on certain Windows operating system levels - in particular NT and 2000. Resolution: Make certain the Windows operating system patch Service Pack 4 is applied to the development machine. You must recompile the application/program. You must also make certain the production machines are also upgraded to the same O/S patch level. Old KB# 6937#RMCOBOL#netexpress#ServerExpress#AcuCobol#COBOL
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.