Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
Problem: Using an XP machine with the Regional Language settings set to Japanese. receiving the following syntax error .... * 230-S************************************************ ** PICTURE string has illegal precedence or illegal character 1875 15 WPRTL-PRINT-AMOUNT2 PIC $$$$9.99. * 230-S************************************************ This line of code, compiles fine on an XP machine with the regional language settings set to English. Resolution: Setting the compiler directive to CURRENCY-SIGN"36" corrects the problem. Old KB# 1370
Problem: How can I check to see if the Escape key was pressed in my graphical application ? Resolution: In Dialog System the escape key can be trapped with "ESC" Event. If you are using the GUI Class library for controls or windows then you can trap the ESCAPE key with the p2ce-functionkey event. Attach is some example code to illustrate how you can acheive this. Attachments: escape.zip Old KB# 1361
Problem: When a deadlock between 2 processes occured it was found that a SQLCODE was being returned with 100 (row not found) rather than a -1205 SQLCODE. Resolution: This issue has been fixed. Please download and apply the latest Net Express 4 patch to resolve the problem. Old KB# 1358
Problem: In graphical Dialog System how to specify what window will get focus when deleting a window. Resolution: The second parameter to the DELETE-WINDOW function allows to specify what window will get focus when the specified window is deleted. For example:- DELETE-WINDOW WIN1 WINDOWFORFOCUS Old KB# 1280
Problem: Die Umlaute werden nicht korrekt in der Eingabeaufforderung angezeigt. Resolution: Die Einstellungen fuer die Eingabeaufforderung ("DOS-Prompt") muessen geaendert werden: Unter Eigenschaften, Schriftart muss TT Lucida Console oder andere True Type Schriftart ausgewaehlt werden. Darueber hinaus muss die aktive Codepage fuer die Konsole gewechselt werden. Dazu wird folgendes in der Eingabeaufforderung eingegeben: chcp 1250. Anschliessend werden die Umlaute korrekt angezeigt. Old KB# 1364
Problem: Is there a possibilty to develop an application on a 64bit Windows (x64 Edition) machine and then deploy that to an Itanium based machine? Resolution: It is not possible doing cross-develop for different 64-bit platforms. So, for example, building an application on an Itanium machine, it will not run on an X64 machine. It is the need to build it on an X64 machine for it to run there. Old KB# 1293
Problem: The following CALL crashes with a runtime error 114. "GetParameter" is a C-function in a DLL created by Visual C . 01 buffer pic x(32000). 01 len binary-long value 32000. CALL WinApi "GetParameter" using by reference buffer by value len Resolution: For modifying a buffer with this kind of DLL, it requires a pointer to a buffer. 01 buffer pic x(32000). 01 len usage binary-long value 32000. 01 ptr usage pointer. SET ptr TO ADDRESS buffer. CALL WinApi "GetParameter" using by reference ptr by value len In a C program buffer might be specified as char **buffer; Old KB# 1281
Problem: There is no FTP routine in Cobol to access and interact with a FTP server. This however can be done by using the Windows Internet (WinINet) application programming interface (API). Resolution: BUILD W/RELEASE: Net Express v5.x ============ INTRODUCTION ========== The attached demo uses the Windows Internet (WinINet) application programming interface (API) to interact with FTP protocols to access Internet resources. It is using WinInet functions to accomplish the following tasks: 1. open Internet session (InternetOpen) 2. log on to FTP server (InternetConnect) 3. determine current directory (FtpGetCurrentDirectory) 4. change directory (FtpSetCurrentDirectory) 5. create new directory (FtpCreateDirectory) 6. upload file (FtpPutFile) 7. rename file (FtpR
Problem: Is it possible to use the CALL-BY-NAME and CALL-BY-NUMBER routines within a multi-threaded application? Resolution: Yes, these routines are all thread safe and can be used within your code. Old KB# 1397
Problem: How can I set focus on an ActiveX control in Dialog. For example if my focus is on a entry field how can I reset focus on an ActiveX grid control. Resolution: You should use the "setfocus" method of the activex. Some example Dialog to do this is:- INVOKE OCX-01-OBJREF "SETFOCUS" $NULL Old KB# 1282
Problem: Release 5.0: A new compile directive was introduced with Net Express v5.0, SHARE-OUTDD Resolution: When set, multiple threads can write to the same SYSOUT or OUTDD file. When not set, a file locking error occurs in this situation. Syntax: >>-.---.-.----.--SHARE-OUTDD------------------->< -/- -NO- Parameters: None Properties: Default: NOSHARE-OUTDD Phase: Syntax check $SET: Initial Old KB# 1314#AcuCobol#COBOL#ServerExpress#netexpress#RMCOBOL
Problem: Net Express 4.0 Will Net Express be able to read files downloaded from the mainframe with COMP-3 fields? Files are downloaded as binary and therefore still in EBCDIC. Resolution: Net Express will be able to read the COMP-3 fields as they are on the mainframe. Files downloaded to the PC as EBCDIC will need to be converted to ANSI. When converting to ANSI or ASCII (in the case of UNIX platforms), the COMP-3 fields will remain the same. Old KB# 1260
Problem: If you use the ESQL Assistant to create host variable declarations and then compile with the DB2(...) directive then you will get syntax errors on the SQL TYPE IS clauses on the variable declarations. Resolution: The SQL TYPE IS syntax is designed for OpenESQL (ODBC) precompiler and is not compatible with the IBM DB2 precompiler. In Net Express you can use the menu option Options / Embedded SQL. On this dialog there is a checkbox to disable the use of SQL TYPE declarations. If you use this the code should compile with the DB2(..) directive. Old KB# 1352
Problem: How to see all variables on current line while debugging in Visual Studio ? Is it possible to do this without explicitly adding them to a watch window ? Resolution: The "autos" window while debugging performs this functionality. If the window is not visible by default in Visual Studio it should be added to the system using the "Debug \\ Windows \\ Autos" menu option or by using Control-Alt-V A shortcut. Old KB# 1286
Problem: How can you convert numeric data coming in from a csv into COBOL numerical values ? If you have a CSV file then the numeric data is in text format. These need to be converted in COBOL data items such as s9(9)v99. Resolution: You can write routines to perform the conversion but there is also a Intrinsic function numval (and numval-c) that will perform this conversion. Some example code that does this is:- special-names. class decimalchar is "0" through "9" " " "-" "." . working-storage section. 01 ws-text1 pic x(20) value "-123.34
Problem: Catalog shows the VSAM Attribute as Non-Unique even if it is unique Resolution: This is a bug in the base release of NetExpress v5.0/Server Express v5.0, this is fixed in v5.0 WrapPack 4 Old KB# 1372
Problem: Was working fine in SQL Server 2000, but now, cannot see the locks. Resolution: Since the SET CONCURRENCY statement is not supported by all ODBC drivers try the (WITH UPDLOCK) hint as follows: SELECT col1, col2 FROM MyTable WITH(UPDLOCK)WHERE (Col = 'Predicate1') This worked in SQL Server 2005. Old KB# 1303
Problem: Trying to compile a program and it will not accept the $set that is in the program Resolution: The compiler directive dialect "entcobol" was being used. This is a mainframe dialect and does not accept $set within programs (this is for PC dialect) The workaround is to use the MF directive which will allow pc code in the mainframe program or set directives in a directives file. Old KB# 1327
Problem: Sometimes when executing a Cobol program under a deployment environment you may encounter an Application Server for Net Express Semaphore error. Resolution: One way that this can be accomplished would be to use a BAT file to drive the execution of the program. An example would be as follows; @echo off rem 0001 The license database for Net Express Application Server does not exist rem 0002 ASLM: No license database header rem 0003 The license database for Net Express Application Server cannot be opened rem 0004 The license database for Net Express Application Server has been moved from its original location or removed and recreated rem 0005 A checksum has failed in the license database for Net Express Application Server rem 0026 No App Server License available for CGI rem 0027 No license is installed for Net Express Application Server rem 0028 All number Application Server Licenses are in use rem 0044 ASLM: Semaphore failure.
Problem: Release 5.0: After installing very new this Net Express 5.0 developing environment: (1) How to start an user application developed with NetExpress 5.0 not using the Net Express 5.0 IDE? (2) Is there a need to install a Micro Focus Server (Application Server) on the same machine? Resolution: (1) This can be done starting a Net Express 5.0 command prompt: Start -> All programs -> Micro Focus Net Express 5.0 -> Net Express command prompt (on Vista 64 bit machines there are both Net Express 32-Bit Command Prompt, also Net Express 64-Bit Command Prompt available) and to go to this own .exe to start the user application, it could be necessary to adjust Windows PATH environment variable first if the .exe calls dll's needed for this application. (2) It is not possible and there is no need to install a Micro Focus Server (Application Server) on the same machine having this Net Express 5.0 product already instal
Problem: Is it possible to access MicroFocus ISAM files on a Windows XP 64-bit platform from a NetExpress application running on a Windows 32-bit platform? Resolution: Yes, it is possible to access Micro Focus ISAM files on a 64-bit platform from a Net Express application on a 32-bit machine. Old KB# 1256#netexpress#COBOL#RMCOBOL#AcuCobol#ServerExpress
Problem: The COBOL intrinsic function random generates after each program start the same sequence of numbers again - it is a pseudo-random number. How can a better random number be generated? Resolution: The WinApi UuidCreate computes a unique random number. The probability to get the same number twice on different computers is very low, because UuidCreate uses the Ethernet or token-ring hardware address for this computer to be unique between different computers. Please check, if the UUID computed with the attached demo resolves your requirements. Attachments: UUID.zip Old KB# 1295
Problem: Crystal report has a COM Interface (RDC) that allows you to generate reports from an application. How do you call the export method from COBOL? Resolution: The export method is called from VB as follows:- myreport.export false In COBOL you can perform this using:- 01 boolval pic x comp-x value 0. move 0 to boolval *> Sets to false invoke myrdcreport "export" using by value boolval Old KB# 1399
Problem: When running an EXE outside the netexpress ide received the error about cbl_ctf_tracer_get entry point not found in dyamically linked cblrtss.dll Resolution: The program has been compiled with a higher version of cobol and is finding a cblrtss.dll that is a lower version. Search machine for all cblrtss.dll s - and delete them or change environment so newer EXE does not find the older cblrtss.dll. Old KB# 1384
Problem: CBL_DELETE_DIR only deletes empty directory by design. How to delete a directory with the files within then? Resolution: You always may delete file by file using CBL_DELETE_FILE or any other methods before using CBL_DELETE_DIR. A quick way to do this is to execute RMDIR or RD command in a x'91' function 35 (or in a WinAPI function CreateProcess). RMDIR and RD stand for Remove Directory. Here is a code using the RD command (RMDIR = RD): $set defaultbyte(00) identification division. program-id. x91fn35. working-storage section. 1 x pic x. 1 result pi
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.