![]() | Introduction | New Features Issued Since Server Express 1.0 | ![]() |
This chapter describes changes that you need to be aware of if you developed applications using earlier versions of Micro Focus COBOL for UNIX. It describes features that you might be using in your existing Micro Focus COBOL system, and describes what changes you need to make to use the nearest equivalent in Server Express.
For a development tool, this chapter tells you how it has changed, or what to use instead. For a run-time feature that you might be using in an existing application, this chapter tells you what changes you need to make if you want to compile and run the application with Server Express.
Areas that are covered in their own chapters are not mentioned in this chapter.
Tools that were available in previous products but which are no longer widely used have been omitted from this product.
Tools that were available in previous products but which have been deleted from this product are:
The above components do not have entries in this chapter unless there is some specific remark to be made.
Certain components have been removed from the product, but can be made available on request. These components are no longer part of the main product and are supplied without the support given to the rest of the product. They are supplied to enable forward migration on a temporary basis while you develop a more permanent solution. You cannot get fixes or enhancements for these components.
Specific components in this category are:
You should contact your Micro Focus sales representative for information on obtaining these tools.
Certain components and directories have changed in this product installation. If your development or production system relies on a specific product shape, check the following table. This table shows the product directory structure and contents for both Server Express and previous versions of Object COBOL for UNIX. All directories are created within the base $COBDIR directory.
| New Location |
Old Location |
Description |
|---|---|---|
| bin | bin and rts32 | All executables |
| lib | coblib | Libraries, shared objects, linker-related files |
| include | Some of src/ | C header files |
| etc | $COBDIR | cobver and defaults files |
| dynload | *.int/gnt/lbr | Micro Focus format dynamic loader files |
New product directories include the following:
| Directory |
Description |
|---|---|
| odbc | odbc drivers |
| odbc_t | Threadsafe odbc drivers |
On some UNIX systems, odbc is the only required directory.
The following sections list features present in earlier versions of Micro Focus COBOL for UNIX, and what you need to do to migrate your application to Server Express if that feature has been changed or removed. If a feature is not mentioned, we believe no change is needed.
Analyzer is a utility used for program analysis.
Micro Focus Object COBOL Developer Suite V4.1 and earlier.
Removed.
Use the GNT Analyzer and Profiler utilities, which give extensive analytical information on program execution. Both utilities are described in the Utilities Guide.
Animator is the Micro Focus COBOL debugger.
Micro Focus Object COBOL Developer Suite V4.1 and earlier.
Enhanced, with new features added and some older features removed.
The way in which you can debug your COBOL applications has changed, enabling you to debug all COBOL executable types, not just .int files. Changes have also been made to the way in which you use cross-session debugging. Additional enhancements have been made to Animator. For further information refer to your Debugging Guide and User's Guide, as well as your Getting Started book.
Various Animator features have been removed from Server Express. The following list shows features that have been removed and alternative methods where available:
Application Server is the product to use when deploying your COBOL applications to users.
Object COBOL Developer Suite V4.1. (Previous versions of the product set referred to this feature as OSX.)
Enhanced. The way in which Application Server is distributed is more controlled. Application Server contains more features.
Theoretically, you should only need to recompile and relink your application, and bundle it with a copy of Application Server when you ship it to your users. However, as you can no longer link your application as a static executable, you might need to change how your application is built (see the section The Cob Utility).
We have implemented an Application Server license tracking mechanism in this product, called AppTrack. This is intended to help application developers manage and maintain the correct number of licenses for their user base. You therefore need to ensure you have sufficient licenses for the required number of end-users. For further information, see your Application Server Licensing Guide.
In addition, before you distribute any new applications with Application Server, you should read the chapter FaultFinder in the Debugging Guide. FaultFinder can help you diagnose problems in live applications.
The Btr2xfh module provides run-time support for mapping Btrieve I/O functions to Micro Focus File Handler system calls.
Object COBOL Developer Suite V4.1 and earlier.
Removed.
You should migrate your application in one of the following ways:
The class library is a library of predefined classes which you can use in object-oriented applications.
Object COBOL Developer Suite V4.1 and earlier.
Enhanced. Some classes have incompatible changes from previous products.
To migrate from previous products, see the list of incompatible changes in the OO Programming with Object COBOL.
The Cob utility is the COBOL system command line interface to the compiler and linker.
Object COBOL Developer Suite V4.1 and earlier.
Included and enhanced. Some functionality is no longer available.
You can no longer create statically linked executables. The -B option has, therefore, been removed. To create a linked executable you should:
-B [static | dynamic]
option. Instead of creating a statically linked executable, you could package your programs in a callable shared object. For information on the new callable shared object executable, see the chapters Packaging Applications and Callable Shared Objects in your User's Guide.
You do not need to explicitly specify that Cob should create code
suitable for debugging during the syntax check phase; in Server Express, this
happens by default. Cob always creates a program suitable for debugging unless
either the -i or the -C noanim options are specified. For example:
cob -ug a.cbl
produces a.idy with Server Express, but did not with previous COBOL for UNIX products. The resultant a.int and a.gnt files can both be used by Animator.
Flags to the cob command such as -i, -L, and -x
are known as options. Some options such as -L take an argument, for
example: -L/usr/lib/X11. The /usr/lib/X11 is known as the option argument. An option and
its option argument can, optionally, be separated by white space.
The cob command supports additional functionality for the
-I, -d and -X options. You can now specify one of the
following:
-Isymname[,symname]* -I:filename White space is permissible between the option and the start of the option argument, but not in the option argument (unless quoted or escaped). The following examples are valid:
-I "fred,boris,fred bloggs" -I:filename -I :filename -Iname1,name2,name" "3
The following are invalid:
-I: filename -Iname1, name2 -Iname1 ,name2 -Iname1,na me2
filename should contain one symbol name per line. Blank lines and lines
starting with # are ignored.
Cob flags which have been removed in this product are:
-F. Redundant option; the functionality provided by this option
in previous products is now enabled by default. -G. Programs are now compiled for animation by default. +u, +z and +Z. The code generator produces PIC code
by default.The method of creating shared objects and shared libraries has been enhanced for this product. Cob offers two new endpoints:
For new Cob functionality, you should refer to the chapters COBOL System Interface (Cob), and Descriptions of cob Flags in your User's Guide.
For details of the new callable shared object executable, see the chapters Packaging Applications and Callable Shared Objects in your User's Guide.
The COBOL system library routines are a library of routines which you can call from your applications.
Object COBOL Developer Suite V4.1 and earlier.
Included. Some routines that are in previous products are not included.
To migrate from previous products, see the list of incompatibilities in the chapter COBOL System Library Routines.
cobrun.c and cobrun.h are trigger programs for intermediate and generated code files.
Object COBOL Developer Suite V4.1 and earlier.
Not available.
You can link the programs in your application as a system executable. Alternatively, if you want your programs to remain as separate .int, .gnt, .lbr and/or callable shared object files, then you can create a trigger executable which calls the required file. For example, the program trigger.cbl could contain the statement:
chain "myapp".
You could then use Cob to create the system executable trigger:
cob -vxU trigger.cbl
If your directory contained the file myapp.so, when you ran trigger, control would pass to myapp.so.
COBSQL provides an interface between Micro Focus COBOL and certain database precompilers. For a program with embedded SQL statements, it enables you to debug the original source.
Object COBOL Developer Suite V4.1.
Included for backward compatibility and for applications for UNIX.
Use COBSQL if you have an application developed with an earlier version of COBOL for UNIX that already uses any of the supported precompilers.
For any other type of embedded SQL application development, we recommend that you use OpenESQL. OpenESQL enables you to quickly and easily develop applications which can access ODBC data sources using embedded SQL.
For details of how to use COBSQL under Server Express, see the chapter COBSQL in your Database Access book.
The Common Communications Interface (CCI) is a library of routines for communication between applications, using particular protocols.
Object COBOL Developer Suite V4.1 and earlier.
Included with few changes (see below), but the interface is not documented and a higher-level interface called Client/Server Binding is provided. CCI is used by Fileshare.
This product provides the TCP/IP and Named Pipes protocols on UNIX.
In this product you can configure the timeout period dynamically. In the earlier products, applications coded using the CCI-TIMEOUT verb default to a timeout period of 120 seconds for all subsequent CCI verbs. In this product, the CCI-TIMEOUT verb accepts the value passed to it.
If your application uses TCP/IP or Named Pipes on UNIX, no change is needed, but we recommend that you read your Configuring CCI book.
Server Express 2.0:
If your application contains calls
to CCITCP or CCINAMPU, you must make the following changes to enable it to work
in 64-bit and 32-bit installations of Server Express 2.0:
We recommend you use Client/Server Binding.
The Communications Module enabled you to send messages between programs.
Object COBOL Developer Suite V4.1 and earlier.
Not available.
Replace your Communications syntax by calls to Client/Server Binding. It is a set of routines for communication between applications (similar to CCI, but higher level).
We recommend you use Client/Server Binding.
The Compiler is a development tool for checking syntax and converting it to an executable format.
Object COBOL Developer Suite V4.1 and earlier.
Included unchanged.
The default settings of some Compiler directives might have changed; see the chapter Compiler Directives and Dialects for details.
The Conversion Series Utilities are tools that enable conversion between Micro Focus and RM/DG COBOL formats.
Object COBOL Developer Suite V4.1 and earlier.
Removed from product. If necessary for backward compatibility you can request these utilities from us.
Co-Writer is an application generator for creating applications to process and query COBOL data files and produce reports.
Object COBOL Developer Suite V4.1 and earlier.
Not available.
An application produced using Co-Writer is self-contained, and cannot be updated except through Co-Writer. Therefore it should not be migrated to this product.
Support for DB2.
Object COBOL Developer Suite V4.1 and earlier. Implementation involved relinking rts32 using the IBM-supplied file db2mkrts.args.
DB2 support is implemented in Server Express as a callable shared object. You no longer need to relink the run-time system. The file db2mkrts.args supplied as part of DB2 is not required.
The SQL or SQLDB Compiler directive, used in Object COBOL Developer Suite V4.1 and earlier products, has been replaced by the DB2 directive in Server Express. Wherever you previously used SQL or SQLDB, you should now use DB2. OCDS used two forms of the SQL directive, for example SQLDB(SAMPLE) and SQL (DB=SAMPLE), which are equivalent. The DB2 directive in Server Express uses the new form, for example DB2(DB=SAMPLE).
For details of how to compile, link and run DB2 applications, see the chapter DB2 in your Database Access book.
Support for the File Handler.
Object COBOL Developer Suite V4.1 and earlier, and known as the External File Handler, or the Callable File Handler, if you calling it from your own code.
Exists, with notable enhancements and updates.
You can still call the File Handler explicitly from your code.
You can use either of two methods to specify your own file handler:
CALLFH=myfh
We recommend using the CALLFH Compiler directive as the cob command line method is only provided for compatibility with Object COBOL Developer Suite and may be withdrawn at some future point. By using CALLFH now, you minimize the changes required to support your file handler in the future.
The cob command line to link an application with a user callable file handler has changed: you no longer need to specify the file handlers for all the different types of files, and the module ufhtab.o is no longer required.
If you have used the '&' function to detail the locations of both index and data files, you should note that this function has been replaced by the new configuration file options INDEXFILE and DATAFILE. For further information, see the chapter File Handler Configuration in your File Handling book.
If you call your own file handler, you should relink your application. For example, you would previously have used a command similar to:
cob -xvo rts32 $COBDIR/ufhtab.o
user-module -muixfile=user-file-handler
-m urlfile=rlfile -m usqfile=sqfile -m uixfilev=ixfilev
-m urlfilev=rlfilev -m usqfilev=sqfilev -e ''
whereas you would now use:
cob -mixfile=user-file-handler -x callmyprog.cbl myprog1.cbl user-module.o
Fhutils are file handling utilities.
Object COBOL Developer Suite V4.1 and earlier.
Not available. These utilities have been superseded by an enhanced Rebuild utility.
Listed below are the original fhutils features, together with their equivalent Rebuild options. In most cases there is a one-to-one mapping of these features.
| fhinfo | Replaced by rebuild -n. Rebuild gives organization,
recording mode, record length, and key description whereas fhinfo gave file
information and index information. |
| fhrebuild | Replaced by rebuild filename .... This is a direct equivalent. |
| fhvalidate | Replaced by rebuild -f. The new interface provides
greater functionality. For formats 3, 4 and C-ISAM, it checks data file
structure, free space list (FSL) structure, FSL entries match data file, index
file structure, index and data match and checks all the keys against the data
file. For other file formats, the integrity checking is on the same level as
fhvalidate. |
| fhconvert | Replaced by rebuild filename,filename.... It is a direct equivalent. |
| fhcreate | No equivalent in Rebuild. This function enabled you to create an empty indexed file. You must write a simple COBOL program to recreate this functionality. |
| fhreorg | Replaced by rebuild -x. This feature enables you to
reorganize an indexed file on any record key. This differs from fhreorg in that
fhreorg enabled you to reorganize ascending or descending. |
| fhedit | This is replaced by the rebuild filename... command line. With the
-k option you can create your own key structure as long as the key structure is
wholly contained within the minimum record length. |
As with the file handling utilities, Rebuild can be invoked using COBOL CALL syntax as well as from the command line. For further information on Rebuild, you should refer to the chapter Rebuild in your File Handling book.
Forms-2 is a character-mode screen painter for creating character-mode screen displays.
Object COBOL Developer Suite V4.1 and earlier.
Not available.
No change is needed, unless you need to recompile your program.
If you need to update the screen-handling code generated by Forms-2, you can edit it yourself. It is standard COBOL, included in the Data Division. However, a program that was created using Forms-2 contains COPY statements that use copyfiles supplied with Forms-2; these statements are in the form:
COPY "$COBDIR/forms2/copyfile ".
Therefore, when you recompile your program you have to ensure that these copyfiles are accessible to Server Express. We suggest that you copy the contents of the Forms-2 directory from your previous version of COBOL for UNIX to a new directory, and change the COPY statement to point to this directory.
As you can also see in the example above, Forms-2 created COPY statements that contained trailing spaces; to ensure that the correct file is located, you should delete any trailing spaces from the COPY statement.
A more effective method of developing user interfaces is to use Dialog System . For further information refer to your Dialog System Character Mode Guide.
Library is a utility that enables you to package files in a .lbr file.
Object COBOL Developer Suite V4.1 and earlier.
Available in this product for backward compatibility.
In this product, we recommend that you package your application using native UNIX system executable types. For more information refer to your Getting Started and User's Guide.
The mkrts script.
Object COBOL Developer Suite V4.1 and earlier.
Not available.
The mkrts script is no longer required due to product shape changes. See the chapter COBOL System Library Routines for further information.
Object COBOL syntax enables you to write according to object-oriented methodology.
Object COBOL Developer Suite V4.1.
Unchanged.
Object-oriented programs produced using the earlier products need to be recompiled before you can run them on this product.
Panels Version 2 is a library of routines for creating and manipulating on-screen graphical objects.
Object COBOL Developer Suite V4.1 and earlier.
Not available.
This feature is no longer supported.
We recommend using Character Mode Dialog System to create your user interfaces. For further information refer to your Dialog System Character Mode Guide. Alternatively, to create graphical user interfaces, we recommend you use the Net Express product on the PC. Contact your Micro Focus sales representative for further details.
Screens is a character-mode screen painter for creating character-mode screen displays.
Object COBOL Developer Suite V4.1 and earlier.
Not available.
No change is needed. If you need to update the screen-handling code generated by Screens, you can edit it yourself. It is standard COBOL, included in the Screen Section.
A more effective method of developing user interfaces is to use Dialog System. For further information, see your Dialog System Character Mode Guide.
Structure Animator is a utility for analyzing program structure.
Object COBOL Developer Suite V4.1 and earlier.
Removed.
Analyze your programs use GNT Analyzer and Profiler instead. Both utilities are described in the Utilities Guide.
A library of utilities.
Object COBOL Developer Suite V4.1 and earlier.
Removed.
The files that were in utils.lbr are still available within Server Express, but they are no longer packaged within utils.lbr. You no longer have to ship utils.lbr with your application; the files are now available in Application Server.
Copyright © 2002 Micro Focus International Limited. All rights reserved.
This document and the proprietary marks and names
used herein are protected by international law.
![]() | Introduction | New Features Issued Since Server Express 1.0 | ![]() |