Features Added in Enterprise Developer 2.2 Update 1

This release provides enhancements in the following areas:

Visual Studio IDE

This release provides the following enhancements to COBOL support in the IDE:

Expanded Copybook View
The Expanded Copybook View functionality in the editor was added in the 2.2 release and this has been enhanced in 2.2 Update 1 so it is now possible to debug into the expanded copybooks. The functionality includes:
  • Stepping inline in the expanded copybook view when debugging - when stepping into or hitting a breakpoint in the copybook, the copybook automatically expands. You can disable this feature from the IDE preferences.
  • Showing Pinned Data tips inside the expanded copybook.
  • Support for QuickWatch and Add Watch inside the expanded copybook.
  • Executing some of the debugger commands from the context menu from the expanded copybook view - for example, Show Next Statement, Run To Cursor and Set Next Statement.

Some limitations apply.

Call Hierarchy
Enterprise Developer now supports the Visual Studio Call Hierarchy window for analyzing COBOL PERFORM statements.
Find All References
The Find All References functionality now works for managed OO COBOL code.
Navigation
You can now use Alt+Shift+Up Arrow (or Down Arrow) to navigate the variables in the editor.

You can use the drop-down types and members to navigate to the different sections (Linkage section, File section etc.) in your source files.

Project Details Window
The Project Details Window now includes columns showing the COBOL dialect of the files and the SQL properties set on them.
Run-Time Configuration
  • You can now use the application configuration file (application.config) in native COBOL projects to specify some additional settings such as the search order for called programs, command line handling, or file handling. You can do this from the new Run-Time Configuration tab.
  • When an executable is built using the IDE, the application configuration file is automatically copied to the output folder and is renamed as <executable-base-name>.exe.mfgcf.
Samples
This release includes the following new samples:
  • Airport Demo (managed) - shows how to create a COBOL WCF REST service and then use a client application to consume it.
  • Airport Demo (native) - a basic lookup program that reads the information about airports from a .dat file and outputs the distance between two airports.

The Sandcastle sample has been updated and now uses Sandcastle Help File Builder v1.9.8.0.

Solution Explorer
Support is now available in Solution Explorer for the following features:
  • Errors and warnings filters - click the arrow next to the GUID-0C8E8146-1024-496B-98EA-0D28711FF656-low.png(Pending Changes Filter) icon in the Solution Explorer toolbar, and either click GUID-3D55F3C3-3CC5-44EA-B5F1-34C0F4C3FAF6-low.pngErrors Filter or GUID-6DC138DB-23FD-4F5B-84CF-E207F8432DBD-low.pngErrors and Warnings Filter to show the files that result in errors or also cause warnings.
  • Searching in Solution Explorer - You can use the search field in Solution Explorer to search for files in your solution. Searching also finds copybooks in the copybook dependency view even if they are not part of any of the projects in the solution.

Micro Focus Heartbleed Update

This product includes OpenSSL version 1.0.2j.

Btrieve Support

Support for the Btrieve file handling system from Pervasive Software Inc. has been added into Enterprise Developer.

Support is restricted to native COBOL, in a Windows environment.

COBOL Source Information

The Quick Browse option is now available as a context menu command in the editor.

Compare and Synchronization Monitor

With the release of Enterprise Developer 2.2 Update 1, the Compare and Synchronization Monitor has been updated to version 2.

Version 2 is greatly improved in terms of performance, especially during initial checkout of partitioned data sets or when synchronizing a large number of members. Also, the user interface has been improved, and some of the functions available in the old version have now changed or become obsolete.

Compiler Directives

The following Compiler directives have been added in this release:
ILPARAMS
Determines the way in which you call a method that contains an array as its last receiving parameter.
INIT-BY-TYPE
Initializes Working-Storage Section data items to a default value, according to their type.
  • Alphabetic, alphanumeric, alphanumeric edited, and numeric edited items are initialized to spaces.
  • Numeric items are initialized to zero.
  • Pointer items are initialized to null.
  • Index items are initialized to the value 1.

Database Access

The following new features have been added as part of database access support:

HCO for DB2 LUW
  • Support added for DB2 LUW version 10.5.
  • Enhanced RETURN-CODE processing.
  • The HCO DDL processor now accepts column names with a length greater than 18 characters.
  • The HCO Import Data tool now processes CLOB data less than 32K in size.
  • The HCO Import Data tool can now convert DSNTIAUL import files to delimited format, enabling the actual import to be done by DB2 LUW IMPORT and LOAD utilities. This is done using the new SAVEDEL and CHARDEL parameters.
HCO for SQL Server (HCOSS)
  • Support for the mainframe SET CURRENT SQLID statement.
  • Support for the mainframe LEFT and RIGHT scalar functions.
  • Data Migration tools now support the mainframe ALIAS and SYNONYM objects.
