Skip to main content

Software > Software Development >

Enterprise COBOL for z/OS

An edition of Enterprise COBOL

Features and benefits

 

  • Version 4.1 offers enhanced DB2 support, including DB2 V9 exploitation and improvements in coprocessor integration and usability:
    • Support for new SQL data types and new SQL syntax provided by DB2 V9
    • options are shown in the compiler listing (DB2 V9 only)
    • SQLCA and SQLDA control blocks are expanded in the compiler listing(all DB2 releases)
    • A new compiler option SQLCCSID is provided to coordinate the coded character set ID (CCSID) between COBOL and DB2
  • Higher Data-item size limits
    Several limits on COBOL data-item size have been significantly raised to facilitate programming with large amounts of data. For example:
    • The maximum data-item size has been raised from 16 MB to 128 MB.
    • The maximum PICTURE symbol replication has been raised to 134,217,727.
    • The maximum OCCURS integer has been raised to 134,217,727.

    This support facilitates programming with large amounts of data, for example:

    • DB2/COBOL applications that use DB2 BLOB and CLOB data types
    • COBOL XML applications that parse or generate large XML documents
  • Object-oriented COBOL syntax for Java interoperability
    Enterprise COBOL supports Java™-based object-oriented syntax to facilitate the interoperation of COBOL and Java programs. The syntax is based upon the facilities of the Java Native Interface, the primary means that Java provides for interoperating with non-Java programs.
    Object-oriented COBOL syntax is designed to enable you to write COBOL programs that:
    • Create object instances of Java classes.
    • Invoke methods on Java objects.
    • Define Java classes, with methods implemented in COBOL. You can create object instances of these classes, and invoke methods of these classes, from either Java or COBOL.
    • A new special register and copybook let you easily call services that the Java Native Interface provides. These services include Unicode- and EBCDIC-based services for handling strings and for managing local and global object references.
  • WebSphere interoperability
    You can use the Java interoperability capabilities of COBOL to access enterprise beans that run on a J2EE-compliant EJB server, such as WebSphere Application Server. To do this, the client environment must support a Java-based Object Request Broker (ORB). The client COBOL application can use COBOL INVOKE statements to access the following programming interfaces:
    • Java Naming and Directory Interface (JNDI) to locate EJB services and components
    • Java ORB to invoke methods on enterprise beans
  • XML support
    Enterprise COBOL introduces XML capabilities to COBOL. The support includes a high-speed parser that enables your COBOL programs to:
    • Process XML documents in the principal run-time environments, such as CICS, IMS, and MQSeries.
    • Validate XML documents to ensure that they conform to established XML standards.
    • Populate COBOL data structures with the content of XML documents.

    For example, in a business-to-business environment, XML support enhances your existing high-performance IMS transactions written in COBOL, by accepting XML data as input. XML data can be placed in, and retrieved from, the IMS messages queue for all message regions, including MPP, IFP, and BMP.

    New in Version 4.1:
    The XML GENERATE statement has been extended with new syntax that gives the programmer more flexibility and control over the form of the XML document that is generated.

    • WITH ATTRIBUTES phrase, eligible items in the XML document are generated as XML attributes instead of elements
    • WITH ENCODING phrase, which allows the user to specify the encoding of the generated document
    • NAMESPACE and NAMESPACE-PREFIX phrases, which allow generation of XML documents that use XML namespaces
    • WITH XML-DECLARATION, which includes the version and the encoding information in the document

    The XML GENERATE statement now supports generation of XML documents encoded in UTF-8 Unicode.

    The XML PARSE support has been enhanced.

    • The z/OS XML System Services parser is now supported as an alternative to the existing XML parser that is part of the COBOL library
    • The z/OS XML System Services parser provides the following benefits:
      • the latest IBM parsing technology is available to COBOL users
      • offload a portion of the COBOL XML parsing performed within XMLSS to zAAP specialty processors.
      • improved support for parsing XML documents that use XML namespaces
      • direct support is provided for parsing XML documents that are encoded in UTF-8 Unicode
      • support for parsing very large XML documents, a buffer of XML at a time
    • Four new special registers are introduced for namespace processing during execution of XML PARSE statements
    • The XML PARSE statement has been extended with new syntax WITH EN-CODING and RETURNING NATIONAL that gives the programmer control over the assumed encoding of input XML documents, to facilitate parsing in Unicode
    • A new compiler option, XMLPARSE, has been created to control whether the z/OS System Services parser or the existing COBOL parser is used for XML PARSE statements. With the XMLPARSE(COMPAT) option XML parsing is fully compatible with Enterprise COBOL Version 3. With1 the XMLPARSE(XMLSS) options, the z/OS System Services parser is used and new XML parsing capabilities are enabled.

    Performance of COBOL application programs has been enhanced by exploitation of new z/Architecture instructions. The performance of COBOL Unicode support (USAGE NATIONAL data) has been significantly improved.

  • Support for Unicode
    Unicode encodes all of the characters in written human languages. A new national data type, national literals, intrinsic functions, and compiler options provide basic run-time support for Unicode. There are multiple encoding schemes to represent Unicode, including UTF-8, UTF-16, and UTF-32. Enterprise COBOL supports Unicode using UTF-16. COBOL source programs continue to be encoded in an EBCDIC code page.
    In V3.4, support for national (Unicode UTF-16) data has been enhanced. Several additional kinds of data items can now be described implicitly or explicitly as USAGE NATIONAL:
    • External decimal (national decimal) items
    • External floating-point (national floating-point) items
    • Numeric-edited items
    • National-edited items
    • Group (national group) items, supported by the GROUP-USAGE NATIONAL clause

    You can convert UTF-8 data, or data in many other code pages, to UTF-16 by using the new NATIONAL-OF intrinsic function, and then you can process the data in UTF-16 in your COBOL program. When you have finished processing the data, you can convert it back to UTF-8 by using the new DISPLAY-OF intrinsic function. The new CODEPAGE compiler option lets you specify the code page used for alphanumeric and DBCS data (both data items and literals) in your program.

    Through the NSYMBOL compiler option, you can also control whether national or DBCS processing is used for the N symbol in literals and PICTURE clauses.

  • Support for Chinese character standard
    Enterprise COBOL supports the new Chinese character standard GB18030. You can convert GB18030 characters represented in CCSID 01388 to Unicode, processed them as Unicode, and then convert them back to the CCSID 01388 representation. GB18030 characters are encoded through the existing Chinese EBCDIC code page, CCSID 01388. This character data can now be converted to Unicode, processed in Unicode, and converted back to the EBCDIC code page.
  • Toleration support for threads and asynchronous signals
    A toleration level of support for POSIX threads and signals is now available in Enterprise COBOL. This support enables an application to contain COBOL programs that run on multiple threads within a process in the following environments:
    • OS/390 Version 2 Release 10
    • z/OS Version 1 Release 1 or later
    • Batch, TSO, IMS, and UNIX

    You can call POSIX APIs directly from COBOL to initialize or serialize threads. You can mix threaded COBOL programs with C/C++ and Language Environment®-enabled assembler programs in a multithreaded Language Environment enclave.

    The level of support for threads and asynchronous signal toleration in Enterprise COBOL is analogous to that provided by IBM VisualAge COBOL for Windows NT and COBOL Set for AIX.

  • Integrated CICS translator
    Compilation of COBOL programs that contain CICS statements no longer requires a separate translation step: an integrated CICS translator provides an alternative. When you use the new CICS compiler option, the COBOL compiler in conjunction with the integrated CICS translator handles both native COBOL and embedded CICS statements in the source program.
    When CICS statements are encountered in a COBOL program, the compiler interfaces with the integrated CICS translator, which takes appropriate actions and then returns to the compiler, indicating which native language statements to generate.
    The integrated CICS translator approach provides these advantages:
    • Enhancements in the interactive debugging of COBOL applications using Debug Tool. Applications can be debugged at the original source level instead of at the level of the expanded source produced by the CICS translator.
    • EXEC CICS and EXEC DLI statements can be included in copybooks without the need to translate them separately before compilation.
    • Nested programs that contain EXEC CICS statements can be in separate files and can be included through a COPY statement.
    • Binary fields in CICS control blocks are generated as USAGE COMP-5 instead of BINARY. Thus, there is no longer a dependency on the setting of the TRUNC compiler option.

    The separate CICS translator approach is still supported in Enterprise COBOL.

  • Additional V4.1 functional enhancements include:
    • Compiler options can be specified in a data set
    • When the XREF compiler option is used, the compiler listing includes cross references of COPY statements, libraries, and data sets
    • Debug Tool V8.1 is supported
    • A new suboption of the TEST compiler option enables support for the Debug Tool GOTO and JUMPTO commands when debugging optimized production programs
    • DFSMS large-format data sets are supported
    • Internal compiler limits have been increased to enable compilation of very large and complex COBOL source programs
  • Improved application development
    Enterprise COBOL for z/OS provides a set of intrinsic functions including string handling, financial capabilities, statistical functions, and mathematical formulas. You can also use the COBOL CALL statement to take advantage of Language Environment services for everything from storage management to condition handling. The condition-handling support enables you to write programs in which error handling is done in a separate routine that is loaded only when needed. You do not have to write the error-handling routines in assembler; with Language Environment you can write them in COBOL.
    Enterprise COBOL for z/OS offers support for recursive calls in COBOL, structured programming, improved interoperability with other languages, and dynamic link library support. The Enterprise COBOL for z/OS run-time library, Language Environment, also supports PL/I, C/C++, and Fortran programs.
  • Ease into migration
    Enterprise COBOL for z/OS gives you a migration path from OS/VS COBOL, VS COBOL II, IBM COBOL for MVS & VM, and IBM COBOL for OS/390 & VM. Most of your current programs will continue to compile and to run without modification, while you selectively update existing applications to take advantage of the new functions.
  • COBOL across platforms
    Enterprise COBOL for z/OS is part of a large family of compatible compilers, application development tools, and maintenance tools. In addition to Enterprise COBOL, IBM offers IBM COBOL compilers for Windows®, AIX®, VSE®, and System i®. Host-based development tools include ISPF, File Manager, Fault Analyzer, and IBM Debug Tool as well as the workstation based development tool, Rational Developer for System z, which integates with many of these host based offerings. You can also take advantage of IBM's extensive suite of COBOL maintenance tools to improve your existing applications. These tools assist you with source code conversion from former ANSI standards to ANSI 85 COBOL syntax; code analysis, and reporting; CICS source conversion; Report Writer code support; and regression testing of interactive applications.
We're here to help
Easy ways to get the answers you need.
Request a quote
E-mail IBM

or call us at
877-426-3774
Priority code:
104CBW61