This section describes significant changes in behavior or usage in the current and past releases of COBOL Server. These changes could potentially affect the behavior of existing applications or impact the way the tools are used.
You can replace your SafeNet Sentinel licenses with AutoPass licenses starting with release 8.0. Contact Micro Focus Customer Care for further information.
In previous releases, if a pointer was passed to a method without explicitly stating the passing mode (BY VALUE or BY REFERENCE), it was assumed to be passed BY REFERENCE. From this release, such items are assumed to be passed BY VALUE, making them consistent with other parameter types.
To pass a pointer BY REFERENCE, you must explicitly state reference in the method signature: for example:
method-id M1(reference ptr as pointer) ...
And ensure that the argument is also passed with the reference keyword; for example:
invoke M1(reference myptr) ...
For an up-to-date list of these changes for release 7.0, see this product's Release Notes available from the Product Documentation section of the Micro Focus Customer Care website.
The maximum record length supported by the File Handler is 62KB. If you create records that exceed this limit, a COBCH0649 error is generated on compilation. You can continue to use programs that utilise these large records, but you may experience adverse results in your file handling operations.
The ISO2002 directive now supports an option to provide different levels of ISO2002 features. ISO2002"1" provides the level of features supported in Server Express and Net Express, and ISO2002"2" provides those features, plus additional ones added since Visual COBOL. If you have used the ISO2002 directive in Server Express/Net Express, and are migrating to Visual COBOL, use ISO2002"1" if your applications are affected by the change in behaviors provided with ISO2002"2".
The target of an INITIALIZE statement cannot be a variable-length group if the ODOSLIDE Compiler directive is set. This now results in a severe syntax error, whereas in previous releases this was incorrectly allowed to compile and produced unexpected run-time results.
.NET COBOLJVM COBOL programs compiled with REENTRANT"2" now produce instance methods, whereas previously, compilation of these programs produced static methods. If your non-COBOL code relies on these methods being static, you will have to refactor your code to handle this, or recompile the .NET COBOL code with the ILSTATIC directive.
For an up-to-date list of these changes for release 6.0, see this product's Release Notes available from the Product Documentation section of the Micro Focus Customer Care website.
For an up-to-date list of these changes for release 5.0, see this product's Release Notes available from the Product Documentation section of the Micro Focus Customer Care website.
The Communications Facility (also referred to as the COMMS SECTION or COMMUNICATION SECTION) has long since been deprecated. Certain syntax relating to this was still accepted (but ignored) by the Compiler. That syntax is no longer permitted, and if encountered, the Compiler will now generate an error (COBCH1895 Communication Facility not supported); you must remove the section from your sources before recompiling.
For an up-to-date list of these changes for release 4.0, see this product's Release Notes available from the Product Documentation section of the Micro Focus Customer Care website.
The numbers that follow each issue are the Support Incident Numbers followed by the Reported Problem Incident (RPI) number (in parentheses).
Web access to the Enterprise Server Console Log and Communications Server Log is now restricted when the enterprise server region is secured using external security. Users will be required to provide a valid username and password in order to view either log file.
Web access to the logs can be controlled using the standard ACL definitions under the new Communications Server resource class, with resources Enterprise Server Console Log and Communications Server Log. If these resources exist, users require 'read' access to be allowed to view the logs. If the resources do not exist, the default behavior is to allow 'read' access on entry of a valid username and password.
An example of the new resource class and resource definitions can be found in the es_default_ldap_msuser.ldf file, which is located in the bin sub-directory of your product directory.
Version 4.0 of your product is dependent on a later version of the Microsoft C run-time system than earlier Micro Focus products. This means that COBOL executables (.exe) built with an earlier version of your product might not be compatible with version 4.0 run-time products. If the behavior of your application changes with version 4.0, we strongly recommend that you relink the main executable with version 4.0. This will ensure that the COBOL run-time system fully handles any run-time error conditions that might occur.
A new executable that is fully compatible with version 4.0 can be produced without recompiling the application, as long as the original object code is available and it is relinked with version 4.0.
To allow your executables to benefit from the product's latest programming and performance enhancements, we recommend a full recompilation of your source code.
Schema changes that affect the test coverage results generated from the tcutil utility mean that if you propagate the results to a third-party application (for example, an XSLT processor), and rely on the <copyFileCoverage> element, you need to alter your transformations to focus on <sourceFileCoverage> instead. The element was renamed to more appropriately reflect its contents, as tcutil now gives global coverage for all source files (not just copybooks).
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 Customer Care website.
The numbers that follow each issue are the Support Incident Numbers followed by the Reported Problem Incident (RPI) number (in parentheses).
The default for the FASTINIT directive has changed: FASTINIT is now the default when setting the MF dialect. The directive remains not set by default (that is, NOFASTINIT) for other dialects.
The new OpenESQL OPTIMIZECURSORS SQL compiler directive option is turned on by default for both ADO.NET (DBMAN=ADO) and ODBC (DBMAN=ODBC). For ADO.NET, this reduces cursor memory consumption thereby providing optimal performance. This also ensures that, for ODBC, 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.
See Reserved Words Table at the end of this topic for more information.
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).
2869848 (619107)
2816871 (1099564)
2854207 (1103659)
2838118 (1101539)
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).
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.
mfaudit.timeout = nWhere 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)
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.
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.
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)
2830383 (1100609)
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).
2807531 (1097783)
2682101 (1092325)
2664675 (1091082)
2786397 (1095265)
2795077 (1096322)
2799213 (1096684)
2792382 (1096011)
Other COBOL subprograms built with previous versions of Visual COBOL are not required to be rebuilt.
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).
2697615 (1094527)
2697571 (1094370)
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)
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).
2673619 (1093197)
set intLength to testString::Length()must change to:
set intLength to testString::Length
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).
2195519 (1062800)
2641890 (1088838)
2487164 (1081693)
2562118 (1083203)
The BIS_LOG variable is only examined when the BIS application pool is started or recycled. After setting or changing BIS_LOG, IIS must be restarted in order for the variable to take effect.
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).
2552658 (1082755)
2593798 (1085945)
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).
2579335 (1084817)
2553438 (1082469)
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).
2549058 (1082441)
2518330 (1079491)