OpenESQL
  • Enhanced internationalization support for UNICODE, DBCS and MBCS.
  • Enhanced GET DIAGNOSTICS statement support.
  • Enhanced LOB support for CLOB, BLOB and DBCLOB data types.
  • ADO.NET connection editor now provides context help.
  • Enhanced IDE support for OPTION directives.
  • Now provides support for the creation of save points and rolling back to save points.
XA Switch Modules
Restriction: This feature applies only when the Enterprise Server feature is enabled.
  • New two-phase commit module for SQL Server based on Microsoft's XA switch. This provides support for xa_recover.
  • Support for DB2 LUW version 10.5.
  • Support for Oracle version 12.1.

Enterprise Server Integration in the IDE

You can now use the context menu for the servers in Server Explorer to enable the display of the Enterprise Server log information in the Output window.

Enterprise Server MQ-IMS Bridge

Attention: This feature is in Early Adopter Product (EAP) release status. We intend to provide the finalized feature in a future release. Please contact Micro Focus SupportLine if you require further clarification.

This release provides support that enables WebSphere MQ applications to communicate with IMS applications in an Enterprise Server region.

Environment Variables

The following environment variable has been added in this release:
strictvsam
strictvsam enables strict mainframe emulation when processing VSAM files.
When set to ON and running under mainframe emulation, file status 37 is returned for an existing VSAM file when opened for OUTPUT if the file has data or previously had data written to it, or if the file is of a different format to the file on disk. When set to OFF, file status 0 is returned and a new file is created when an existing VSAM file is opened for OUTPUT. This variable is set to OFF by default.

Fileshare Recovery

Recovery of Fileshare data files has been enhanced.

Rollback recovery is a faster process that aims to fix the files from their failed state.

This process cannot be used in all scenarios, but a new user exit has also been introduced that allows you to programmatically control which files you wish to recover with this process.

Hot backups are also a new introduction, which allow you to perform a backup without having to shut down Fileshare.

Line Numbering for COBOL Programs

This release provides options for auto-inserting or removing line numbers in source files open the editor. Features include:

  • COBOL numbering - line numbers are inserted in the sequence area of the code (columns 1 - 6), starting by default at 000100 at the first line, incrementing by 100 by default.

    Micro Focus recommends that you use COBOL numbering only if your files are in fixed or variable source format.

  • Standard numbering - line numbers are inserted immediately to the right of area B, in columns 73 - 80, starting by default at 00000100 at the first line, incrementing by 100 by default.

    Micro Focus recommends that you use Standard numbering only if your files are in fixed format.

  • The Renumber and Unnumber commands available from the context menu in the editor.

Local Catalog

From within Server Explorer in the IDE, you can add one or more local catalogs, and then use them in conjunction with Drag and Drop to drag down data set items from your mainframe, edit them and then move them back to the mainframe or to your testing environment.

Mainframe Emulation

Previously, MGMTCLAS was supported by simply saving it on the catalog record when a dataset was allocated in JCL using the MGMTCLAS parameter on the DD statement. Starting with this release, you can use batch jobs to define MGMT classes and to specify the EXPIRE AFTER time (in days).

Mainframe Subsystem

Casspool performance enhancement
As part of an enhancement to improve performance when browsing the spool queue of an Enterprise Server, you must update the casspool file for any Enterprise Server created before Enterprise Developer 2.2 Update 1 before you can submit jobs to it.
To update the casspool for each Enterprise Server, from a command prompt, run fixcasspool.bat , located in %COBDIR%\bin and %COBDIR%\bin64, using the following syntax:
fixcasspool.bat casspool.dat backup.dat
where:
casspool.dat
is the spool file, located in the same directory as the Enterprise Server's system catalog, that will be updated.
backup.dat
is a file that will be created with a backup of the old casspool.dat file. If backup.dat already exists, the update is not run.

If you do not update casspool and attempt to start Enterprise Server, the following messages are displayed in the console:

JES000011E Batch Spool File Error; Status [39]

JES000130E Note JES000011 Error - New casspool indexes may need generating. See error description in product docs

Managed COBOL Syntax

This release includes the following enhancements to the managed COBOL syntax:

Specifying parameters in the method signature
You can now specify passing parameters and returning items in the method signature, instead of using a Procedure Division header. This applies to methods, indexers, iterators, constructors and delegates.
CONSTANT keyword
Use the CONSTANT keyword on a field to protect it from being altered.
Operations on string fields
You can now use the STRING, UNSTRING and INSPECT statements on fields of type string.

PL/I

