Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
Created On: 18 May 2012 Problem: How do I write to a printer on Windows when my text includes embedded Printer Control Codes (PCL) and ESC sequences?I have tried using the run-time tunable printer_redirection=TRUE to redirect output to the Windows Print Spooler but when I use these ESC sequences they are being stripped out and I am not getting the formatting that I expect.How can I write to a Windows printer that is not attached to LPT1 and have the printer recognize my PCL codes? Resolution: There is a new run-time tunable introduced in Visual COBOL 2.0 that provides for this capability in managed code .NET programs.It is called printer_raw_redirection and it can be used in conjunction with printer_redirection to allow you to write directly to a Windows printer and still use your embedded PCL codes.See the attached example program called testprintraw.Here is the description of this example: TESTPRINTRAW This sample program demonstrates the capability of printi
Created On: 25 May 2012 Problem: When using the XML GENERATE statement in my COBOL program datanames are all being converted to upper-case when they appear in the XML as tags.Is there a way to get it to retain the case that is specified for the datanames in the program?Example:01 Customer. 05 CustName pic x(20) value "Mike". 05 CustCompany pic x(20) value "Micro Focus".01 xml-doc pic x(100). XML GENERATE xml-doc from Customer results in:MikeMicro Focus Resolution: You can retain the mixed case used in the datanames by using the compiler directive:$set preservecaseExample:01 Customer.05 CustName pic x(20) value "Mike".05 CustCompany pic x(20) value "Micro Focus".01 xml-doc pic x(100).XML GENERATE xml-do
Created On: 15 May 2012 Problem: When converting an application from a Net Express native Windows project to a Visual COBOL managed .NET project the run-time tunable settings stored in the file COBCONFIG.CFG which is pointed to by the COBCONFIG environment variable are not being picked up when the application is run. Why is this? Resolution: Although the COBCONFIG environment variable/COBCONFIG.CFG file is still used in Visual COBOL native projects it is not used by Visual COBOL managed code .NET projects.To set tunables in a managed code .NET project you need to do so by using an app.config file in your project.To add an application configuration file, the project needs to be one that will output a main program (.EXE).Right click on the project name in Solution Explorer and select Add-->New-->Application Configuration file.Then double-click on the app.config file in your project to open it in the XML editor.Tunables are set as follows: Old KB# 359
Created On: 29 May 2012 Problem: I have a native code COBOL application that sends data records to a specific printer under Windows. These data records have Printer Control Language escape codes embedded in them.I know that there is new functionality in Visual COBOL 2.0 to allow for managed code .NET programs to send a file to a printer in RAW format but how do I do this in a native code program? Resolution: The native code program can call a managed code program by using COM Interop functionality of .NET. Attached is a Visual Studio Solution that demonstrates how this can be done.The description of this example is as follows:VCPRINTRAWThis example program demonstrates how a file containing Printer Control codes (PCL) can be sent to a printer as RAW data so that the esc sequences will not be stripped out by the Windows print driver. Starting in Visual COBOL 2.0, two methods of accomplishing this task have been added for managed code .NET programs
Created On: 18 May 2012 Problem: I know that I can export Visual COBOL ADO connections into an XML file using the ADO Connection Editor. Is there a way to automate the import process on the production computers so that we don't have to start ADO Connection Editor on each one in order to import the connection information? Resolution: There is a tool to automate the import of ADO connections onto production computers in Visual COBOL 2.0 and COBOL Server 2.0 called mfimportconn.MFIMPORTCONN: Enables you to import connection settings previously exported from the ADO.NET Connection Editor. Important: You must run this command from a 32-bit or a 64-bit Visual COBOL command prompt, available from Start > All Programs > Micro Focus Visual COBOL. Syntax{MFImportConn32_v2 | MFImportConn32_v4 | MFImportConn64_v2 | MFImportConn64_v4} path:\\exportedXMLfile {System | User} {32BIT | 64BIT} Important: Use the executable that fits the type of connection
Created On: 18 May 2012 Problem: An ADO database connection was defined using the Visual COBOL ADO Connection Editor on the development machine. We moved the application to a production machine on which COBOL Server 2.0 is installed. When the customer runs the application on this production computer they get an error in the CONNECT statement.Are these ADO connection settings automatically exported along with the .EXE? Do we have to define those connections on each client machine? Resolution: The connections created by the ADO Connection Editor for managed code are not automatically brought over with you application but they can be exported on the development computer and then imported on the COBOL Server machine. Open up the ADO Connection Editor on the development computer and click the Export tab. Here you can select the connections that you wish to export to an xml file. Bring this file to your Server computer and start ADO Connecti
Created On: 15 May 2012 Problem: Visual COBOL 2.0 introduced a new run-time tunable called printer_raw_redirection which causes output sent to a file defined as: select file-name assign to PRINTERto be redirected to the Windows print spooler as raw data when running in a managed code .NET application.This enables you to send Printer Control Language (PCL) escape sequences directly with your print data. When setting this tunable in the .NET app.config file, however I get a file status of 9/004 returned when the file is opened for output. Why is this? Resolution: In order to use the printer_raw_redirection tunable you must also set the printer_redirection tunable on first in your app.config file.You can set this up in your app.config file as follows: Old KB# 35950
Created On: 31 May 2012 Problem: Is it possible to pass a Java String array to COBOL in a manner so that the COBOL program can receive this as a COBOL table in the linkage section as if it were being called by another COBOL program? Resolution: Yes, it is possible to pass a Java String array to a COBOL subprogram through it's linkage section using the COBOL type Pointer defined in it's Java support classes.An example Net Express 5.1 project is attached to this article. The following is the description of this project: PASSARRAY This example program shows how a simple Java string array can be passed between Java and COBOL using the COBOL support
Created On: 04 May 2012 Problem: When creating a new project in Net Express and trying to animate a program only a command text box is displayed and the animator never displays the actual source code. What could be wrong? Resolution: The problem can be caused by having the incorrect local working directory specified under Animate > Settings.If you create a new Net Express project by copying an existing projects .APP file into a new location you might run into this issue as the local working directory may be set to the location of the previous projects file.If you are using a template project then you should specify a directory like .\\ which means current directory instead of hard coding the name of the folder.Look under Animate > Settings an make sure that the local working directory is set to the correct project folder. Incident #2572077 Old KB# 35932
Created On: 23 May 2012 Problem: Creating an installation package with the tool OnWeb Web-to-Host pro MSI packager and the installation on a client machine via the file .msi is successful, but an error occurs when launching the file .html:Error message : 1900 An error occurred when downloading one of several componants Pro Client on your computer. This error can be linked to a certain number of issue, including an electricity failure or the end of you network activity. The installation has been canceled and the session won’t be run. In order to get technical assistance and solve this issue please contact your system administrator. Resolution: Error 1900 is a generic error message so here it means there is somehow a mismatch between the html file created and the components selected in the msi packager to install on the client machine.You will need to select the components in the msi packager that are actually used in the html file.For example, there will be a problem (and t
Created On: 23 May 2012 Problem: In Rumba there are quite a lot of different file extensions for example: *.csf, *.cbr, *.mnc. What do these file extensions represent? Resolution: This list may not include all possible file extensions available but it will have covered most of them:RDPS (Desktop Profiles) RSDA (AS/400 display Session Profiles) RSDM (Mainframe display Session Profiles) RSDU (UNIX/VAX display Session Profiles) RSDH (HP display Session Profiles) RSPA (AS/400 printer Session Profiles) RSPM (Mainframe printer Session Profiles) MAP (keyboard map files) RMC (macro files) MNC (menu configuration files) HSP (hotspot files) SNC (synchronization files)CSF (Scripting language files)CBR (Customised toolbar files) Old KB# 35966#Rumba
Created On: 15 May 2012 Problem: How can I retrieve a list of dataset names from the catalog, using asterisk wildcards? Resolution: The utility program MVSGETCT can be used to scan the Enterprise Server catalog, using the Start and Get Next function codes. Although there is no direct support within MVSGETCT for a browse function, or the use of wildcards, these features can be emulated by writing an interface layer between applications and MVSGETCT. The attached zip file contains an example of how dataset names can be retrieved using trailing asterisk or double asterisk notation to specify the pattern matching criteria. A single trailing asterisk retrieves all names that match the dataset prefix (the part of the name before the asterisk), but do not have any extra nodes in their name. Double trailing asterisks retrieves all names that match the dataset prefix, regardless of any extra nodes that may be present in their name. For example:- MFSLV.TEST* -> M
Created On: 26 April 2012 Problem: Converting a native Net Express Dialog System application to Visual COBOL.Visual COBOL application uses a managed main program which does a platform invoke call to a native Dialog System program using the Dialog System Addpack.The Dialog System screenset contains an ActiveX control which has a control program.The managed program calls the native program fine but when the screenset is being initialized and the control program for the ActiveX control is being executed an error occurs in Create-ActiveX-Instance section on: invoke wsEventManager "initializeOLE" The error states that OLE has already been initialized using a different threading model.Why is this ocurring? Resolution: When mixing .NET managed and native/ActiveX the customer will need to understand how COM threading models work. .NET uses MTA threads as the default, whereas ActiveX requires STA. When using .NET as the main program this needs to be marke
Created On: 24 April 2012 Problem: The default behavior on a screen form is to type data in the form using lower-case and upper-case text at the same time. In some cases, it is necessary to force the use of upper-case (or lower-case) only. Resolution: Adding the UPPER (or LOWER) property to the definition of a screen control is one method of accomplishing this. However, this requires the program to be recompiled. An alternative solution that does not require compiling is to configure some environment variables. For character screens, use this environment variable: KEYBOARD case=lowerorKEYBOARD case=upper For graphical screens, the KEYSTROKE environment variable allows you to remap lower-case to upper-case, or vice versa. For example:KEYSTROKE data=65 97 <- this will transform the edited 'a' in 'A'KEYSTROKE data=66 98 <- this will transform the edited 'b' in 'B'KEYSTROKE data=67 99 &
Created On: 24 April 2012 Problem: Using AcuConnect Thin Client 9.1.0 or 9.1.1 and your focus is on a cell of a grid and you press a hot-key to call another program, when the called program is closed you could get a MAV (memory access violation). Resolution: This is a bug which now is been fixed with ECN-4163. The correction will be available in next release 9.1.2. Incident #2566228 Old KB# 35868
Created On: 24 April 2012 Problem: A Java program calls a cobol program using CVM.jar. It gets this java exception:Initializing logging.CVM: begin loadCVM: runtime library successfully loaded.CVM: exception caught in constructorCVM: Exception caught loading CVM: nullCVM: end load Exception caught loading CVM: null java.lang.NullPointerException at com.acucorp.acucobolgt.CVM.getCommandLineArray() (Unknown Source) at com.acucorp.acucobolgt.CVM.initialize() (Unknown Source) at test.main(java.lang.String[]) (Unknown Source) Resolution: Check to make sure the environment is setup correctly, taking care about existing values for previous installations. For example, this command line was used to setup environment variables: export CLASSPATH=$CLASSPATH:/usr/acucobol/tools/CVM.jar:. export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/acucobol/lib export PAT
Created On: 23 April 2012 Problem: Xcentrisity BIS for Windows fails to generate a response with a "server too busy" error message. Resolution: Xcentrisity BIS uses a system resource called a "Thread" to render pages. For efficiency, BIS maintains an internal pool of threads, and when a request for a BIS page arrives, a thread from the pool is dispatched to serve the page. If there are no available threads in the pool, the request must wait for a thread to become available. A request will wait for some period of time (normally about 60 seconds) before being denied with a “server too busy” error page. The BIS_MAX_THREADS environment variable may be used to increase (or decrease) the size of the thread pool. The syntax is: BIS_MAX_THREADS=n Where, n, is an integer value that specifies the number of threads that will be used by BIS to service requests. The default value for n is 5. Old KB# 35860#COBOL#XBIS#AcuCobol#RMCOBOL#Servertoobusy#BIS#IIS
Created On: 23 April 2012 Problem: Is there a web service available if you wish to interface with your COBOL for extend application? Resolution: In order to access a published web service, your COBOL program will need to be able to execute HTTP requests, and, manage XML documents. To address these two requirements, Micro Focus provides RMNet and XML Extensions for extend. The RMNet subprogram library ships for free with extend v9.0.0 . RMNet is an HTTP client for the extend Runtime, and, it allows your COBOL program to make HTTP requests. The XML Extensions subprogram library, also, ships for free with extend v9.0.0 . This product will allow you to create XML SOAP requests and import XML SOAP responses. Attached to this Knowledge Base Article is a zip archive, RMNetTutorial.zip, that contains a tutorial that describes how to use RMNet and XML Extensions to consume a web service. Attachments RMNetTutorial.zip Old KB
Created On: 26 April 2012 Problem: A customer recently upgraded the AIX operating system or installed an AIX system patch. Now when compiling, they receive message 0711-552 SEVERE ERROR. Resolution: The problem affects clients running AIX operating system 5.3 /6.1/7.1 and using Server Express 5.0/5.1. The users receive the following error when they compile: ld: 0711-552 SEVERE ERROR: Object somename.o Csects with symbol numbers 200 and 180 overlap. IBM has been rolling out a patch to the AIX operating system that updates their system linker and causes it to flag an error when SX compiles an external .o file into an executable. The fix Development made a correction in Hotfix 3 for Server Express 5.1 WrapPack 6. It is also included in later Hotfixes and will be part of Server Express 5.1 WrapPack 7. Info These Hotfixes must be installed “over the top” of Server Express 5.1 WrapPack 6 Link Here is a link for Serve
Created On: 30 April 2012 Problem: Is it possible to pass command-line parameters to a Visual COBOL main program using a linkage section item? Resolution: Yes, it is possible to pass command-line parameters to a Visual COBOL native linked .EXE by using the run-time tunable command_line_linkage.Program should receive parameters as follows:linkage section.01 CommandLine. 05 CommandLineLen pic 9(4) comp. 05 CommandLineParams pic x(256).procedure division using CommandLine.You must create a text file (called cobconfig.cfg in this example) containing the following line:set command_line_linkage=TRUEand then set the environment variable COBCONFIG to point to the file:SET COBCONFIG=c:\\myapp\\cobconfig.cfgThen when you start the app by passing it parameters on the command-line, e.g. myapp.exe "This is a test"then the length of the command line, 16 in this ca
Created On: 23 April 2012 Problem: When attempting to add a new record, or, update an existing record, the, WRITE fails with a COBOL I/O error 24, 02. Resolution: A COBOL 24, 02 error indicates that there is insufficient room left in the file for the operation. This behavior can occur when an index file has reached it's maximum size as defined by it's configured File Lock Limit. In order to have the affected file grow larger, you will need to modify the exiting file's configured File Lock Limit, and possibly the Index File Version, using the Define Indexed File (rmdefinx) Utility. If you would like all newly created files to be configured with a larger file limit, then, you will need to add the following keywords to your RM/COBOL Runtime Configuration file(*.cfg): RUN-FILES-ATTR LARGE-FILE-LOCK-LIMIT=nRUN-INDEX-FILES USE-LARGE-FILE-LOCK-LIMIT=YES **Where, n, is the File Lock Limit as expressed in gigabytes(GB). The default is
Created On: 27 April 2012 Problem: I would like to import data contained in Excel without the need to parse a CSV file, or, access an Excel ODBC data source. Resolution: Current versions of Microsoft Excel have the ability to save a spreadsheet in the form of an XML document. This is accomplished by using the 'XML Spreadsheet' option of the 'Save as type:'. The resulting XML document is quite rich in the detail saved for the spreadsheet, including formulae used to produce cells, as well as cell values. You may refer to the Microsoft web site for more information about this particular XML specification, named SpreadsheetML. There are also several books devoted to using XML in the Office suite. Using XML Extensions, one can import virtually any detail of the resulting spreadsheet. The attached example demonstrates the most common requirement: importing the actual data values from the sheet. The example XSLT (XML translating stylesheet) assumes that the first row contains col
Created On: 23 April 2012 Problem: An RMNet HTTPS request fails with an SSL certificate verification error. Resolution: The ca-bundle.crt file that ships with RMNet contains PEM format certificates for the Certificate Authorities that are used to verify valid SSL certificates. This bundle is not guaranteed to be up-to-date, however, and might not contain the Certificate Authority that generated your SSL certificate. You can obtain an updated CA Bundle file from this website: http://curl.haxx.se/docs/caextract.html Old KB# 35859#AcuCobol#RMNet#COBOL#SSL#RMCOBOL#Certificates
Created On: 12 April 2012 Problem: In the Data File Editor (DFED) inside the Net Express IDE you might want to edit a SEQUENTIAL data file in FORMATTED mode.To view a file in FORMATTED mode you need to go through the process of generating the .STR file to record the record layout to be used when editing the file. This is explained in the Net Express manuals. Once this has been done you can then either double-click on the file name or right-click and select 'Edit' in order to view the file. However, you may have completed this process and then attempted to edit the file, as shown in the manuals. But instead of immediately seeing the file in FORMATTED mode it brings up the Data File Editor, which asks for the File Organization and the minimum and maximum record lengths.So even though the .STR file has been generated and stored in the same directory as the data file, why doesn't it automatically display the file in FORMAT
Created On: 16 April 2012 Problem: A certain Hotfix for a UNIX based system is needed. How do I obtain and install the Hotfix? Resolution: Step 1 Your supportline representative will provide: Login: ####### Password: ######## Step 2 The Hot Fixes are on the ftp site: ftp.microfocus.com Click the View menu and select Open FTP Site in Windows Explorer. Then right click and select Login As… and supply the login and password. This will go directly to the correct area for the Hotfix requested, based on the id and Password. Step 3 To install the Hotfix: 1. On the target server, log in as root. 2. Create a temporary directory: mkdir tmpdir 3. Download the Hotfix into the temporary directory.The downloaded file should have an extension of “tar.encr”, if it has anything like “tar.tar” please rename it to “tar.encr”. 4. Set the COBDIR environment variable: COBDIR=/location-of-your-cobol-product export COBDIR 5. Give execute permissions to the downloaded package: chmod x pa
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.