Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
Problem: Set up COBOL application to use Non-COBOL web services Resolution: In order to use web serivces from with a COBOL application the best thing to do is generate a client side program based on the WSDL (.wsdl) which is made available by the supplier of the web service. After aquiring the .wsdl file execute the following command: imtkmake -genclientwsdl clientwsdl=[name of the wsdl file] This will create a client application program and a cleint proxy program, the application program can be used to test the ability to use the web service, The proxy program can be called by any COBOL program passing the proper arguments and it performs all of the work of communicating with the web serivce/ Old KB# 2347
Problem: Is it to set a break on data change in Server Express? Setting a break on data change can be done in Net Express. In Net Express, the following is done to set a "break on data change": - starting animating - find the field you want to set the "break on data change" - double-click the field to bring up the Examine List - click "monitor" - right click on the monitor window and select the option "Break on change value" - this shows 3 options 1) Hex 2) Break on change value 3) Query List - when "Break on change value" is selected, the monitor window has a stop sign Is there a way in Server Express to take a screen capture of the 3 options available? Resolution: This functionality is not available in Server Express. The capability may be available in a future release of the Eclipse IDE plug-in for Server Express but will not be implemented in the character animat
Problem: There are two methods of starting a COBOL CGI application, one popular method is to cretae a shell script which is invoked by the httpd web server. The subject of this document is how to debug the COBOL application which is ececuted from within this shell script. Resolution: The first requirement is that the application program(s) must be compiled for animation. This is accomplished through flags or options specified at compile time. For .int programs the flag is '-a' for .gnt, callable shared objects, or UNIX executables the flag is '-g'. All httpd web servers run under a user-id specified in the web server configuration by the server administrator. CGI scripts or programs loaded/invoked by the web server run under this same user-id. For example the administrator might set up the server so that it runs under the user-id of 'wwwrun'. All processes run by the web server will be owned by 'wwwrun'
Problem: A program compiled with "Dialect(mf)" does not produce any SYSOUT for DISPLAY statements. It does for DISPLAY UPON CONSOLE. Resolution: In the Help (using Net Express as an example): Reference > Compiler Directives > Compiler Directives - Alphabetical Listing > DIALECT Setting MF, the default options are listed for that dialect. NOOUTDD is the default for MF. In the same location, check the DIALECT Setting for the mainframe dialects (MVS, OS390, etc), OUTDD is the default for all of them. The description of OUTDD leads to the reason the DISPLAYs don't appear: "Causes DISPLAY and EXHIBIT statements to be written to a specified output file.." There are also Comments for OUTDD that provide more details: Comments: When OUTDD is specified, all format 1 DISPLAY statements which either have no UPON option or specify UPON SYSOUT, and all EXHIBIT statements and the output from TRACE are transformed into W
Problem: Execution error : cob32: Failed to locate an appropriate executable for tool 'cob32' *** Error exit code 1 Stop. Resolution: Reinstall the cobol product in clean directories. The error message is being issued from the triggers (i.e. the 'cob' utility which attempts to execute 'cob32' or 'cob64'). It would imply an issue with file permissions or a corrupt file. Please execute the following commands: ls -l $COBDIR/bin/cob $COBDIR/bin/cob?? cobfile $COBDIR/bin/cob $COBDIR/bin/cob?? sum -r $COBDIR/bin/cob $COBDIR/bin/cob?? cobmode will indicate which the default working mode to check in the output of the above commands. Ex cob32 or cob64 Make make sure $COBDIR/bin is the first directory path in the PATH environment variable. ls -l $COBDIR/bin/cob $COBDIR/bin/cob?? For eample you may find the following xrwxrwx for cob32 On a running system the permissions should be -
Problem: How to install Server Express when no CDROM drive is on the computer Resolution: If your UNIX or Linux system does not have a CD or DVD drive, you can install the product by mounting the appropriate disc on another machine, transferring the product to your machine, then running the install. The instructions below take you through this procedure. Before you start, make sure you have enough disk space for the product. The space needed is the same as the size of the tar files you use. (See step 2 below.) In addition, you need the same amount of temporary space to store the tar files. Mount the CD or DVD on the target machine. Look at the file v5000.txt. This lists the directory names and the products those directories contain. It also shows the sizes of the tar files. Change to the directory containing the product you want to install. Most of the products are stored as compressed tar files with filenames in the format vabccppp.trz, where abcc r
Problem: My program is : 77 A PIC 9 VALUE 5. IF A > 0 IF A = 5 NEXT SENTENCE ELSE DISPLAY "1" END-IF DISPLAY "2" ELSE DISPLAY "3" END-IF
Problem: STABLE or NO STABLE is an option of SYNCSORT utility EQUALS or NO EQUALS is an option of DFSORT utility DFSORT allows the user to set "option EQUALS=NO" or "option EQUALS=YES" to determine whether or not equal-key records should appear in sorted order or the order in which they are found. EQUALS tells the process to preserve the original order of the data within the "sort keys". If EQUALS is not specified, the order of the data will be unpredictable beyond the specified keys. Does MFSORT give the user this same option? Resolution: By virtue of the tree-based implementation used in MFSORT, duplicate records are returned in the order in which they were found in the input file. Unlike perhaps the DFSORT or SYNCSORT implementations in this regard, there is no overhead in producing the output in this way. This behavior cannot be changed. Duplicates are returned in order. The order in which yo
Problem: Results differ when running INT code versus GNT. Resolution: One thing that can cause differing results is the presence and use of an invalid numeric item in a computation. Sometimes programmers find it convient to execute INT programs using the -F runtime switch, this diaables error reporting for unitialized or otherwise invalid numneric data. In GNT code the default behavior is to assume that all numeric items contain valid data, there is no error checking enabled. This can cause the results of computations or arthmetic operations to differ from the results observed in INT code. To enable error reporting for GNT code, compile the the program using the NUMCHECK compiler directive, this will cause an error when invaid numeric data is encountered Old KB# 2343
Problem: The compile works, link fails with ld: Can't find library or mismatched ABI for -llibrt.so Modified the LD_LIBRARY_PATH, but it still fails. Resolution: The default linker search path can be modified by using the LPATH environment variable. This environment variable allows you to specify which directories ld should search. If LPATH is not set, ld searches the default directory /usr/lib. If LPATH is set, ld searches only the directories specified in LPATH; the default directories are not searched unless they are specified in LPATH. If set, LPATH should contain a list of colon-separated directory path names ld should search In this case LPATH was set to /usr/lib. Changed it to the /usr/lib/ hpux64 on the ia64 HP/UX server and the link works fine Old KB# 2282
Problem: Operand TIME-OF-DAY is not declared 7075 MOVE TIME-OF-DAY TO LOG-TIME-OF-DAY Is TIME-OF-DAY a microfocus extension...is it only available when the NOANS85 directive is in place? Resolution: TIME-OF-DAY is a special register data item This special register requires the compiler directive OSVS cob -uvC OSVS pgm.cbl Old KB# 2323
Problem: What is the syntaxe to use cobsje Resolution: With Server Express 4.0SP2 and Server Express 5.0 ( by default) . $COBDIR/bin/cobsje -v -J <Java_Home> If you run the command chmod x $COBDIR/bin/cobsje you can use : $COBDIR/bin/cobsje -v -J <Java_Home> With Server Express 5.0WS3 and 5.0WS4 ( by default) $COBDIR/bin/cobsje -v -J <Java_Home> Old KB# 2284
Problem: This issue occurs during migration from HPCOBOL to Server Express. The ACCEPT statement in HPCOBOL includes behavior that is an enhancement or extension of the ANSI standard ACCEPT. If the data-item being ACCEPTed already has a value, then data entered by the user overwrites the existing value on a character-by-character basis, and if the user presses Enter without entering any data, then the data-item's value is left unchanged. By contrast, the ANSI behavior is to entirely replace the existing value of the data item with whatever the user enters, and if the user enters nothing, to initialize the data item. Example code: 000001 WORKING-STORAGE SECTION. 000002 01 WS-ACCEPT pic X(10) VALUE "WOOGA". 000003 PROCEDURE DIVISION. 000004 DISPLAY "WS-ACCEPT, Press ENTER to TAKE DEFAULT: ", 000005 &
Problem: Getting permissions errors when untarring the file. Resolution: You now have to be root to untar the update. Login as root user, create the directory where you want to install the WrapPack (this is a complete re-install, not an update or overlay), untar the files into that directory then run the install script. Old KB# 2273
Problem: What is the RPM Package Manager (RPM) and what is it used for? Resolution: The RPM Package Manager is a core component for many LINUX systems, such as Red Hate and SUSE. The RPM is command line driven. It's capable of installing, uninstalling, verifying, querying and updating software package, that was installed using RPM, for the LINUX environment. That is, RPM is not valid for the Micro Focus Server Express product. Please refer to the manpage on LINUX - man rpm RPM is free software, released under the GNU GPL. Old KB# 2374
Problem: Is there a way to force entry fields in upper case in the Screen Section ? Something like the UPPER clause of the ACCEPT statement. Resolution: There is a call to ADIS (x'AF') that can be used to force lower case characters to be converted to upper case. Program-ID. upcase. Data Division. Working-Storage Section. 01 Ws-Title pic x(50). 01 Ws-Field-1 pic x(10). 01 set-bit-pairs &n
Problem: What is the replacement for the watch option (as found in OCDS) in Server Express 5.0? Resolution: In Server Express this is now called 'monitor'. Once you've started animating, you can do Query > Cursor > Monitor. Old KB# 2244
Problem: Printing is not stopping at the end of the page additional lines are printed on the next page. Resolution: Use the compiler directive RWHARDPAGE This directive causes the Report Writer control module to execute a form feed after the last item has been printed on a page, instead of the usual multiple blank lines. This ensures that the paper is positioned correctly ready for a new page. Old KB# 2095
Problem: Items with value clauses within a group level entry are reset to defaults spaces for alphabetic and zeroes for numeric. How can the coded values be retained? Resolution: The correct command is initialize ws-group all to value. If items have been coded with value clauses these values will be restored when the items are initialized even if they have been set to other values in the meantime. Old KB# 2113
Problem: Open input to a file that does not exist continues to the read, without error. Resolution: If the file does not exist, OPEN INPUT causes an error status, unless the file is optional. Defining a file status data item is optional. If a file status data item is not declared and a serious file error occurs, the COBOL run-time system displays an error message and aborts your program. You should check the file status data item after each input/output operation, to see if the operation completed successfully. For example, when your program is writing to disk, there might not be enough disk space to complete the WRITE operation. If you have not defined a file status data item and you run out of disk space, the run-time system displays an error number and aborts the program. If you have a file status data item defined (for the file you are writing), it is updated and the program continues to run. The program can then check the file status data item, det
Problem: Program defined with ASSIGN TO PRINTER is not sending output to the printer Resolution: Printing from an application in Unix is usually done via unix pipes (dd_). set up dd_ environment variables so commands will be executed by the operating system shell. The shell used is that defined in the environment variable SHELL or, if this has not been set, /bin/sh is used. The ASSIGN TO PRINTER clause does not send output to a printer; it sends it to a file named LPT1. To send output to a physical printer, you must use the dd_LPT1 environment variable or, if your system supports the lp printer spooler, you should use: dd_LPT1=">lp";export dd_LPT1 - Or you can just write in a normal sequential file and print it at the end: working-storage section. 01 myfile-fid pic x(20). 01 my-print-call pic x(30). procedure division. ...... close myfile string &
Problem: Compiling Server Express 5.0 for Itanium Using same flags, dirs, etc. as on HP PA-RISC now get the error Load error : file '/opt/cobol/dynload64/inoc.gnt' error code: 217, pc=0, call=1, seg=0 217 Incompatible host for native code file In 32 bit get the error: Load error : file 'inoc' error code: 173, pc=0, call=1, seg=0 173 Called program file not found in drive/directory Resolution: For Server Express on HP Itanium it is now necessary to set the LD_LIBRARY_PATH. LD_LIBARY_PATH=$COBDIR/lib export COBDIR This resolves the problem Old KB# 2176
Problem: Need hardcopy listing output from the compiler Resolution: Set the enviroment variable DD_LST as follows: DD_LST="> lp" export DD_LST Now when compiling programs using the TBOX/SDE developers environment - use F4 to toggle the listing option to PRINT The hardcopy listing will be sent to the UNIX print spool using the 'lp' command Old KB# 2209
Problem: If an rts error occurs COBCONFIG can be used to invoke the animator at the point where the rts error occurs. It is also possible to invoke the system debugger. Resolution: This article assumes the user has a working knowledge of the operating system debugger. If not, consult the operating system man pages or vendor. First, download attached script sysdebug. It may be necessary to modify this script to include the correct debugger for the operating system. Install this script in a directory which is on the PATH. In this directory run chmod x sysdebug Then create the file /tmp/debug.cfg with the following lines: set debug_on_error=1 set debugger_command="sysdebug" and set and export the COBCONFIG environment variable. For example in ksh use: export COBCONFIG=/tmp/debug.cfg If already using COBCONFIG, simply append these
Problem: When publishing Cobsql applications to UNIX, even if the Oracle environment is set up within the users' .login/.profile etc., this may not get picked up correctly by the remote command. This will lead to Cobsql attempting to invoke procob18, rather than procob, which will either fail (if Pro*COBOL 1.8.xxx was not installed), or invoke the wrong precompiler. Resolution: In order to resolve this, follow the instructions documented in the UNIX Option User's Guide appendix on publishing Cobsql applications. Copy the created Makefile to CSQLMakefile, then to add to the entries which create mfenv.sh : mfenv.sh: @echo "#!/bin/sh" > mfenv.sh @echo "ORACLE_HOME=MY_ORACLE_HOME" >> mfenv.sh @echo "export ORACLE_HOME" >> mfenv.sh &n
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.