Application configuration
You can now set environment variables for when you run native projects from within the IDE from the project's properties - click
Environment on the
Application tab in the project properties.
COBOL editor enhancements
Navigating in the editor is now more similar to the editor navigation in
Net Express. You can configure things like word wrap and indentation, the movement of the cursor using the
Home and
End keys, the style of the ruler and the colors of the text and the margins:
- Smart editing mode
- The default mode in the editor is now Smart edit mode. It controls the word wrapping and the indentation in the different COBOL areas. You can configure the Smart edit mode from the
Tools > Options > Text Editor > Micro Focus COBOL > Margins page. To toggle the mode, click
in the COBOL toolbar.
- Home and End keys navigation
- You can configure how the
Home and
End keys move the cursor in the editor on the
Tools > Options > Text Editor > Micro Focus COBOL > Margins page. To toggle the mode, click
in the COBOL toolbar.
- Configuring the ruler
- You can specify whether to display the horizontal ruler in the editor and also choose its style, a default style or a mainframe style for which the ruler indicates COBOL area A/B, from
Tools > Options > Text Editor > Micro Focus COBOL > Margins and check
Show ruler.
COBOL Source Information (CSI)
COBOL Source Information (CSI) provides a quick and easy way of providing you with information about your program when you are working on it. You enter a query in
the CSI query control and CSI returns the results of the query in the
Micro Focus Code Analysis window.
The following Compiler directives are new:
- ACU-UNDERSCORE
- This directive treats underscores in COBOL words as hyphens.
- ILSHOWPERFORMOVERLAP
- This managed COBOL-only directive generates a warning when an overlapping PERFORM range is detected in the program.
- ILEXPONENTIATION
- This managed COBOL-only directive enables you to optimize exponential arithmetic operations by specifying the calculation method used.
- EXITPROGRAM
- This directive determines how the EXIT PROGRAM statement is executed.
The following Compiler directives have changed:
- CHANGE-MESSAGE
- The scope of this directive has been widened to allow you to change the severity of different types of error messages, not just syntax checking messages.
- DIALECT"RM"
- DIALECT"RM" now sets PERFORM-TYPE"RM". If you recompile an application that uses DIALECT"RM", the behavior may change for nested PERFORM statements. If that is the case, explicitly set PERFORM-TYPE"MF" after DIALECT"RM" to continue with the previous behavior.
- HIDE-MESSAGE
- The scope of this directive has been widened to allow you to hide different types of error messages, not just syntax checking messages.
- PRESERVECASE
- This directive now defaults to PRESERVECASE when compiling native COBOL; managed COBOL compilation already defaults to PRESERVECASE. This results in externally visible identifiers preserving their case instead of being converted to uppercase.
Consolidated Tracing Facility
The following changes have been made to the Consolidated Tracing Facility (CTF):
Emitter properties and variables
The following support has been added to existing emitters.
The following property has been added to the BINFILE emitter:
Property
|
Description
|
RunUnitID
|
Controls whether the RunUnit information is included in the trace.
|
Four new pseudo-variables for the FILE property have been added to the BINFILE and TEXTFILE emitters:
pseudo-variable
|
Description
|
$(PLATFORM)
|
A platform specific constant, useful when two run-time systems are in the same process, and you require separate trace files
|
$(RUNUNIT)
|
A unique number that represents the managed RunUnit ID
|
$(RUNUNIT_SESSIONNAME)
|
The session name passed to the managed RunUnit
|
$(RUNUNIT_GUID)
|
The globally unique identifier associated with the managed RunUnit
|
Converting
Net Express projects
Conversion of
Net Express projects has been enhanced. You now use the Visual Studio Conversion Wizard to import and convert
Net Express projects (.app files) to Visual Studio solutions.
Debugging
- Displaying debug information
- You can set the DEBUG constant for managed COBOL projects on the
COBOL tab in the project properties. This enables you to use the System.Diagnostics.Debug class in your applications to ensure they write diagnostic information in the Output window for projects compiled for Debug but not for projects compiled for Release.
- Display format in the Watch window
- You can now change the display format between hexadecimal (hex) and decimal for individual items in COBOL projects in the Watch window. To do this, click a row, press
F2, and type:
Variable,h or
Variable,x to always display the values in hexadecimal format;
Variable,d to always display the values of variables in decimal format, and of strings - as text.
Documentation
The following guides are now available, among other updates to the product help for this release:
- Object-Oriented Programming
- A guide that provides a basic introduction to Object-Oriented Programming (OOP) for COBOL developers,
An Introduction to Object-Oriented Programming for COBOL Developers, is now available from the
Product Documentation section on the
Micro Focus
SupportLine Web site -
click here to download it.
- Upgrading to
Enterprise Developer
- A new section in the product help,
Upgrading from
Net Express to
Enterprise Developer
for Visual Studio 2017, provides guidance on how to move existing applications created with
Net Express into
Enterprise Developer and the Visual Studio IDE .
Enhanced Enterprise Server integration with the IDE
This release provides the following enhancements:
- Creating a server from a template directly from the Server Explorer window.
- Automatically starting the associated server and enabling dynamic debugging for it when you start debugging.
- Showing the spool and the catalog of the associated server from the context menu for the project in
Solution Explorer.
- Debugging applications using a temporary server when the project has no association with any of the existing enterprise servers.
File Handling
New features include:
- The DATEDIFF function as part of the DFSORT emulation. There are some limitations of its use in
Enterprise Developer.
- Converting and editing Vision and RM/COBOL indexed data files using the Data File tools.
- Access to data files (either sequential or indexed) through AcuServer.
- Access to Vision and RM/COBOL indexed data files through Enterprise Server.
Grouping files in virtual folders in Solution Explorer
Enterprise Developer now provides a Virtual View of a project within Solution Explorer. In the Virtual View you use virtual folders to improve navigation by logically grouping the files that make up the project. You can also create your own virtual folders to group files of your choice (a file can only belong to one virtual folder). The files can be of different file types.
HCO for SQL Server (HCOSS)
Several updates have been made to the HCOSS tool set:
- DB2 database batch migration
- This set of batch utilities provides an alternative to the standard HCOSS database migration tools.
Note: This feature is in early adopter release status. We intend to provide the finalized feature in a future release. Please contact
Micro Focus
SupportLine if you require further clarification.
- Schema Extract tool
- This tool now provides:
- Updated security that enables users to study extracted schemas without accessing the catalog
- Extracted schema modification
- Export and import capabilities
- Application Assessment tool
- This tool now enables you to perform data analysis on schema extract files and identify structures that are not supported by SQL Server, or that could require manual modification before HCOSS can accurately transfer the data to SQL Server.
- OPTION SQL compiler directive option
- New parameters have been added to handle additional host variable types.
IMS
- Database recovery
- IMS database recovery using the new IMS Database Forward Recovery and Backward Recovery features is available. These consist of a set of backup and restore utilities that enable you to restore your IMS database complete with the most recent updates.
- Locking improvements
- Internal Resource Lock Manager (IRLM) support has been added to provide more granular locking capabilities, allowing for increased sharing and decreased contention and deadlock risk.
Mainframe Access Drag and Drop
This release provides the integrated Drag and Drop utility - based on the traditional standalone version of Drag and Drop, you can now transfer files to and from the mainframe from within the IDE using the Micro Focus Mainframe Explorer. This version also enables you to view and edit mainframe files.
Mainframe snippets
A number of code snippets for inserting EXEC CICS and EXEC DLI statements in the code are now available for Mainframe Subsystem applications.
You can insert code snippets from the context menu in the editor or by typing a shortcut and pressing
TAB.
Mainframe Subsystem Support
- JCL System Catalog
- You can now use in-stream data for DDs within JCL procedures. This change is to maintain compatibility with mainframe JCL processing which recently introduced the same change.
- JCL Public Catalog API
- You can now access and update JES Catalog information.
- IMS database utilities
- The database utilities commands Zeroload, Load, Unload and Add are now available from the context help menu for
.dbd files in
Solution Explorer.
- CICS External Call Interface (ECI)
- Micro Focus proprietary support for the CICS External Call Interface (ECI) has been enhanced. ECI uses the
Micro Focus BINP protocol, thus eliminating the need for third-party middleware. Additional features include support for extended LUW (logical unit of work) and new support for Java clients. For more information, see
IBM External Call Interface (ECI) and External Presentation Interface (EPI).
Managed COBOL
- Procedural Multi-Output Project type
- A new .NET managed project template, Procedural Multi-Output Project, is now available. The project compiles procedural programs to individual managed assemblies or executables as opposed to the standard managed project templates that produce a single assembly. This project type is useful when you are moving existing procedural applications that consist of multiple programs to
Enterprise Developer and to managed code. When calling a subprogram, the COBOL run-time system can locate the assembly using the name of the called program which will match the assembly file name. In this case, the assembly does not have to be preloaded. See
Types of COBOL Project Templates in the product help for more details and for a list of the limitations of this project type.
- Named and optional parameters
- Two new types of parameter have been introduced for use during method invocation:
- Named parameters
- As part of the invocation expression, you can define a value for a parameter named in the method definition. The named argument must be specified after any positional arguments, and must not correspond to any of those preceding arguments.
- Optional parameters
- Optional parameters are parameters defined with a default value in the procedure division header of the invoked method. If none of the arguments passed in during invocation correspond to this parameter, the default value is used in the method; if an argument does correspond, the value that was passed in is used.
- Delegates and events
-
A number of new features have been added that relate to delegates and events:
Note: Some of these features were also available in previous versions of
Enterprise Developer.
- The ATTACH and DETACH statements
- Use these statements to attach or detach a delegate, method group or an anonymous method to or from an event.
- The RUN statement
- Use this statement to invoke a delegate once it has been created.
- Combining delegates
- Use the '+' operator to add a method group, anonymous method or another delegate to a delegate, and use the '-' operator to remove a method or another delegate from a delegate.
- Method groups conversions
- Use the METHOD keyword to specify a compatible method from a method group, and convert it to a delegate.
PL/I support
This release provides enhanced support for developing PL/I applications within the Visual Studio IDE. The project templates have been updated, and a new Mainframe Subsystem Applications project template is available. It also includes:
- EBCDIC support
- Support for XML (using XMLCHAR, PLISAXA, PLISAXB, and PLISAXC)
- Preprocessor support for programs written using EXEC DLI
- Support for PL/I programs running
WebSphere MQ
- Support for the creation of service interfaces for CICS and IMS screen (BMS/MFS) PL/I applications.
- Support for Open PL/I programs running as DB2 stored procedures
Rumba - embedded mainframe display
This release provides integration with the
Micro Focus Rumba application for debugging Mainframe Subsystem applications that require a TN3270 emulator to run. When debugging, you can run Mainframe Subsystem applications that need an emulator that supports TN3270 in either a Rumba mainframe display embedded in the IDE, or in the Rumba desktop.
Searching in copybooks
The search in copybook files has been enhanced. Visual Studio's
Find in Files now enables you to perform a search in all copybooks - the ones that are part of the project, and in the ones that are found in the paths defined on the
Dependency Paths tab in the project's properties. To do so, set the search scope in the
Find and Replace dialog to
COBOL Project Copybook Paths.
SQL
- EXEC ADO LOAD DATATABLE Statement
- Enables you to populate DataTables using both static and dynamic queries.
- EXEC SQL GET DIAGNOSTICS Statement
- Enables you to get diagnostic information for the last OpenESQL statement executed.
- OPTION compiler directive option
- New parameters have been added to handle additional host variable types, and to set the DATE SQL compiler directive option to EXTERNAL for .NET applications.
- SQL Option for DB2
- Several updates have been made to the XDB tools:
- Initial delivery of z/OS DB2 10 emulation engine:
- A new XDB location version has been implemented
- Support has been added for TIMESTAMP with TIME ZONE data type
- Online analytical processing (OLAP) specifications support has been added for XDB V9 and V10 emulation
- XDB Link has been updated to support the DRDA Version 5 architecture using SQL Application Manager DDM Level 10
- XA switch modules
- This release includes support for XA switch modules that enable CICS- and JES-initiated transactions to run under Microsoft SQL Server using different user credentials than those specified within the XA open string.
Running different versions of Visual Studio to edit your
Enterprise Developer projects
Enterprise Developer 2.2 for Visual Studio 2012 and
Enterprise Developer 2.2 for Visual Studio 2010 can coexist on the same machine. You can use either one of these versions to edit COBOL projects that are supported by the project round-tripping feature in Visual Studio 2012.
WCF REST Service Application projects
Enterprise Developer now provides a project template for creating COBOL WCF REST Application services. The requirements are - Visual Studio Professional, Premium, or Ultimate (Visual Studio Shell does not support WCF applications), and versions of the .NET Framework 4.0 and later. For more information about WCF and REST, check Microsoft's MSDN.
Microsoft Azure
Enterprise Developer for Visual Studio now enables you to create, build, debug, run, and package COBOL applications for use with Windows Azure. It provides:
- Project template for a COBOL cloud service. This creates a solution containing a project for the cloud service and projects for the web and worker roles you specify.
- Demonstration projects, showing a web and worker role in COBOL, with the business logic remaining in unchanged COBOL programs.
- Help. This includes a tutorial that shows how to create a simple cloud service for COBOL and how to deploy and run the service as an off-premises
Microsoft Azure instance.
This functionality was previously available as an AddPack but is now integrated into
Enterprise Developer.
XML Extensions
You can now use XML Extensions in your managed COBOL projects.