New and Changed Features of Base Natural


Operations and Performance

Natural Roll Server and Authorized Services Manager

The Natural Roll Server and Authorized Services Manager have been improved with the addition of further trace capabilities. Both modules are provided as new versions in the NATvrs.LOAD data set: NATRSM93 and NATASM93.

For compatibility purposes, the NATRSM92 and NATASM92 are delivered with this release. However, these two modules will be removed in the next version of Natural, scheduled for release in October 2027.

Syntax, Compiler, and Runtime Enhancements

Enhanced definitions of hexadecimal and Unicode hexadecimal constants

The definitions of hexadecimal and Unicode hexadecimal constants have been enhanced to allow spaces and commas to be used to separate the bytes (double bytes in the case of Unicode) from each other. This provides better flexibility in structuring the hexadecimal values and improves readability.

Examples:

UH’C1C2,C3C4,C5C6’ or UH’F1F2F3F4 F5F6F7F8’

H’C1C2,C3C4,C5C6’ or H’F1F2 F3F4F5 F6F7’

For more information, see Programming Guide > Field Definitions > Hexadecimal Constants.

Enhanced COMPRESS statement to allow spacer element

The COMPRESS statement has been enhanced to support the use of the spacer element “nX”. This allows you to insert up to 40 blanks between two fields.

Example:

COMPRESS 'Error' 1X #ERR 1X 'came from DB file (' #DBID '/' #FNR ')' INTO #T LEAVING NO SPACE

 

Result in #T:

'Error 1234 came from DB file (10/32)'

For more information, see Statements > COMPRESS.

Enhanced MOVE EDITED statement

The MOVE EDITED statement has been enhanced to allow the use of the wildcard character ? in the input edit mask for operand2. This allows you to ignore the additional characters in the input contents of operand1.

For more information, see Statements > MOVE > Syntax 4 - MOVE EDITED (Edit Mask Specified with operand2).

Enhanced PARSE statement

The PARSE statement has been enhanced to support cross-nesting between PARSE XML and PARSE JSON statements. A PARSE XML statement can now include nested PARSE JSON statements, and conversely, a PARSE JSON statement can include nested PARSE XML statements, allowing seamless parsing of hybrid documents that include both XML and JSON structures.

Note
While cross-nesting is now supported, self-nesting of the same statement type remains not allowed. That means, a PARSE XML statement cannot contain another PARSE XML statement and a PARSE JSON statement cannot contain another PARSE JSON statement. For more information, see Programming Guide > Statements for Internet Access and Parsing > PARSE XML and PARSE JSON.

New System Variable *CPU-TIMEX

A new system variable *CPU-TIMEX has been introduced to return CPU time currently used by the Natural process in units of 1 microsecond. For more information about the structure and usage of the new variable, see Application-Related System Variables > *CPU-TIMEX.

System Commands

Note
The sections indicated for more information are contained in the System Commands documentation, unless otherwise noted.

LIST DIRECTORY Enhancement

The LIST system command is enhanced to show additional information about the GDA signature in the LIST DIRECTORY command. The use of the compilation option GDASC=ON improves the deployment of the current GDA with all referencing Natural objects so that the GDA time stamp no longer needs to be used. See also System Commands > COMPOPT > General Compilation Options > GDASC - GDA Signature Check where the different settings of GDA signature in the LIST DIRECTORY command are presented.

Utilities

Note
The sections indicated for more information are contained in the Utilities documentation, unless otherwise noted.

SYSEXV Utility

The SYSEXV utility now provides all example programs demonstrating the use of Natural features introduced in the current or any previous version of Natural. The examples can now be grouped by Category or Version, or listed alphabetically by Member names. You can also specify a search string in the Search field so that only the examples containing the string in the member’s name, version, category or description are displayed.

New example programs have been added for the following features:

  • Enhanced COMPRESS with spacer element
  • System variable *CPU-TIMEX
  • Enhanced hexadecimal constants
  • Enhanced MOVE EDITED with wildcard character
  • System variable *UUID
  • Extended store clock system variable *TIMESTMPX
  • System variable *EDITOR

For more information, see Utilities > SYSEXV Utility.

Profile Parameters

You can find detailed descriptions of all Natural profile parameters in the Parameter Reference documentation, unless otherwise noted.

New Profile Parameters

Parameter Corresponding Macro Task Description
EDBP, keyword subparameter RTOUT NTEDBP Buffer Pool Recovery Files Timeout Value

Recovery files will be automatically deleted if they remain untouched for longer than the period (hours) specified by the RTOUT subparameter of the EDBP profile parameter.

The default value is 0. When the RTOUT is set to 0, recovery files are not deleted due to the timeout.

For more information, see Parameter Reference > EDBP - Software AG Editor Buffer Pool Definitions > Keyword Subparameters > RTOUT.

Changed/Enhanced Profile Parameters

Parameter Corresponding Macro Task Change/Enhancement
RPC, keyword subparameter TRACE NTRPC Defines trace level for Natural RPC Servers

The trace levels (1,M) and (2,M) have been introduced to enable tracing of requests with millisecond precision.

For more information, see Parameter Reference > RPC - Remote-Procedure-Call Settings > Keyword Subparameters for Server Only > TRACE.

ZIIP, keyword subparameter PWCSIZE NTZIIP Size of the Cache for Print and Work Files The ZIIP/PCWSIZE cache feature has been enhanced to automatically flush cache buffers at 60-second interval.

For more information, see PWCSIZE - Improved Flush Behaviour.

Application Programming Interfaces

The following Natural application programming interfaces (APIs) are new in the SYSEXT system library or have changed:

API Task Description
USR6002N Get the current values of internal counters

The MADIO-CUR parameter provides the current Adabas call counter and is defined using the (I4) format. It now supports the (I4) value range, instead of (I2) value range.

USR8207N Maintain the number of DBMS calls, MAXCL and MADIO parameters

The DBMS-CALLS parameter provides the current Adabas call counter and is defined using the (I4) format. It now supports the (I4) value range, instead of (I2) value range.

USR9178N Maintain local store clock value

The new copycode USR9178W returns a date-time value with microseconds in the following format:

yyyy-mm-dd hh:ii:ss.ffffff

where ffffff is the time fraction in microseconds.

The copycode is used with the INCLUDE statement:

INCLUDE USR9178W 'DATE-TIME'

whereby DATE-TIME is defined as (A26). The result looks like:

	2026-03-09 09:11:51.268138

The example program USR9178P has been extended to show the usage of the new copycode.

USR9212N Get information about Adabas field or descriptor

The interface provides information about an Adabas field or descriptor. It checks whether the given field of a specific type is in a file. It returns the field entry including the field length, format, and options specified for the field.