This section describes significant changes in behavior or usage in the current and past releases of
Visual COBOL
for Eclipse. These changes could potentially affect the behavior of existing applications or impact the way the tools are used.
Note: This list does not include the changes in behavior introduced by any of the HotFix releases. Refer to the HotFix readmes for
information about such changes.
Changes in Behavior in This Release
Back to Top
For an up-to-date list of these changes for release 3.0, see this product's Release Notes available from the
Product Documentation section of the
Micro Focus
SupportLine Web site.
The numbers that follow each issue are the Support Incident Numbers followed by the Reported Problem Incident (RPI) number
(in parentheses).
Compatibility AddPack for Visual COBOL
Back to the list
Compatibility AddPack for Visual COBOL is now deprecated and will not be available with release 3.0 and later.
The Dialog System GUI and run-time components and Dialog System Character Mode (on Windows and UNIX) which were part of the
AddPack are now installed as part of
Visual COBOL for Visual Studio. The run-time components are installed as part of
COBOL Server. These are only included for backward compatibility and Micro Focus does not recommend that you use them for new development.
The other components which were part of the AddPack, the Character-Based Data File Editor, CSBIND and Screens, will be available
upon request from Micro Focus SupportLine.
OpenESQL
Back to the list
The new OpenESQL OPTIMIZECURSORS SQL compiler directive option is turned on by default for
ODBC (DBMAN=ODBC).
This
ensures that embedded SQL cursors that use WITH HOLD and FOR UPDATE clauses have the same data integrity across all databases.
If your applications require the OpenESQL preprocessor to use the behavior provided in an earlier release, compile them using
OPTIMIZECURSORS=NO.
Changes in Behavior in Release 2.3 Update 2
Back to Top
This section describes significant changes in behavior or usage. These changes could potentially affect the behavior of existing
applications or impact the way the tools are used.
The numbers that follow each issue are the Support Incident Numbers followed by the Reported Problem Incident (RPI) number
(in parentheses).
Compiler
Back to the list
- In previous product releases, the scoping rules for nested programs (as defined in ANS85 COBOL), were not enforced in managed
COBOL (.NET and JVM). This meant that, in cases where program A contained programs B1 and B2, and programs B1 and B2 contained
C1 and C2, respectively, it was possible to call program C2 from C1, for example. The lack of scoping rules also meant that
it was not possible for B1 and B2 both to contain a program with the same name.
This product release enforces the correct ANS85 scoping rules for nested programs, including COMMON programs, and makes it
possible to have multiple programs with the same name at different levels of the nesting hierarchy. In this way, the behavior
in managed COBOL is now compatible with the behavior of native COBOL programs.
- Replacing a partial token no longer causes the second part of the token to appear on a new line. This could happen if the
new text was larger than the text being replaced.
2869185 (1105763)
- There is no longer a problem opening an RM/COBOL indexed file when the program has a RECORD CONTAINS n CHARACTERS clause
and there are record descriptions with lengths less than n. This situation previously caused a 39 error on the OPEN (other
than OPEN OUTPUT) because there was a mismatch in the minimum record length.
Enterprise Server
Back to the list
- Previously, it was possible to install groups that should not have been installed. If a group name, as defined in the Startup
List, did not exist in the list of Groups then the next Group in the alphabetical order would be loaded instead. Now, if a
Group is not defined in the list of Groups, a warning that the Group could not be loaded is issued.
2869848 (619107)
- On UNIX, if the "File Path" setting was not specified in the configuration of an Enterprise Server, the environment variable
TXFILEP was defaulting to $COBDIR/etc/cas. This has been changed and TXFILEP is not populated when the "File Path" is not
specified.
IDE
Back to the list
- This update modifies any existing connections defined in an Eclipse workspace. If the connections had any non-default values,
those values could revert to their original default setting. After installing this release, before you use any remote connections
for the first time, you need to check the settings and amend them as necessary.
2852872 (1103699)
Micro Focus Directory Server
Back to the list
- The "-n" option for the mfds command now supports hostnames as the network addresses in addition to IPv4 addresses.
2816871 (1099564)
Monitoring and Management
Back to the list
- Messages that are written to the console log by applications that perform "display upon console" now contain a standard message
ID (CASMG0001I).
2854207 (1103659)
Run-Time System
Back to the list
- The command_line_linkage tunable has been deprecated; equivalent functionality can be achieved by using the COMMAND-LINE-LINKAGE
Compiler directive instead.
2838118 (1101539)
Changes in Behavior in Release 2.3 Update 1
Back to Top
This section describes significant changes in behavior or usage. These changes could potentially affect the behavior of existing
applications or impact the way the tools are used.
The numbers that follow each issue are the Support Incident Numbers followed by the Reported Problem Incident (RPI) number
(in parentheses).
Data Tools
Back to the list
- When filtering a data file, if there is no valid temporary directory set, you are prompted to set one using the option in
the Preferences dialog box.
- The editor no longer allows you to open a file if the file size (without header size) is not a multiple of the record size
on disk; an error is produced instead.
- The level numbers displayed in a record layout correspond to the levels used in the .idy file that was used when the structure
file was created.
Editor Writing Assistance
Back to the list
- IntelliSense (Visual Studio) or Content Assist (Eclipse) suggestions are no longer offered if you start typing numbers and
automatic triggering of suggestions is enabled.
IDE
Back to the list
- When compiling to multiple executables from the command line, you must specify the -logger parameter to enable the correct
log to be output to the console.
2848855 (1102932)
- For a file added to a JVM COBOL project by adding the folder that stores the file (using the
Source tab on the
Micro Focus > JVM Build Path > Source page in the projects' properties), there is now a new context-menu command,
Copy to Output Directory, in COBOL Explorer. Choosing this command on a file triggers a build of the project and copies the file into the output directory.
2699374 (1094326)
Run-Time System
Back to the list
- The Audit Manager contains a new TIMEOUT option. When a client sends an audit event using the ‘CBL_AUDIT_EVENT’ API, the
event gets placed in the next available slot in a shared memory block. If shared memory is full (i.e. no slots are available),
the event is re-tried until a slot becomes available.
If no Audit Manager is running, no events are removed from shared memory, and no slots will ever become available. Therefore,
use the new TIMEOUT option so that a client will only retry sending until the TIMEOUT duration is reached; after which, it
will stop sending audit events. If Audit Manager is recycled, events will start to be sent again.
To set the TIMEOUT for all Audit Manager clients, specify the following line in the Audit Manager configuration file:
mfaudit.timeout = n
Where n is the timeout value in milliseconds.
To set the TIMEOUT for an individual Audit Manager client, use the ‘CBL_AUDIT_CONFIG_PROPERTY_SET’ API. It takes an integer
property-value, which should be the timeout value in milliseconds.
If TIMEOUT is set using both methods, the client property TIMEOUT takes precedence, unless this property is set to zero; in
such cases, the TIMEOUT in the configuration file is used. If you use the ‘CBL_AUDIT_CONFIG_PROPERTY_GET’ API on the ‘TIMEOUT’
property, it only returns the TIMEOUT value for the client property; it does not return the value set in the configuration
file.
2838689 (1101685)
- Several changes have been made to the implementation of IS DBCS, IS KANJI and IS JAPANESE class condition tests:
- IS [NOT] DBCS
When CHARSET"EBCDIC" is in effect, the IS DBCS test returns true when each character in the string is deemed to be a valid
DBCS character. A valid character has its first byte in the range 0x41 through 0xFE, and the second byte in the range 0x41
through 0xFE, or the character is an EBCDIC space (0x4040). When CHARSET"ASCII" is in effect, the DBCS test uses an OS call
to determine if the string contains only valid double-byte character, and returns true if valid.
- IS [NOT] KANJI
When CHARSET"EBCDIC" is in effect, the IS KANJI test returns true when each character in the string is deemed to be a valid
Kanji character. A valid character has its first byte in the range 0x41 through 0x7F, and the second byte in the range 0x41
through 0xFE, or the character is an EBCDIC space (0x4040). When CHARSET"ASCII" is in effect, the IS KANJI test uses an OS
call to determine if the string contains only valid Kanji character, and returns true if valid.
- IS [NOT] JAPANESE
When CHARSET"EBCDIC" is in effect, the IS JAPANESE test is not supported, and will generate a COBCH1806 Feature not supported
in selected charset message on compilation.
When CHARSET"ASCII" is in effect, the IS JAPANESE test returns true when the string contains only double-byte Japanese characters
or single-byte Japanese Katakana characters, and returns true if valid. When NSYMBOL"NATIONAL" is in effect, these class tests
are not supported, and will generate a COBCH0303 Operand has wrong data-type message on compilation.
2812895 (1098401)
SQL Option for DB2
Back to the list
- Spurious errors were sometimes returned while querying using an ALIAS.
2830383 (1100609)
Changes in Behavior in Release 2.3
Back to Top
This section describes significant changes in behavior or usage. These changes could potentially affect the behavior of existing
applications or impact the way the tools are used.
Where present, the numbers that follow each issue are the Support Incident Numbers followed by the Reported Problem Incident
(RPI) number (in parentheses).
CAS Security
Back to the list
- The Enterprise Server External Security Facility now includes MLDAP ESM Module 2.0, with a new algorithm for identifying
the best-matching resource-access rule and ACE for resource-access security checks. This algorithm is faster and matches most
customers' expectations. The new algorithm also provides an optional "username substitution" feature. It can be enabled by
setting "rule substitutions" to "yes" in the [Operation] section in the Security Manager configuration text area. When this
is enabled, the string "${user}" in a resource-rule name will be replaced with the name of the user that makes the request.
For example, a DATASET rule named "USERS.${user}.**" would apply to datasets with the requesting user's name as the second
qualifier. In rare cases, customers with complex, ambiguous resource-access security rules might see experience changes in
behavior as a result of the new algorithm. The old algorithm is still supported and can be enabled by setting "version 1 authentication"
to "yes" in the [Operation] section of the Security Manager configuration.
2807531 (1097783)
CAS XA Switch modules
Back to the list
- The XA switch modules now support dynamic registration.
2682101 (1092325)
- The XA switch modules now support batch-only operations when multiple XA Resource Managers have been defined.
2664675 (1091082)
- In
Visual COBOL 2.2 update 2, Micro Focus identified undefined run-time behavior when the following combination of directives was specified:
SIGN"EBCDIC", CHARSET"ASCII", and one of the following: HOST-NUMMOVE, HOST-NUMCOMPARE or SIGN-FIXUP. Previously (Visual COBOL 2.2 update 1 and earlier), if this combination was specified, the SIGN”EBCDIC” directive should have been ignored, to avoid
a mixture of ASCII and EBCDIC characters; however, SIGN”EBCDIC” was still being honored, resulting in undefined run-time behavior.
Therefore, this combination of directives is now invalid for
Visual COBOL 2.2 update 2 or later, and if specified, will be rejected at compile time.
2786397 (1095265)
Compiler
Back to the list
- For native COBOL, the size limit of the Data Division now stands at 2GB -1.
2796076 (1096384)
-
Previously, it was not possible to specify sign(EBCDIC) with sign-fixup, host-num-move or with host-num-compare. This
combination is now supported in native COBOL but remains invalid for managed COBOL code. This is applicable to version 2.2
U2 HotFix 10 onwards.
2824577 (1100823)
File Handling
Back to the list
- Custom file handlers (using DYNREDIR) are now called for each part of a concatenated file.
2795077 (1096322)
File Locking
Back to the list
- In versions prior to
Visual COBOL 2.3, the semantics of the sharing phrase specified in an OPEN statement or used within a call to CBL_OPEN_FILE were not correctly
applied in some cases on UNIX and Linux platforms. From version 2.3 onwards, the sharing phrase is correctly honored when
the tunable
strict_file_locking=true is set, which is the default setting.
Example of potential changes in behavior:
- Process-A opens a file with read-only access and a sharing mode that denies other processes write access (SHARING WITH READ ONLY).
- Process-B then attempts to open the file with read-only access and a sharing mode that denies other processes read access (SHARING
WITH NO OTHER).
With
strict_file_locking=true,
Process-B is unable to open the file, because
Process-A has successfully opened the file allowing only read access.
With
strict_file_locking=false,
Process-B successfully opens the file.
If your application encounters unexpected OPEN conditions or fails to open files, it might be as a result of the new file
locking behavior. In such circumstances, we recommend that you review the file locking and sharing requirements of your application
and refactor your source code to work with the default setting. The original file locking and sharing behavior can be restored
by setting
strict_file_locking=false.
IDE
Back to the list
-
Visual COBOL for Eclipse now ships with Eclipse 4.4.2 (Luna). A consequence of this is that if your application also contains JVM COBOL
code that was built with a version of
Visual COBOL prior to version 2.3, those parts of your application must be rebuilt; otherwise you will experience errors at either compilation
or run time.
- Visual COBOL for Eclipse now ships with Eclipse 4.4.2 (Luna). If your applications contain JVM COBOL code that was built with a previous
version of the product, those parts of your application must be rebuilt; otherwise you will experience errors at either compilation
or run time.
(609469)
- A project can have one of two connection modes: NFS/Samba, where the target location is mounted as a local drive, and RSE,
which is a purely remote connection to the target location. For project types such as Mainframe COBOL, NFS/Samba is required
to use some tools which do not support RSE. For most other projects, it is possible to switch between connection modes using
the
Remote Settings context menu option. In the dialog box, there are radio buttons allowing for selection of connection modes. On changing mode,
you must select an existing connection of the appropriate type, or create a new one. If switching to NFS/Samba mode, you must
specify the local path to the project.
2792882 (1096196)
- By setting "-Denable.projectrepair=true" in the eclipse.ini file, .cobolProj and .pliProj files will be repaired to reflect
the workspace on project refresh.
2696707 (1095994)
J2EE Connector
Back to the list
- This release provides a new command-line argument to Java, mf.ssl.algorithm, which can be set to an appropriate algorithm.
2799213 (1096684)
MF Server Administrator (GUI)
Back to the list
- Passwords that entered through either the MFDS or the ESMAC interface now use the same encoding.
2792382 (1096011)
Changes in Behavior in Release 2.2 Update 2
Back to Top
This section describes significant changes in behavior or usage. These changes could potentially affect the behavior of existing
applications or impact the way the tools are used.
The numbers that follow each issue are the Support Incident Numbers followed by the Reported Problem Incident (RPI) number
(in parentheses).
Compiler
Back to the list
- When using the HOSTRW directive with the mainframe dialect, Report Writer will now produce the full range of ASA control
characters and will emulate mainframe print files.
2697615 (1094527)
- Fixed Binary (p<=7) is now an 8-bit, signed, 2's complement binary integer by default.
Documentation
Back to the list
- The default setting for the MFALLOC_PCFILE environment variable has changed; the default is now set to Y, which means that
when cataloguing a file that has a DCB attribute of DSORG=PS, a physical file is created for it if one does not exist. Previously,
the default was set to N, which meant that a file was not created.
2697571 (1094370)
Enterprise Server
Back to the list
- The Enterprise Server External Security Facility now includes MLDAP ESM Module 2.0, with a new algorithm for identifying
the best-matching resource-access rule and ACE for resource-access security checks. This algorithm is faster and matches most
customers' expectations.
The new algorithm also provides an optional "username substitution" feature. It can be enabled by setting "rule substitutions"
to "yes" in the
[Operation] section in the Security Manager configuration text area. When this is enabled, the string "${user}" in a resource-rule name
will be replaced with the name of the user that makes the request. For example, a DATASET rule named "USERS.${user}.**" would
apply to datasets with the requesting user's name as the second qualifier. In rare cases, customers with complex, ambiguous
resource-access security rules might see experience changes in behavior as a result of the new algorithm. The old algorithm
is still supported and can be enabled by setting "version 1 authentication" to "yes" in the
[Operation] section of the Security Manager configuration.
2807531 (1097783)
J2EE Connector
Back to the list
- The listSystem.properties file in package com.ibm.ctg.client was missing documentation for some sections.
Changes in Behavior in Release 2.2 Update 1
Back to Top
This section describes significant changes in behavior or usage. These changes could potentially affect the behavior of existing
applications or impact the way the tools are used.
The numbers that follow each issue are the Support Incident Numbers followed by the Reported Problem Incident (RPI) number
(in parentheses).
COBSQL
Back to the list
- COBSQL now displays appropriate COBOL syntax errors after encountering EXEC SQL statement errors.
2673619 (1093197)
Changes in Behavior in Release 2.2
Back to Top
This section describes significant changes in behavior or usage. These changes could potentially affect the behavior of existing
applications or impact the way the tools are used.
The numbers that follow each issue are the Support Incident Numbers followed by the Reported Problem Incident (RPI) number
(in parentheses).
Compiler
Back to the list
- The default for the NSYMBOL directive under DIALECT(ENTCOBOL) has been changed to NSYMBOL(NATIONAL) to emulate the equivalent
IBM default.
2657471 (1090355)
- To improve RM/COBOL and ACUCOBOL compatibility, the SIGN clause at a group level is no longer applied to non-DISPLAY usage
signed numeric data items within the group, just as it is not applied to unsigned numeric data items and non-numeric data
items within the group.
2549904 (1082171)
- Previously, even though no code was generated, the Compiler allowed the ON EXCEPTION and NOT ON EXCEPTION phrases in the
DISPLAY statement in formats that do not allow these phrases. As a result, if the DISPLAY statement was in the ON EXCEPTION
phrase of another statement, the NOT ON EXCEPTION phrase would bind incorrectly with the DISPLAY statement instead of with
the intended containing statement - for example, ACCEPT or CALL.
IDE
Back to the list
- The Problems view now has a 'Program' column that displays the name of the program in which the problem occurred. If the
column is not present in the view by default, it can be added through the Configure Columns dialog box in the View Menu.
2608496 (1088530)
- The outline of the ruler in the COBOL editor now changes on modelChanged depending on the current source format.
2488419 (1077143)
- Deleting a Web service or a Java interface mapping now deletes the files relating to it from the repos directory and, if
it is empty after the files have been deleted, will remove the repos directory itself.
- The IDE now performs an automatic directive determination when files are added to a project. You can also use a command to
perform directive determination of the project manually.
MF Directory Server
Back to the list
- The mfds command line option for exporting registered Enterprise Server definitions to an XML file now supports the "*" option.
This exports all registered servers rather than a specified server. Multiple server definitions are now exported into the
target directory and saved into a file with the default name ALLSERVERS.xml. The import option now also supports the import
of multiple server definitions from a single XML file.
2641890 (1088838)
- mdump now supports a new option, -e, to help you query the Security Manager configuration details. The possible values of
the option are: "1" - shows security configuration that applies to any returned enterprise servers; "2" - shows security configuration
for MFDS and the default Enterprise Server security configuration. This requires MFDS version 1.15.00 or higher; "3" - returns
the properties of all configured external Security Managers.
2487164 (1081693)
MF Server Administrator (GUI)
Back to the list
- When adding a user to an external security manager, you can now include a password expiry time in the Advanced Configuration
section of the Add New User wizard in Enterprise Server Administration. The field value is specified using generalized time
format (YYYYMMDDHHMMSS.0Z), and can be used by the MLDAP ESM for calculating whether a user's password has expired and requires
updating. This value may only be specified using this page when adding a user. You need to use an external directory services
configuration tool to edit it.
2562118 (1083203)
Changes in Behavior in Release 2.1 Update 1
Back to Top
This section describes significant changes in behavior or usage. These changes could potentially affect the behavior of existing
applications or impact the way the tools are used.
The numbers that follow each issue are the Support Incident Numbers followed by the Reported Problem Incident (RPI) number
(in parentheses).
Documentation
Back to the list
- To ensure no loss of functionality when accessing Vision and RM/COBOL data files, you should use the appropriate IDXFORMAT
Compiler directive setting or file handling option, and not use the CALLFH(ACUFH) Compiler directive. See 'Configuring Access
to Vision Files' and 'Configuring Access to RM/COBOL Data Files' for more information.
Enterprise Server
Back to the list
- HSF includes the following enhancements:
- A new record type (JCLF) for JCL files.
- A Job class has been added to the JCL JOBSTART records.
- A condition code has been added to the JCL STEP records.
- Statistics for up to 5 Transient Data Queues per CICS record has been added (same as for exisiting TSQ stats). The HSF files
will now be created with the following header: #HSFVer=02 Type,PID,Task,Date,Time,Tran/Job,User/DDName/CC,LU/Step,Prog/DSName,Latent/ReadCount,Resp/WriteCount,API/RewriteCount,SQL/DeleteCount,IMS,DSType,DSAccessType,File1,Count1,Time1,File2,Count2,Time2,File3,Count3,Time3,File4,Count4,Time4,File5,Count5,Time5,TS1,Count1,Time1,TS2,Count2,Time2,TS3,Count3,Time3,TS4,Count4,Time4,TS5,Count5,Time5,TD1,Count1,Time1,TD2,Count2,Time2,TD3,Count3,Time3,TD4,Count4,Time4,TD5,Count5,Time5
2552658 (1082755)
IDE
Back to the list
- You can now set program breakpoints as follows - click "Add Program Breakpoint" in the Run menu or on the Breakpoints view
toolbar, and enter the program name in the dialog that is displayed.
2606838 (1087239)
- Local Enterprise Server regions without secure user credentials are now started with casstart and stopped with casstop commands.
2606835 (1087238)
OpenESQL
Back to the list
- SQLWARN4 flag was not being set when more than one row was returned for a singleton SELECT statement. The OpenESQL run-time
now correctly sets SQLWARN flags when a singleton SELECT statement returns multiple rows.
2593798 (1085945)
Changes in Behavior in Release 2.1
Back to Top
This section describes significant changes in behavior or usage. These changes could potentially affect the behavior of existing
applications or impact the way the tools are used.
The numbers that follow each issue are the Support Incident Numbers followed by the Reported Problem Incident (RPI) number
(in parentheses).
IDE
Back to the list
- You can now specify in the IDE whether directories that you add to the project should be added to the copypath. You configure
this in the project's properties under Micro Focus COBOL > Build Paths, and on the Copybook Paths tab.
(589096)
Run-Time System
Back to the list
- When running a full-screen application inside a terminal emulator on Linux, the actual size of the terminal is read at startup
and reread when the terminal is resized. This behaviour is also supported on AIX, HP/UX, and Solaris. The Micro Focus vt220
terminfo entry now correctly describes a 24-line display. A vt220-25 terminfo entry is included for compatibility with the
previous behaviour.
2579335 (1084817)
Vision File System
Back to the list
- When you configure your application to return RM/COBOL file status codes, by setting COBFSTATCONV=rmstat, the codes returned
are ANSI'85 codes.
2553438 (1082469)
Changes in Behavior in Release 2.0
Back to Top
This section describes significant changes in behavior or usage. These changes could potentially affect the behavior of existing
applications or impact the way the tools are used.
The numbers that follow each issue are the Support Incident Numbers followed by the Reported Problem Incident (RPI) number
(in parentheses).
Compiler
Back to the list
- The scope of the ILUSING Compiler directive when used in a $set command has changed. The scope of the directive is now limited
only to the source file it is set in, and not globally. This new behavior may mean that your source files no longer compile.
To resolve this, add the required ILUSING statements to the required individual source files, or add the ILUSING directive
on the command line. Alternatively, use the IDE to achieve the required behavior: in Visual Studio, use the Namespaces tab;
in Eclipse, set the directive in the Additional Directives field.
DB2
Back to the list
- The DB2 ECM has been updated to resolve run-time errors returned when compiling against mainframe databases in 64-bit mode.
2549058 (1082441)
File Handling
Back to the list
- When reading a file cataloged as DISP=SHR the file handler now buffers the read for better performance.
2518330 (1079491)
IDE
Back to the list
- Typing in the sequence area moves text after the cursor to the right and doesn't delete the characters at area end. To overwrite
characters in the area, switch to insert mode by pressing the Insert key. Pressing the Tab key in the sequence area indents
the text if the option "Pressing Tab in the sequence number area moves caret to area A" is not selected. Pressing the Tab
key when there is a multiline selection aligns the text to the area margins.
- Typing in the sequence area now works like typing in a regular text editor - it moves to the right all the text after the
cursor and doesn't delete the charaters at area end. If you want to overwrite characters in the area, you can switch insert
mode to overwrite by using "Insert" key.