Previous Topic Next topic Print topic


Features Added in Visual COBOL 2.2

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.

Compiler directives

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 Visual COBOL
A new section in the product help, Upgrading from Net Express to Visual COBOL for Visual Studio 2017, provides guidance on how to move existing applications created with Net Express into Visual COBOL 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 Visual COBOL.
  • 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

Visual COBOL 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.

IMTK

BMS and MFS maps for PL/I applications
Visual COBOL now supports the creation of service interfaces for CICS and IMS screen (BMS/MFS) PL/I applications.
EJB transactions
Visual COBOL now supports EJB services that execute as a transaction.

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.

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 Visual COBOL 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 Visual COBOL.
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.

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.

Running different versions of Visual Studio to edit your Visual COBOL projects

Visual COBOL 2.2 for Visual Studio 2012 and Visual COBOL 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

Visual COBOL 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

Visual COBOL 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 Visual COBOL.

XML Extensions

You can now use XML Extensions in your managed COBOL projects.

Previous Topic Next topic Print topic