Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
Problem: Is there a general purpose example of RM/COBOL's built-in line draw facilities? Resolution: See attached source code example. Attachments: lin.cbl Old KB# 6135
Problem: How do I round numeric data? Resolution: See the attached source code example. Attachments: round.cbl Old KB# 6139
Problem: Is there a way to copy a file to/from a UNC path from a COBOL program? Resolution: You could do a CALL "SYSTEM" or use the BinaryFileCopy.zip attached. The library it contains will copy a file from a network UNC to a printer via a UNC from RM/COBOL. The attachment includes the C source, the CodeBridge template and a COBOL example. Disclaimer This is not an official Liant Software Corporation product and is therefore unsupported although enhancements and fixes will be considered time permitting. Please forward any queries to the London office of Liant Software at support@liant.co.uk. Attachments: BinaryFileCopy.zip Old KB# 6130
Problem: How do I keep the key combination of Ctrl C or ctrl break from quitting the application? Resolution: If you are using Dialog System character mode screensets, you can move a value of 4 to ds-control-param of the control block. This will keep CtrlC keystrokes from quitting the app. Making a call to X"B0" with function 4 will stop CtrlC from quitting apps that don't use Dialog screensets. Old KB# 6563
Problem: Cannot display list of Windows for screens Resolution: When AUTO RESTART is set to YES (in ds.cfg), Dialog System saves the positions of the Windows list and Controls list in DS configuration file (ds.cfg). If these list windows can't be invoked or displayed on screen: 1. Exit Dialog WB System 2. Edit DS.CFG 3. Delete WindowsList and/or ControlsList lines found in DSINIT section. 4. Save DS.CFG with changes 5. Re-load Dialog WB System When these two lines are deleted, the positions of these windows will be reset to the default positions. Note: When the Windows list is reset to default position (or first time to be set to AUTO RESTART = YES), this window will appear only with the title bar. Just resize to see the whole window... Old KB# 6559
Problem: When you save the screenset how does it know what STYLENAME to use? Resolution: If you specify a font side file and save a screenset, the characteristics of each defined style are saved in a text file with a .dft extension whenever the screenset is saved. The screenset can contain fonts defined in more than one environment. In this case entries are generated for each environment. If the file already exists, the styles are appended. For example, if you use a style name of "Heading1" to represent a typeface of Helvetica (Helv under Windows) bold 12 points, Dialog System saves the following definition in the .dft file: [WINDOWS] FONT-RECORD STYLENAME Heading1 ATTRIBUTES BITMAPPED, PROPORTIONAL POINTSIZE 12 TYPEFACE "Helv" END-RECORD Old KB# 6570
Problem: What is the correct way to configure/debug WOW Thin Client on a UNIX system? Resolution: First, make sure that you are using the version of WOW Thin Client on the Windows system that matches the version of the runtime. You cannot mix versions. Next, make sure you are using a Runtime Plus version or Development version of the runtime on the UNIX/Linux system. The Runtime Plus and Development versions support Thin Client, while the regular Runtime does not. If unsure, contact Support and give us the serial number; we can check for you. For normal execution: 1. Make sure the rpcstart script has execute permissions. For this example, it is located in the /usr/rmcobol directory and should look like this: #!/bin/sh # TERM=dumb; export TERM RM_LOAD_WOW_CLIENT=yes; export RM_LOAD_WOW_CLIENT cd /usr/rmcobol && runcobol ./helowrld.cob k (You can locate the rpcstart script anywhere, but make sure the rpcplus.ini file is in the same directory, and have the script change to th
Problem: How can I prevent or terminate disconnected WOW Thin Client Server process? Resolution: Use the Server configuration option under the [ServerConfig] section of the Server rpcplus.ini file: InactiveLimit This option specifies the maximum amount of time a server will wait for an already connected client to make another remote program call. Also, try UseKeepAlive, also in the [ServerConfig] section of the Server rpcplus.ini file. This option checks for connection terminations at the TCP/IP level. For it to work, the TCP/IP parameters KeepAliveTime and KeepAliveInterval must be set in the Windows system registry or the UNIX/Linux kernel. The Windows default is 2 hours. If you want to set a shorter time period, use regedit and go to: HKLM\\System\\CurrentControlSet\\Services\\Tcpip\\Parameters Add two DWORD Parameters named "KeepAliveTime" and "KeepAliveInterval". The values depend on what time you'd like. For example: if you use 600000 (ms
Problem: How to change the foreground color of a text object Resolution: Net Express Dialog System 2.0 under Windows NT4.0 How to change the foreground color of the text object Description of Problem How to change the foreground color of the text object Solution Text foreground color cannot be changed. Here's what can be done: 1) use an entry field 2) change its properties/options to make it a display field 3) specify initial text 4) then change the color of the text In design mode, it will look like an entry field, but at execution time, the entry field will look like text. Old KB# 6561
Problem: Does Micro Focus have an OFX server? Resolution: Micro Focus has no direct support for OFX within its products. However, it may be possible to integrate with this technology via XML, web services etc. You can find out more information on the Open Financial Exchange specification (OFX) at: http://www.ofx.net/ofx/pressget.asp?id=44 Old KB# 5801
Problem: Changing the current date to test in a project. Resolution: Open the project where you want the date changed. Go to the Project/properties tab. Select Application under Environment. Next choose the Testing tab - here you can change the Year, Month and or day. Old KB# 5797
Problem: Data entry field should display as blank until a new value is keyed into field. Resolution: This is an ADIS configuration option that can be set up with ADISCF and saved in a modified ADISCTRL file. Since you are migrating from an older version of Micro Focs COBOL to the current version, search the system where the older version is installed for an ADISCTRL file and copy it to the new system. The ADISCTRL file should be in the folder where the application programs are executing.
Problem: Release 4.0: Using the XML GENERATE statement from IBM mainframe COBOL in Net Express. Resolution: Use Net Express 4.0 with the WrapPack all06n40 or later. Old KB# 5806
Problem: Message when running deployed application: "Unable to find COBOL run time" even though Application Server has been installed onto the deployment machine and the PATH and COBDIR environment variables are pointing to the Application Server installation folder. Resolution: If you are deploying EXE's or DLL's it is worthwhile checking to see whether they are built to use Dynamic Binding - as this forces the application to search for the COBOL runtime using the path's set in the Windows registry. If you build them and deploy them to not use Dynamic Binding the the application will look for the COBOL run time using the location set using the PATH and COBDIR environment variables. Old KB# 5799
Problem: Is it possible to specify a Y2K pivot date with MFSORT? Resolution: Unfortunately there is no way to specify the Y2K pivot year with MFSORT i.e. where the 20th and 21st centuries start. Old KB# 5800
Problem: If you have applied IBM FixPak 10 to DB2 UDB V8.1 / V8.2, a SYSIBM:CLI:-805 error trying to access SYSIBM.SQLTABLES may occur when attempting to connect to the DB2 database to retrieve the list of tables from within the ESQL Assistant. Resolution: Per the IBM FixPak Readme for FP 10, you will need to manually re-bind to the database. See the IBM Support Alert at http://www-1.ibm.com/support/docview.wss?rs=71&context=SSEPGG&dc=D600&uid=swg21215626&loc=en_US&cs=UTF-8&lang=en for information on how to solve this. As documented in the IBM FixPak Readme file for DB2 Version 8.1 FixPak 10, you will need to bind the db2schema.bnd file against each database, as follows: At a command prompt: db2 terminate db2 connect to <database-name> db2 bind <path>/db2schema.bnd blocking all grant public sqlerror continue db2 terminate ...where <database-name> represents the name of a database to which the utilities sh
Problem: Can you have large numeric data items greater than 18 digits - pic 9(18)? Resolution: The INTLEVEL"4" compiler directive can be used to declare long numeric data fields, PIC clauses greater than PIC 9(18), up to 31 digits. Old KB# 5824
Problem: Release 4.0: Migrating from IBM's DB2 and compiling a source including Oracle's SUM and CASE function respectively: SELECT ... SUM(CASE TRIGGERTABLE WHEN 'RS032' THEN 1 ELSE 0 END) ... and getting back compiler error: COBCH0149S No SQL directives have been set : N:\\mf_ora\\Source\\cobol\\RS032.cbl(143,15) COBPR0000S 000400:Encountered the symbol "TRIGGERTABLE" when expecting one of the fol : N:\\mf_ora\\Source\\cobol\\RS032.cbl(147,44) COBPR0000S 000400:Encountered the symbol ")" whe
Problem: With the CBLLINK command, an EXE (or DLL) can be linked with the dynamically bound shared runtime library using the -rs option. Resolution: From the Net Express IDE, you can link an EXE (or DLL) with the dynamically bound shared runtime library as follows: 1. Right-click on the EXE from the project tree, the left pane of the IDE 2. Select Build Settings 3. Click on the Link tab 4. Make sure Shared is selected 5. Click on the check box for Dynamic 6. Click on the Close button 7. Rebuid the EXE Old KB# 5816
Problem: Release 4.0: Receving a return code 14605 for a file operation using a call_by_name CBL_ routine Resolution: 14605 is a decimal number representing the related run time error in two bytes basically in hex format: '390d', the most right byte hex '0d' describes a value of '013' decimal. You can find more information about run time error '013', and all other cases, here: Net Express Help -> Index -> Run-time system -> error messages -> Run-time System Error Messages ->refer to 013 -> File not found If you want to act programmatically take a look here: http://www.microfocus.com/Resources/Newsletters/SupportLine/20051101-index.asp#TechnicalArticles >Interpreting the Return Code of a Library Routine< Old KB# 5796
Problem: Working with IUnknown pointers in an OLESafeArray. If you have an instance of OLESafeArray which contains the OLE type (determined by invoking "getVarType" on the safe array object) VT-UNKNOWN (value 13 in olesafea.cpy copy file), you can use the OLESafeArray "getElement" method to retrieve the pointer value. You can then use the pointer value as a parameter to the olesup "getCOBOLObject" method to return an object reference which you can then work with. Resolution: Working with IUnknown pointers in an OLESafeArray. If you have an instance of OLESafeArray which contains the OLE type (determined by invoking "getVarType" on the safe array object) VT-UNKNOWN (value 13 in olesafea.cpy copy file), you can use the OLESafeArray "getElement" method to retrieve the pointer value. You can then use the pointer value as a parameter to the olesup "getCOBOLObject" method to return an object reference which y
Problem: Das Modify Data Tag (MDT) soll als Eigenschaft eines Feldes im Editor gesetzt werden. Kann üblicherweise bereits für ein BMS Feld eingestellt werden, nicht erst im SEND MAP Aufruf. Wo ist der Schalter im Net Express BMS Editor ? Resolution: Das MDT Bit wird durch den Schalter FSET in den Feldattributen gesetzt (Field Properties / General). Old KB# 5790
Problem: If COBDIR is defined with the correct values, as an environment variable for the Windows system, there are no compilation errors. When it is removed from the environment variables in the Windows system and defined with the same values in the Project Properties in Net Express IDE, compilation errors are seen: ASLM: Semaphore failure. ASLM: Errno 1002 Rebuild complete with errors Resolution: The COBDIR environment variable lists the paths of the COBOL system directories where INT, GNT, LBR, DLL and EXE files, which are used by an application, occur. Setting this in the IDE, will cause the COBOL runtime to look only in the path specified. You should set the COBDIR environment variable in the Windows System. If you do set the COBDIR environment variable in the IDE, you will have to prefix your path with '%COBDIR%;' to ensure the application finds the run-time files needed, for example: Variable - COBDIR
Problem: A VB application needs to run a COBOL console application in the .NET environment. Pressing a button on a VB form is required to startup a COBOL Console exe that will accept and display. Resolution: One way would be to have a COBOL COM object (a dll) as a proxy between the VB application and the COBOL Console application. This is the documented method and is the recommended route to take when passing arguments or values between the two languages. Please refer to the documentation on COM in the Getting Started and Distributed Computing books. Please note that you cannot accept and display from a COBOL dll. On the otherhand, you can run a COBOL Console exe directly from the VB with the following statement in the VB code: System.Diagnostics.Process.Start("the COBOL Console exe file") Old KB# 5822
Problem: Converting a data file from EBCDIC to ASCII that contains packed numeric fields (usage COMP-3) using DFCONV from the command line, or alternatively the File Convert data tool from the Net Express IDE, results on corrupted data in the numeric fields. Resolution: The problem may be that the packet fields are not EBCDIC character data, they are just numeric data that follows a particular format (packet decimal) but it always follows the same format whatever the OS. I will give you an example. If you have the following hexadecimal data from the mainframe: 94 2C What would you say it is? It could be the value 924 in packet decimal format, but it could also be the EBCDIC string "k<". If you tell the File Convert tool that your file is all in EBCDIC, it will take it as the string "k<" and generate its ASCII equivalent, in hexadecimal: 63 BC This is perfectly valid if it really was the string "k<", but if that
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.