Release Information for Natural Version 6.3.7

This document covers the following topics:


New Features

Application Programming Interfaces

The utility SYSEXT provides the following new application programming interfaces (APIs):

API Description
USR4215N Return a list of resources (short object and long resource name) of a Natural library according to the forwarded range parameters.

Natural for Ajax

Natural for Ajax is now delivered in the Version 1.2.4. It is based on Application Designer Version 8.0.

Support is provided for the following:

  • Certain controls can be bound to Natural control variables so that the modification status of a Natural operand that represents the value of the control can be checked with IF control-variable MODIFIED. See XCIDATADEF - Data Definition in the Natural for Ajax documentation.

  • The Natural system variable *CURS-FIELD can be used in Natural for Ajax applications to identify the operand that represents the value of the control that has the input focus. When the Natural system function POS is applied to a Natural operand that represents the value of a control, it yields the identifier of that operand. See also Natural Parameters and System Variables in the Natural for Ajax documentation.

  • The statusprop property for input controls such as FIELD has been split into two separate properties: statusprop and displayprop. See Dynamically Controlling the Visibility and the Display Status of Controls in the Natural for Ajax documentation.

  • It is now possible to define a Natural for Ajax application as a servlet in the file web.xml. This makes the definition of security constraints for individual applications easier.

The following new features apply only to Natural maps, not to rich GUI pages:

  • With the configuration tool, it is now possible to configure the behavior of a double-click. The double-click can be assigned to a function key or can be disabled.

  • With the configuration tool, it is now possible to define that all function keys are to be shown, including those which do not have names. This makes sure that the function keys are always displayed at the same position.

Natural Web I/O Interface Client

The Natural Web I/O Interface is now delivered in the Version 1.3.5.

Support is provided for the following:

  • It is now possible to define different styles for output fields which are based on variables and output fields which are based on literals (Java EE-based servers only). See Defining Different Styles for Output Fields in Configuring the Client which is part of the Natural Web I/O Interface documentation.

Changes and Enhancements

Support of Processing Rules in Objects of Type Adapter

Processing rules (inline rules and Predict free rules) are now supported in Natural adapters in the same way as in Natural maps.

PROCESS PAGE Statement Enhanced

A field in a PROCESS PAGE statement can now be associated with a control variable. When the value returned for that field is not equal to the value sent, the field is regarded as modified and the control variable is set to modified.

Compiler Option PCHECK Enhanced

The compiler option PCHECK has been enhanced for use in conjunction with objects of type adapter. With PCHECK set to ON, the PROCESS PAGE USING statement now checks the parameter number, format, length and array index boundaries not only at execution time, but already at compile time.

In addition, the parameter check at compile time has been expanded to other invoking statements, such as PERFORM (external subroutine), INPUT USING MAP, and to the calling of helproutines.

Result Format and Length of an Exponentiation with an Exponent of Format Numeric (N) or Packed (P)

The precision of the result field in an exponentiation with an exponent of format numeric (N) or packed (P) has changed in Natural Version 6.3.7 in order to achieve a result which is more precise.

In case of an exponentiation where the exponent is a numeric or packed operand with one or more digits after the decimal point (for example, N1.1 or P1.1), a result field of format float (F8) instead of format packed (P) is now generated.

The change is effective after a RUN, CATALOG or STOW in Natural Version 6.3.7. An EXECUTE of programs which are compiled under a previous version (Natural Version 6.3.6 or below) has no effect.

Example:

