Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
Problem: Release 4.0/5.0: Das nachfolgende Programm laesst sich fehlerfrei uebersetzen, obwohl Anweisungen, wie z.B. DISPLAY "Hallo Welt", nicht im Bereich B (ab Spalte 12) beginnen! Es sollen aber Standards bei der Codierung eingehalten werden und der Compiler sollte deshalb beim Umwandeln feststellen, ob gegen Regeln verstossen wird. Es wird die beiliegende COBOL.DIR eingesetzt : CONFIRM SEQUENTIAL"LINE" RECMODE"V" CHARSET"ASCII" ANS85 REMOVE"name" NOSPZERO BOUND DIALECT"BS2000" 1234567A9..B IDENTIFICATION DIVISION. PROGRAM-ID. X230B01P. / &
Problem: If a very large MFEXTMAP is used, you may experience strange behaviour during Compile or Animate. Environment variables are not resolved, or accept environment-value will not get a value. Any start of Animate may end in a Load failure 198. Alternatively an entry point failure in cblrtss can appear. Resolution: A reason for such errors are too many entries in MFEXTMAP.DAT. The maximum number is 1286 different entries. Old KB# 1478
Problem: Demo- People don't know how to use prototyping in COBOL which can significantly reduce the number of run-time errors thet occur. Resolution: =========================================================== Micro Focus N E T E X P R E S S =========================================================== PROJECT TESTPROTO ======
Problem: Is it possible to read the value of the MY DOCUMENTS folder in Windows? Resolution: The simplest method is to read the HOMEPATH environment variable from within your COBOL program as follows: working-storage section. 01 ws-env-value pic x(255). procedure division. display "HOMEPATH" upon environment-name. accept ws-env-value from environment-value on exception display "HOMEPATH environment variable not found.". &
Problem: Running with excel odbc databases.When opening an excel spreadsheet, user receives an error stating the program was unable to find the ODBC driver dll. The error received is the following: application was unable to load msaccess. User is also receiving a -19703 error. Resolution: This problem was fixed by running a "Detect and Repair" on the Microsoft Office software. Once that was done, the dlls were updated and working properly.Old KB# 1475
Problem: Error 114 (RST114) is occurring when a Cobol program calls a Panels. Resolution: Make sure the application is linked with PANELS.OBJ. Old KB# 1459
Problem: Passing Data to a property defined as a double in an Active X control. Within a charting ActiveX control it exposes a property thats is documented to be of type double. What parameter type should be passed across from COBOL ? Resolution: The equivalent COBOL type to a double is a COMP-2 floating point variable. Old KB# 1438
Problem: Is it possible to terminate an ACCEPT using the TAB and F8 keys? If so, how are these keys detected within a COBOL program? Resolution: Yes it is possible to terminate an ACCEPT with the TAB and F8 keys. This is done by calling ADIS and enabling a function key (F8) and an ADIS key (TAB). The following program demonstrates how this is done and also how to detect the use of these keys. There are many other options and these can be found in the online documentation for ADIS. special-names. crt status is key-status. working-storage section. 01 key-status. 03 key-type &n
Problem: Cannot find the runtime. Unable to find cblrtss, when running program on the server where Application Server for Net Express (runtime) is installed. The runtime license database has been activated with runtime licenses. Resolution: When building exes or dlls, must make sure of the following before deploying. In the Project, for Type of Build Highlight the programname.exe Next, at the top of the IDE select Project -> Build Settings Click on the Link tab Under Run time library when you select Shared, make sure Dynamic is also checked. The default is that Dynamic is not checked. For all exes and dlls make sure the above is done, then do a Rebuild all of the Project. Now , deploy exes and dlls to the machine where the Application Server for Net Express (runtime) is installed. Old KB# 1494
Problem: How to uninstall XDB services and remove the XDB Server from the control panel. The resolution below is example of removing XDB Server for Net Express 4.0 Resolution: First, goto control panel -> Administrative Tools- Services Double-click on Services In this window click on Name at the top to sort Look for Micro Focus XDB Server product & version double click on the Micro Focus XDB Server In this properties window for XDB Server, look for Path to executable for example, Path to executable D:\\Program Files\\Micro Focus\\Net Express 4.0\\mfsql\\bin\\xsrvnx.exe" Next, goto command prompt and goto this location where xsrvnx.exe is located To uninstall type the following: xsrvnx.exe -u This will uninstall the XDB server. ------------------------------------------------------------------------------- There will also be a icon for Micro Focus XDB server product and version in the control panel. In ord
Problem: This KB and demonstration joined was tested with Net Express Websync3 and Server Express 5.0 Websync 3 on AIX ( Server Express 5.0 WS3 PRN: RXCAM/AAI:9l.N6.50.03) ................................... How to set Environment Variables in COBOL and retrieve them to a shell ( .bat | .sh ) ? This is quite a common question asked more times to MF Supportline ................................... When you use the syntax working-storage section. 01 ENV-value pic x(200). 01 ENV-name pic x(200) . Procedure division *> SetEnvtVar. *--> set the value of environment name &nb
Problem: Is it possible to access the mainframe using Mainframe Access (MFA) with Net Express and Server Express, i.e. to access data files on the mainframe? Resolution: In migration projects we recommend that customers buy and use Mainframe Express Enterprise Edition (MFE EE) that includes MFA to download everything from the mainframe and test the application the first time. Once the application works on MFE, there is a tool part of the Migration Toolkit that will create the Net Express project from the MFE project. The migration toolkit can also be used to pass the project to Server Express. Once the application is on Enterprise Server there are different ways to access the mainframe... - you can run a remote CICS transaction on the mainframe. This doesn't require MFA. - if you are using UDB (remember that XDB used by MFE is not a production system) you can have remote databases on the mainframe, but this is all done using IBM's tools. - if
Problem: Can you share a Database Connection between .Net Languages (VB and C#) and COBOL. In the scenario C# would create a connection and pass that to COBOL. COBOL would then use the connection and issue its Embedded SQL on the same connection. Is this possible ? Resolution: Yes using ADO.Net you can pass a connection object from C# to the COBOL. The COBOL then can use EXEC ADO BIND to specify that the C# connection is to be used when executing embedded SQL. Attached to this article is some example code showing how to do this. Attachments: DNSharedConnection.zip Old KB# 1505
Problem: Customer upgraded to the V8 C compiler in Net Express and now gets the error R6034 an application has made an attempt to load the C runtime library incorrectly. Resolution: When using Micro Focus NET EXPRESS with .NET products with Microsoft Visual Studio products: NET EXPRESS 4.0 with .NET is ONLY supported with VISUAL STUDIO 2003 and VISUAL STUDIO 2005 is NOT supported with NET EXPRESS 4.0 with .NET NET EXPRESS 5.0 with .NET is ONLY supported with VISUAL STUDIO 2005 and VISUAL STUDIO 2005 is NOT supported with NET EXPRESS 4.0 with .NET Old KB# 1454
Problem: This is a demo program that shows how to share files between different instances of the same class. Many people are confused as to where file definitions should reside in an OO COBOL program. Resolution: =========================================================== Micro Focus N E T E X P R E S S =========================================================== &nb
Problem: How can I enter a username greater than 8 characters with IBM UDB? Resolution: IBM DB2 UDB limits you to 8 character logon id's - see: http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp?topic=/com.ibm.db2.udb.uprun.doc/doc/r0006867.htm USER authorization-name/host-variable Identifies the user ID trying to connect to the application server. If a host-variable is specified, it must be a character string variable with a length attribute that is not greater than 8, and it must not include an indicator variable. The user ID that is contained within the host-variable must be left justified and must not be delimited by quotation marks. USING password/host-variable Identifies the password of the user ID trying to connect to the application server. The password or host-variable can be up to 14 bytes long. If a host variable is specified, it must be a character string variable with a length attribute not greater than 14, and it must not
Problem: What mechanisms are there to convert strings to numbers in a COBOL Program. Resolution: COBOL has the NUMVAL intrinsic function avalable on all platforms. .Net also has available some methods for converting. On the numeric data classes such as System.Int32 and System.Decimal there is the "Parse" and "TryParse" methods. Parse will attempt to convert but will throw an exception is the format of the string is not valid. TryParse will attempt to convert and will return a boolean if the conversion fails. If you expect that a numeric parse will fail then use tryparse as an exception from Parse is expensive in terms of performance in an application. Attachments: Program1.cbl Old KB# 1422
Problem: Release 5.0 .NET: Trying to install Visual Studio 2005 Standard Edition as part of the Net Express 5.0.NET delivery gets back: error1311 _2_RTL_x86_enu_Visual_Database_Tools_Core.cab - File not found Resolution: This .cab file can be found among others on Disc 2 of the Microsoft Visual Studio 2005 Standard Edition delivery. Old KB# 1480
Problem: When modifying a Cobol program in the IDE and adding a copyfile statement (when there was no CPY file linked to the program before) - this will compile cleanly. Now when you do a publish to unix --> it will fail because the newly inserted copy will not be published to unix, hence the compilation fails. Publish and/or Publish All does not work. Resolution: Reason is you always need to do an update dependencies when publishing to UNIX. Overview - Updating Dependencies Dependencies exist when one file uses another file as part of its logic flow - one file is said to be dependent on the other. For example, a COBOL source file that contains a COPY statement is dependent on the copyfile specified in the COPY statement. That is, if the copyfile changes, the COBOL source file that uses it needs to be recompiled. Net Express manages most dependencies automatically; that is, files are rebuilt automatically if their dependent files chan
Problem: Compiling PROGRAM1.CBL with PROGRAM1.CPY as a copybook fails with "COBCH0056S COPY is recursive" [PROGRAM1.CBL] ... COPY PROGRAM1. ... Resolution: COPYEXT(CBL,CPY) is a default compiler directive that causes the compiler to pick up a copybook with CBL extension first. In a case where the copybook has the same name as the program, the compiler will pick up the program itself. To avoid this, here are two options: 1. set COPYEXT(CPY) to pick up copybooks with CPY extension first, or 2. rename the copybooks that have the same names as programs Old KB# 1405
Problem: You may want to do the following Visual Basic function in COBOL: ReDim Preserve FileArray(1 To ArraySize) It basically allows you to increase the size of your array as you need it at runtime. Resolution: You could move the large array to linkage then allocate memory for it at runtime when you know how many elements are needed and fix its address using "set address of lnk-array to the-pointer". It won't allow for a redim but gives some flexibility on the array size. Here is a technique that is used by some of our developers when they want to increase the array! They allocate a new block of memory with the new size, copy the contents across, and then free the old memory. There is a whole selection of CBL_ routines for allocating memory dynamically. Old KB# 1447
Problem: Compiling a DB2 application with Net Express WrapPack 4 returns an RTS173 error against "hcgetenv". Compiling a DB2 application with Net Express WrapPack 4 returns errors regarding missing entry points in DB2AGAPI.DLL If working with DB2 UDB Version 8, you may encounter issues compiling applications with the DB2 compiler directive. This issue does not occur when using DB2 UDB Version 8 FixPak 15, nor with DB2 v9 or later. Resolution: Due to changes implemented to the DB2 support within Net Express WrapPack 4, you may find that compiling applications using DB2 UDB Version 8 will fail. To resolve this, you will need to upgrade your DB2 installation to the latest IBM FixPak. You can access downloads from the IBM website (currently at http://www-1.ibm.com/support/docview.wss?rs=71&uid=swg21256059 ). Having applied this FixPak, compilation and execution will then work as expected. Old KB# 1512
Problem: We have been made aware of an issue whereby when running using an early release of the Bank Demo CICS application that has been web enabled, that when the client has been generated and deployed and you choose the 'Run Winform Client' option and press the 'submit' button you get an Error Code 2000 reported. Resolution: If you look at the console.log in Enterprise Server, you will probably notice an entry similar to the following: 070608 15240655 956 BANKDEMO CASMG9999E KC0027,Error executing service 'http://tempuri.org/BankServ#BankServ' Execution error : file 'C:\\Program Files\\Micro Focus\\Studio 5.0\\Base\\BIN\\MER0ADSX.gnt' error code: 114, pc=0, call=1, seg=0 114 Attempt to access item beyond bounds of mem This is caused by older versions of the bank demo had a PPT entry for MBANK10, where MBANK10 was not defined as a progra
Problem: This demo program will show you how to create your own functions using the COBOL language. Resolution: =========================================================== Micro Focus N E T E X P R E S S =========================================================== &
Problem: For line sequential file processing, how can spaces be alternately permitted or suppressed? Resolution: set "STRIPSPACE" variable to either "ON" or "OFF" in extfh.cfg file. Example of extfh.cfg file as follows: [XFH-DEFAULT] STRIPSPACE=OFF (for all files) BASENAME=ON (enables file handler - anything following pertains to particular files  
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.