PL/I support within the IDE now includes the following enhancements:

  • Support for new built-in functions

    The PL/I Compiler and Runtime now support the following new built-in functions:

    • DAYS
    • DAYSTODATE
    • SECSTODATE
    • SECS
    • WEEKDAY
    • DAYSTOSECS
    • ONSUBCODE
    • REPATTERN
    • IAND
    • IOR
    • INOT
    • OMITTED
    • XMLCHAR

    This provides an improved functionality and a greater language compatibility when you migrate applications from a z/OS environment.

  • Support for %OPTION in the PL/I macro preprocessor

    You no longer need to modify application code that uses %OPTION in order for it to compile successfully.

  • Support for QUOTE() and COMMENT() built in functions.

    This enables the use of PL/I macros that generate code using these built-in functions.

  • Support for IBM Style %INCLUDE(s) that utilize PDS name as part of include file names.
    The PL/I macro preprocessor now parses the %INCLUDE syntax of the form shown below and utilizes the –isuffix and –ipath Compiler directives to locate the “member”.
    %INCLUDE MYPDS(MYMEMBER);
    This provides an improved language compatibility with the application code without the need to modify the original underlying source code.
  • Support for PL/I AREA data items up to 2Gb.

    Open PL/I now supports the declaration and usage of variables of type AREA up to 2Gb in size. This provides you with improved functionality and greater language compatibility when migrating applications from a z/OS environment as there is no need to modify the code in order to deal with a maximum area size of 32Kb.

  • Enhanced compatibility with the DISPLAY() REPLY() syntax.

    The PL/I Compiler and runtime now provide a DISPLAY() REPLY() syntax that is no longer dependent upon the use of the SYSIN and SYSOUT DD’s and that no longer causes behavioral differences if stream IO to SYSIN/SYSOUT is intermingled with programs using DISPLAY() REPLY().

  • Support for big-endian style bit strings on little-endian platforms.

    Using a new Compiler directive –bitsltr to compile programs that have logic that is dependent on big-endian bitstring ordering enables you to utilize the code unchanged on Open PL/I little-endian platforms (such as Windows, Red Hat Linux, SUSE Linux). This enables you to migrate applications that make an assumption about bit ordering on the underlying operating system or hardware and to run them unchanged.

  • Support for the –initcall Compiler directive.

    Compiling a PL/I program with the –initcall directive causes the specified program to be invoked prior to any user logic. This enables you to customize your environments and do things such as tracking which routines have been invoked, detect memory corruption prior to routine startup, establish database connectivity.

  • Support for the “F” option in PLIDUMP.

    A PLIDUMP which was generated using the “F” option will now attempt to list all known information about files which have been accessed during the execution of the program and includes information about the last IO operation, key values, and a dump of buffers, if available. This enables you to identify more easily the cause of file-related failures and what file operations were in progress at the time of failure.

  • Early Adopter support for PL/I data structures Data File Tools.

    In the IDE, you can now generate a PL/I structure map (.str) which can be utilized by the Data File Tools utility to generate a formatted layout for a PL/I Data File. The PL/I data structure must be compiled in advance with the -adt Compiler directive. This enables you to see what is in each field within a PL/I data file record, and to modify them in a logical way without having to know the offset, length and raw format of the data item.

  • Support for PL/I debugger notification for ON Unit invocation.

    You can now request that the debugger stops when a PL/I ON Unit is about to be triggered. This enables you to locate the ON Unit, establish appropriate breakpoints within the ON Unit and determine the cause of the ON Unit being triggered.

  • Support for PL/I debugger notifications for the load of shared libraries and .dll files.

    You can now request that the debugger issues a notification when a shared object or a .dll file has been dynamically loaded. This enables you to stop a program when a dynamic program has been loaded and to establish the appropriate breakpoints, watch lists, etc.

  • Alternative Index Performance Improvements for the CASSPOOL command.
  • Support of the SHAREOPTIONS property in a VSAM cluster.
  • Support for setting directives automatically for PL/I files.

    In Visual Studio, click Tools > Options > Micro Focus > Directives > PL/I.

  • A new page in the project and file properties enables you to set SQL directives on PL/I source files.

Preprocessors

IDE support is now available for selecting and using third-party preprocessors installed on your machine and integrated with Enterprise Developer for building native COBOL Mainframe Subsystem applications.

A guide for third-party vendors and administrators showing how to integrate additional preprocessors with Enterprise Developer is now available in the product help in the General Reference > Integrated Preprocessor Interface section.

Rumba Integration with Visual Studio

Visual Studio now offers context menu commands for launching the Rumba mainframe display (Desktop or embedded) from Solution Explorer or from Server Explorer. The embedded Rumba display now provides keyboard mapping and color settings.

You can use the display of choice both in debugging and when running applications.

Run-time Launch Configuration Files

Use a run-time launch configuration file to ensure an application can be launched when it is deployed in a separate location to the run-time system (in the case of dynamically bound applications), or when the licensing daemon is not already running.