DEFINE DATA LOCAL
1 #F8 (F8)
END-DEFINE
COMPUTE ROUNDED #F8 = 1 + 5 ** 0.5
/* The result field of the exponentiation 5 ** 0.5 is now F8 instead of P15.0
PRINT #F8
/* After CATALOG, the result in Natural Version 6.3.7 is +3.236067977499789E+00
/* Result in Natural Version 6.3.6 is +3.000000000000000E+00
END

The documentation has been adapted accordingly. See Performance Considerations for Mixed Format Expressions in the Programming Guide.

New DDM for EMPLOYEES File

With Natural Version 6.3.7, the new DDM EMPLOYEES-V2009 is delivered. This DDM is used by the new sample programs supplied with the SYSEXV utility. This DDM makes use of new Adabas data types introduced with Adabas Version 6. The respective EMPLOYEES data requires Adabas Version 6.1.6 or higher.

Enhanced Application Programming Interfaces

The following application programming interfaces (API) in the library SYSEXT have been enhanced:

USR0330N

The complete timestamp value for Natural objects is now returned.

USR0360N, USR0421N and USR1020N

A new optional parameter named LAYOUT-CHECK is available. The layout definition is checked when a value other than blank is specified for this parameter. Error messages that do not fit into the ranges are not processed.

Natural Remote Procedure Call (RPC)

Natural Remote Procedure Call (RPC) is available as a separate subcomponent of Natural. It has its own version number. This measure takes into account that Natural RPC is a cross-platform component and makes it possible to provide new Natural RPC versions independent of new Natural versions for the various platforms supported.

With Natural Version 6.3.7, an enhanced Natural Remote Procedure Call Version 6.3.3.1 is delivered that replaces the existing Natural RPC Version 6.3.3.

As of Version 6.3 of Natural Remote Procedure Call (RPC), the following changes and enhancements are available:

System Command RPCERR Enhanced

The system command RPCERR has been enhanced to show the full error message text returned by an EntireX RPC server.

RPCINFO/RPCINFOL Enhanced

The following enhancements have been applied to the user application programming interface RPCINFO and the parameter data area RPCINFOL:

  • RPCINFO has been enhanced to retrieve the error message text returned by an EntireX RPC server.

  • The fields S-NODE, S-NAME, C-NODE, C-NAME have been enlarged from A8 to A32 to be more compliant with EntireX.

  • RPCINFO is loaded to the library SYSTEM on system file FNAT and is immediately available to all user applications.

All enhancements are compatible with existing applications.

Notes:

  1. If you recatalog an existing application that references RPCINFOL, you may be concerned if the enlarged fields are displayed. Either adapt your output layout accordingly or add the session parameter AL=8 where appropriate.
  2. You are strongly recommended to remove any copies of RPCINFO from the FUSER system file.

SYSRPC Stub Generation

The Stub Generation function of the SYSRPC utility has been enhanced by the direct command COMPAT IDL in order to optionally generate stub subprograms that are more compliant with EntireX RPC servers and the reliable RPC. If COMPAT IDL is specified and an EntireX RPC server is called by a Natural client, the parameter definitions on the Stub Generation screen must correspond to the IDL definition for the EntireX RPC server.

With the next version of Natural, COMPAT IDL will be the default. For compatibility reasons, an option will be provided to generate stub subprograms as in previous Natural versions.

Documentation

Please note that the term "stub subprogram", which in earlier versions of EntireX was also used to refer to application-dependent, Workbench-generated pieces of code for issuing and receiving remote procedure calls, will no longer be used. In the EntireX documentation, these objects are now referred to as "interface objects". In the Natural Remote Procedure Call documentation, however, the term "stub subprogram" is still prevailing. It will be replaced in one of the next versions of Natural RPC.

Natural Security

The following enhancements are provided with Natural Security Version 6.3.7:

Users

The following enhancements are provided for users:

Copying a User

The function Copy User has been enhanced: You can enter the name of the new user not only in the new profile but already in the window which is displayed when you invoke the Copy function. This name is then written into the new profile (where you can still change it, of course).

New User Exit NSCUSEX2

A new user exit, NSCUSEX2, is provided in the library SYSSEC. It allows you to review the changes you have made to a list of group members. It is invoked when you use the user-maintenance function Edit Group Members and CATALOG the changes to the group. It displays a list of the group's members, indicating which members have been added to the group and which have been removed from it.

Libraries

The following enhancements are provided for libraries:

Copying a Library

The function Copy Library has been enhanced: You can enter the name of the new library not only in the new profile but already in the window which is displayed when you invoke the Copy function. This name is then written into the new profile (where you can still change it, of course).

Use of UNIX Shell Commands

UNIX shell commands can be executed from within a Natural program by invoking the Natural user exit SHCMD via the statement CALL SHCMD. With Natural Security you can now control for each library the execution of UNIX shell commands from within Natural programs by allowing/disallowing the execution of the CALL SHCMD statement in the Command Restrictions section of library profiles.

Utilities

The following enhancements are provided for utilities:

SYSERR - Direct Commands

In the security profiles for the SYSERR utility, you can now control the use of SYSERR direct commands. You can allow or disallow each command for all users, or allow it for Natural Security administrators only.

SYSMAIN and SYSOBJH - Exclude Library Profiles With Co-Owners

The session option Utilities option in the default profiles of utilities SYSMAIN and SYSOBJH has been enhanced: In addition to the existing values Y and N, you can specify the new value O: This is identical to Y, but has the following additional effect:

If you use SYSMAIN or SYSOBJH to process the contents of a library in whose library profile the general option Utilities is set to O (= processing permitted for owners), and you as an owner require a countersignature, the countersignature prompt will be suppressed; instead, the library will be excluded from SYSMAIN/SYSOBJH processing.

This enhancement is only relevant online, because in batch mode countersignatures cannot be processed anyhow.

Application Programming Interfaces

The following application programming interfaces (APIs) have been enhanced:

NSCADM

The API NSCADM has been enhanced. It allows you to compare a preset value (as set in the Library and User Preset Values) with the the corresponding actual value in user profiles, and provides a list of all user profiles in which the value differs from the preset value. For details, see example program PGMADM04 and text member TXTADM04 in the library SYSSEC.

NSCXR

The API NSCXR has been enhanced. It allows you to retrieve information about the access rights to an individual module in a library, for all users who have access to the library. For details, see example program PGMXR018 and text member TXTXR018 in the library SYSSEC.

Other Enhancements

The following other enhancements are provided:

Suppress Startup Transaction in NDV Mapped Environment

If a startup transaction is specified in a Natural Security library profile, it will be executed after a successful logon to the library. In a Natural Development Server environment, however, when a library is selected from the tree view in the mapped environment, the execution of a startup transaction may not be desired. A new Administrator Services option NDV Startup Inactive, which can be set in the Library And User Preset Values, allows you to suppress the execution of startup transactions in a mapped environment.

Copying a Mailbox

The function Copy Mailbox has been enhanced: You can enter the name of the new mailbox not only in the new profile but already in the window which is displayed when you invoke the Copy function. This name is then written into the new profile (where you can still change it, of course).

Known Incompatibilities

This section provides additional information that you should be aware of after having installed Natural.

Canceling File Transfer with Entire Connection

The following information applies when using Entire Connection Version 4.5.2 or above.

A different error message is now issued when the user cancels a file transfer that has been started with the Natural statement DOWNLOAD PC FILE or UPLOAD PC FILE. As of Natural Version 6.3.7, the error message NAT1016 is issued.

Up to Natural Version 6.3.6, one of the following error messages was issued: NAT1500, NAT6220, NAT6221.

This change may affect existing Natural applications which handle the error situation inside an ON ERROR statement.

Old X Servers

The execution of the Natural installation on an older X server (for example, eXcursion) may cause problems with the user interface (character set etc.).