Browse all forums dedicated to the Rocket® COBOL product family.
Recently active
Problem: There are times when you develope a COBOL program and a user defined data-name conflicts with a reserve word. Resolution: To remove word(s) from the reserved word list you can specify the REMOVE directive. The syntax: >>-.---.--REMOVE---"rsv-word"--------------->< -/- rsv-word = A reserved word. By default no reserved words are removed. Phase: Syntax check $SET: Initial Note: This directive does not appear in the list created with the SETTING directive. Old KB# 2075
Problem: The File Handling manual says that mfsort uses a temporary workfile during sort & merge operations. What is the name of the workfile and where is it located? Resolution: SORT uses the following environment variables to determine the location of the sort work files: Unix: TMPDIR Windows:TMP, TEMP If the environment variable is not set the current working directory is used. The temporary sort files are prefixed with M$FST and the actual files created will vary depending upon the input data. Example file names: M$FST000.TMP M$FST000.001 M$FST000.002. This applies to both Server Express and Net Express. Old KB# 2059
Problem: There are three ways to determine the number of records in a file. Resolution: The record count is at offset x"40" and is 8 bytes long in the MF file, which contains the index. You can use special op code h"0003" to read the header into the record buffer. Refer to the documentation - File Handler, chapter 7.4 Operating Code. rebuild -n or -f will give you the number of records, if the information is present. The calculation for the number of records in an ISAM file is taking the length of the file and divides by the overall record length. This is actually one byte longer than the data record. Old KB# 2091#netexpress#AcuCobol#RMCOBOL#ServerExpress#COBOL
Problem: This message is displayed under AIX 5.2 at the compilation that is made with a makefile Resolution: This message is displayed because the value of the environment variable LIBPATH is not passed to the make command by operating system . The temporary solution is to insert before the cob command the line : <TAB>LIBPATH=$COBDIR/lib;export LIBPATH;\\ example : all : cob -x prog.cbl is replaced by : all : LIBPATH=$COBDIR/lib;export LIBPATH;\\ cob -x prog.cbl Old KB# 2020
Problem: Net Express IDE -> Animate -> Start Animating... Der Animator versucht ein Programm zu laden, auch wenn es bereits aus dem Projekt entfernt wurde. Wie kann erreicht werden, dass das korrekte Programm animiert wird? Resolution: Der gewuenschte Startort zum Animieren wird in der Net Express IDE permanent hier bestimmt: Animate -> Settings -> General -> Start Animating at: Das bedeutet, dass nach dem Entfernen von ProgrammA aus dem linken Projektfenster der Eintrag ProgrammA zum Starten des Animators zunaechst bestehen bleibt, weil dieser vorher der festgelegte Ort des Startens des Animators war. Die unter Animate -> Start Animating... gemachten aenderungen sind temporaer und eine Warnung weist darauf hin, dass aenderungen an dieser Stelle nicht ins Projektfile einfliessen. Old KB# 1601
Problem: This error occurs when trying to run rebuild on UNIX or Linux Resolution: This message is saying two things: first, rebuild wants to give you a message, and secondly, that it cannot find the file of appropriate messages. This normally happens when the LANG environment variable is incorrect. typing 'locale' will show the current setting. List the available LANG values using ls $COBDIR/lang Either export LANG equal one of the supported values or try setting a link by typing 'ln -s $COBDIR/lang/C default' This should at least cause English messages to be displayed if the correct LANG value hasn't been supplied. Old KB# 2092#RMCOBOL#ServerExpress#netexpress#COBOL#AcuCobol
Problem: When migrating from Micro Focus Workbench COBOL to Server Express you can experience different results as Workbench COBOL. How can I get the same results. Resolution: The ARITHMETIC compiler directive specifies how arithmetic expressions are to be evaluated. Setting the ARITHMETIC compiler directive to TRUNC20 - Will truncate the number of digits to the right of the decimal point to 20 at each step of the evaluation of the expression. This provides similar results to the truncation provided in COBOL Workbench. You should only use this directive if you need to obtain evaluation results similar to those provided in COBOL Workbench. If you specify TRUNC20, you must not change the setting of the INTLEVEL Compiler directive from its default value of 2. This means that you cannot use some of the newer features, such as numeric pictures with more than 18 total digits, with the TRUNC20 parameter. The default value for ARITHMETIC is &q
Problem: When compiling a program using IDXFORMAT"8" in the cobol.dir file, can this program still access existing files with a different IDXFORMAT type? Resolution: Yes, the file handler knows the format of existing files when it opens them and reads the header information so it is possible to create new files as IDXFORMAT"8" while still being able to open existing IDXFORMAT"3" files. for example. Old KB# 1592#COBOL#ServerExpress#AcuCobol#netexpress#RMCOBOL
Problem: When calling semctl from a COBOL program the fourth parameter is always zero. Resolution: The interface for semctl() passes a union by value. We do not support passing a union or struct by value to a C program. From SX 4.0 SP2 the shared memory demo programs in $COBDIR/demo/sharedmem have been corrected to reflect this. See sharemem.cbl and smipc.c in this directory for further details. Old KB# 1993
Problem: Giving Visual C run time library run time error on mfnetx.exe Resolution: If this error occurs then a Repair should be run from Add/Remove Programs on Net Express. Old KB# 1576
Problem: With simply a cob -x tictac.cbl the error: ./bin/cobchecker32 not found appears Looking for this cobchecker32 in /opt/microfocus/cobol/bin indeed does not exist. Resolution: Problem is that the wrong product was installed. The server product is only the deployment products, you need studio for development. Server > Deployment Studio > Development Old KB# 2048
Problem: Is there a way to use a reserved COBOL word as a paragraph name? Resolution: Yes. Include the reserved word in the REMOVE list. Use the compiler directive REMOVE"<reserved-word>". For example, to use a paragraph name using the reserved word "LEFT-JUSTIFY", use the following compiler directive: REMOVE"LEFT-JUSTIFY", then name the paragraph "LEFT-JUSTIFY" in the source code. Old KB# 1558
Problem: Compiling a COBOL program that is running on IBM COBOL MVS and the reserved words are not being treated as reserved words by the checker. Resolution: When compiling your COBOL program use the directive "MVS". This will turn-on the IBM COBOL for MVS reserve word list. The syntax: >>-.---.-.----.--MVS------------------->< -/- -NO- Parameters: None Properties: Default: NOMVS(Dialect ) Phase: Syntax check $SET: Initial Dependencies: The MVS directive sets DBSPACE and DBCS"3" immediately. Old KB# 2074
Problem: When using arithmetic syntax and the results are not the same as the mainframe. How can I get the results to be the same. Resolution: The ARITHMETIC compiler directive specifies how arithmetic expressions are to be evaluated. Setting the ARITHMETIC compiler directive to "MF", which is the default, will not truncate intermediate results. This means that the calculation is as accurately as possible because no trunction is taken place until the very end. If you want to truncate according to OSVS COBOL, then set the ARITHMETIC="OSVS" Old KB# 1998
Problem: I would like to modify my files with SDE. But all my source files have the extension pco . Resolution: It is necessary to modify the configuration file for the development environment, which is located in $COBDIR/etc/mfcobolrc. After the tag [EDIT-USER], ( This tag describes the defaults to be used by the COBOL Editor) After the line MARGINS BAK cbl Add MARGINS pco cbl Modify the line EXTENSIONS cbl cpy cob bak CBL CPY COB BAK {space} To read EXTENSIONS cbl cpy cob bak CBL CPY COB BAK pco {space} Old KB# 2017
Problem: File status 9/104 when trying to Open a file. Resolution: You specified a data-name for a file-name instead of a literal, and the data item contained only spaces when you tried to open the file. Resolution: Recode your program specifying the correct file-name. Example Wrong: Select myfile assign to file1. open output file1. File status 9/104 Correct: Select myfile assign to file1. move "empl-file" to file1. open output file1. File status 0/0 Old KB# 2009#ServerExpress#COBOL#AcuCobol#RMCOBOL#netexpress
Problem: With project that contain many source files, the number of open windows can become difficult to manage and take a long time to manually close them all. Resolution: There is an option to keep the animator from opening a new window for each file it steps through. It is called 'Recycle Windows' and can be found by going to Options > Edit > Source Views. When this option is selected, the animator will keep recycling the same window while stepping through different source files. Old KB# 1610
Problem: Net Express 4.0 Command prompt MFNETX /DEBUG:program The program is local Why does debug want to connect to a remote machine? Resolution: First check a project under Net Express, animate tab, settings to see if remote and remote machine is set. If remote is set, unsetting that will clear the problem. In some cases the animate setting will not reflex what is in the registry. NOTE THAT CHANGING THE REGISTRY INCORRECTLY COULD CAUSE PROBLEMS WITH THE MACHINE. Windows START BAR RUN REGEDIT Look at the following location. My Computer\\HKEY_CURRENT_USER\\Sofeware\\Micro Focus\\Net Express\\4.0\\IDE\\Execute Configuration. Look at the entries for REMOTE and Machine Name. If REMOTE is ON set it to OFF to resolve the problem. Old KB# 1567
Problem: response file ( containis list of .OBJ to static link in .EXE |DLL with CBLLINK see .BAT file pasted below Resolution: .BAT file showing the use of a response file containing a list of .OBJ to be static linked in the .EXE or DLL to be generated The interesting command in shell below is: cbllink -v -d -OaDll.dll @Cbllink.fil see that the CBLLINK command uses here the file Cbllink.fil which contains a list of .OBJ: TOclP1.obj TOclP2.obj TOclP3.obj TOclP4.obj TOclP5.obj ========================= @echo off set ProgModelete=P1 del TOclP*.* rem ................................................................................. :CopyFromP1 copy %ProgModelete%.cbl TOclP1.cbl copy %ProgModelete%.cbl TOclP2.cbl copy %ProgModelete%.cbl TOclP3.cbl copy %ProgModelete%.cbl TOclP4.cbl copy %ProgModelete%.cbl TOclP5.cbl :Compil cobol TOclP1.cbl,TOclP1.obj; cob
Problem: Is it possible to create a CISAM file with the record size is 50,000 . In the documentation , the record size is 62Ko for all file organizations. Resolution: At the moment with Server Express 5.0 , the limit of size of the record for a CISAM file is 32767 ( 32Ko) . By default, the indexed file with fixed length records is created into CISAM format Old KB# 2068#RMCOBOL#AcuCobol#ServerExpress#netexpress#COBOL
Problem: Dialog System - How are multiple lines of data items highlighted in a List Box control? Resolution: Set the Selection Type to control how the list items are selected at run time. Select Single so that only a single list item can be selected in the list box. Select Multiple so that more than one item can be selected in the list box. The user must click the mouse over each item in turn. Select Extended so that more than one item can be selected in the list box. The user must click the mouse and drag it over the items to be selected. The GET-LIST-ITEM-STATE function can then be used to determine which items have been selected. Old KB# 1577
Problem: Object Cobol Developer Suite support's relatively large key sizes in small index nodes. Object Cobol Developer Suite allows a maximum of 248 byte keys in a 1024 byte node. This is not normal behaviour but can be enabled. Server Express, the maximum key size for a 1024 byte node is 100, but this can be overridden up to a size of 220 bytes. Resolution: Using keys greater than 100 bytes in a node of 1024 bytes. Change the EXTFH configuration file from: nodesize=1024 to nodesize=1024 force This overrides the internal fielhandler logic for allocating the nodes. This could result in the file having only 4 keys per node and giving a maximum of 65536 records. Also note that this has a negative effect on performance. Old KB# 2035#RMCOBOL#COBOL#AcuCobol#ServerExpress#netexpress
Problem: I plan to use the XML PARSE statement to read an XML instance document, but can I then use the READ statement to examine the data one record at a time? Resolution: There are two different XML parsers available in MF COBOL. One is a DOM-based parser and the other is an event-based parser. The DOM-based parser is invoked by a READ statement, whereas the event-based parser is invoked via the XML PARSE statement. DOM parsers read an entire XML instance document into memory all at once and hold it in the form of a tree. Once the entire document is in memory, a COBOL program can read through the data, and update and modify the data. In the end, the updated memory image can be written out to disk as an XML instance document. An event-based parser, on the other hand, reads an XML instance one line at a time, and presents it to a program as a series of events. For example an event might be 'START-OF-ELEMENT' announcing that a new XML elem
Problem: Defining a field with S9(31) COMP-3 returns the message : * 213-S***************************** ** ** Item is longer than USAGE allows or contains too many numeric positions Resolution: According to the ANSI standard, numbers are limited to 18 significant decimal digits. All significant digits must be within 18 digits of the decimal point. Old KB# 2061
Problem: We are compiling under Server Express, using cob -iv, and idy files are being created. These are filling up our temp directory, and we do not use them. How can we without creating the .idy files? Resolution: These files are created at compile time. To stop these from being created, you can set the NOCSI directive. N.B - this directive is only included in Server Express products from 4.0 onwards, for backwards compatibility, as described in the documentation: CSI This directive is reserved for internal use by this COBOL system. Because it might appear in the list of settings, it is included for completeness. It is not intended for your use, and its setting should not be changed. Syntax: >>-.---.-.----.--CSI----------------------->< -/- -NO- Parameters: None Properties: Default: CSI Phase: Syntax check $SET: Initial Dependencies: CSI sets ANIM at
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.