SYSEXT Utility - Natural Application Programming Interfaces

#### Search Results

Search

# SYSEXT Utility - Natural Application Programming Interfaces

The utility SYSEXT is used to locate and test Natural Application Programming Interfaces (APIs) contained in the current system library SYSEXT.

A Natural API is a Natural subprogram (cataloged object) that is used for accessing and possibly modifying data or performing services that are not accessible by Natural statements. Natural APIs refer to Natural, a subcomponent or a subproduct.

The SYSEXT Utility - Natural Application Programming Interfaces documentation covers the following topics:

- Introduction to SYSEXT

- Invoking and Terminating SYSEXT

- Using the SYSEXT Utility

- Interface Versions

- Reserved Keywords

- Using a Natural API

- List of Natural APIs

#### Related Topics:

- Application Programming Interfaces - Natural Security documentation

## Introduction to SYSEXT

For each Natural API, the utility SYSEXT provides a functional description, one example program, one category and API-specific keywords.

The following diagram is an overview of the Natural objects and major features SYSEXT provides:

### Objects Provided for Natural APIs

The types of Natural object typically provided for each Natural API are listed in the following section. Additional objects that might exist for a particular API are not covered.

All API-related objects are contained in the library SYSEXT on the system file FNAT.

In the following table, nnnn denotes the 4-digit number to identify the API as well as the corresponding example program and text object.

Object Name | Explanation
--- | ---
USRnnnnN | The API subprogram (cataloged object) that performs the designated function.
USRnnnnP | An example program (source object) that can be used to test the effect of the API. The example program invokes the corresponding subprogram USRnnnnN.
USRnnnnT | A text object listing a short and a long description, and information on usage, keywords, category and interface versions. You can display a text object by using the line command `T` as described in Line Commands.

For some APIs, copycodes are available which provide functions related to the API. The copycodes are named `USRnnnnX`, where `X` is an identification character (such as "Z", "Y" etc.).

## Invoking and Terminating SYSEXT

The SYSEXT utility is invoked by the system command `SYSEXT` which is described by the following syntax diagram:

`SYSEXT` |  | `ALL` |  |  | `FIRST` |  |  | `DESCENDING` |
`CURRENT` | `SECOND` | `ASCENDING`

The table below gives a description of the parameters:

Parameter | Description
--- | ---
ALL | List all APIs (default).
CURRENT | List only current APIs, that is all unique APIs and the current version of APIs with interface versions (with keyword +CURRENT-VERSION). See Interface Versions.
FIRST | Display first menu with product code items (default), see below for an example.
SECOND | Display second menu with category items, see below for an example.
ASCENDING | Display APIs in ascending order (default).
DESCENDING | Display APIs in descending order.

To invoke SYSEXT

- Enter the following system command:

      SYSEXT

  A menu similar to the example below appears with a list of all available Natural APIs displayed according to the first menu:

      10:57:31              ***** NATURAL SYSEXT UTILITY *****             2012-04-23
      User SAG                            - Menu -                   Library SYSEXT

      Cmd Interface Description                                                  Prod
      --- USR*____  _____________________________________________________________ *__
       _  USR0010N  Get SYSPROF information                                       NAT
       _  USR0011N  Get information on logical file                               NAT
       _  USR0020N  Read any error message from FNAT or FUSER                     NAT
       _  USR0040N  Get type of last error                                        NAT
       _  USR0050N  Get SYSPROD information                                       NAT
       _  USR0060N  Copy LFILE definition from FNAT to FUSER                      NAT
       _  USR0080N  Get or set type and name of editor contents                   NAT
       _  USR0120N  Read Natural short error message                              NAT
       _  USR0210N  Save, catalog or stow Natural object                          NAT
       _  USR0220N  Read Natural long error message                               NAT
       _  USR0221N  Read Natural long error message                               NAT
       _  USR0320N  Read user short error message from FNAT or FUSER              NAT
       _  USR0330N  Read Natural object directory                                 NAT

       Category .. ______________________________  Keyword .. ____________________

      Command ===>
      Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
            Help  Reset Exit  Desc  Curr  --    -     +     ++          >     Canc

You can invoke SYSEXT with any parameters, for example to display the second menu at startup:

    SYSEXT SECOND

This results in a menu similar to the one below:

     10:57:31              ***** NATURAL SYSEXT UTILITY *****             2012-04-23
     User SAG                            - Menu -                   Library SYSEXT

     Cmd Interface Description                        Category
     --- USR*____  __________________________________ *_____________________________
      _  USR0010N  Get SYSPROF information            SYSTEM COMMANDS
      _  USR0011N  Get information on logical file    SYSTEM FILES
      _  USR0020N  Read any error message from FNAT o ERROR MESSAGES
      _  USR0040N  Get type of last error             ERROR HANDLING
      _  USR0050N  Get SYSPROD information            SYSTEM COMMANDS
      _  USR0060N  Copy LFILE definition from FNAT to SYSTEM FILES
      _  USR0080N  Get or set type and name of editor EDITOR
      _  USR0120N  Read Natural short error message   ERROR MESSAGES
      _  USR0210N  Save, catalog or stow Natural obje NATURAL OBJECTS
      _  USR0220N  Read Natural long error message    ERROR MESSAGES
      _  USR0221N  Read Natural long error message    ERROR MESSAGES
      _  USR0320N  Read user short error message from ERROR MESSAGES
      _  USR0330N  Read Natural object directory      NATURAL OBJECTS

     Category .. ______________________________  Keyword .. ____________________
    Command ===>
    Enter-PF1---PF2---PF3---PF4---PF5---PF6---PF7---PF8---PF9---PF10--PF11--PF12---
          Help  Reset Exit  Desc  Curr  --    -     +     ++    <           Canc

As an alternative, you can invoke SYSEXT without parameters and then adjust the resulting menu, see PF Keys.

To terminate SYSEXT

- On the SYSEXT utility menu, press PF3 or PF12.

  Or:
  In the command line, enter a period (`.`) or enter `EXIT`.

## Using the SYSEXT Utility

This section covers the following topics:

- Elements of the SYSEXT Utility Menu

- SYSEXT PF Keys

- SYSEXT Line Commands

- SYSEXT Utility Commands

### Elements of the SYSEXT Utility Menu

The SYSEXT utility menu provides a list of APIs. For each API, there is an API name (Interface), a description (Description), and, depending on the menu chosen, a classification according to product code (Prod) or category (Category). Except for the leftmost column (Cmd), each column is headed by a selection field that allows you to enter selection criteria.

You can also use the search field Category at the bottom of the menu to search for available categories.

The input field Keywords can either be used as search field to retrieve available keywords, or as selection field to retrieve APIs.

You can also specify selection criteria on multiple selection fields. For example, you can select in one step APIs beginning with `USR4`, and with keyword `PF-KEY` and category `NATURAL ENVIRONMENT`.

A detailed description of all menu elements and their usage is given below:

Element | Explanation | Usage
--- | --- | ---
Cmd | The input field for a line command to be executed on a text object or an example program: see Line Commands. | Enter a line command, example:
`K` | List all keywords relevant to the specified API.
Interface | The name of the API subprogram. APIs with interface versions are displayed intensified. | Enter an asterisk (`*`) , or a prefix to be delimited by an asterisk, example:
`USR4*` | List all APIs with prefix `USR4`.
Description | A brief description of the purpose of the API. | Enter a string, example:
`default` | List all APIs with a description containing the string `default` or `Default`.
`*` | List all APIs with a description that contains the string `*`.
Prod | The product code of Natural (`NAT`) or a Natural add-on product affected by the API. Available product codes: `NAT` = Natural, , `NDV` = Natural Development Server, `PRD` = Predict, `RPC` = Natural RPC (Remote Procedure Call). Product codes other than `NAT` are displayed intensified. Only visible on the first menu. | Enter a name, or a prefix to be delimited by an asterisk (`*`), example:
`N*` | List all APIs with a product code beginning with `N`.
Category (selection field) | The category by which the API is classified according to its functional area or purpose. An API can only have one category. Only visible on the second menu and positioned above the list of APIs. | Enter a name, or a prefix to be delimited by an asterisk (`*`), example:
`NATURAL OBJECTS` | List all APIs with category `NATURAL OBJECTS`.
Category (search field ) | List all categories. Positioned below the list of APIs. | See Category Search.
Keyword | List all keywords or enter a keyword as selection criterion. | See Keyword Search or Keyword Selection.
Command | Command line to enter utility commands. | Enter a utility command. See Utility Commands.

Category Search

- Enter an asterisk (`*`), or a prefix in the category search field optionally delimited by an asterisk, for example:

      N*

  As a result, a menu similar to the example below appears:

               Search for Categories

        Mark Category
        ---- N*____________________________
          _  NATURAL ENVIRONMENT
          _  NATURAL OBJECTS

  To select a specific category as selection criterion, enter any character in the Mark column. As a result, a list of all APIs with this selection criterion is displayed.

Keyword Search

- Enter an asterisk (`*`), or a prefix delimited by an asterisk, for example:

      PF*

  A menu similar to the example below appears with a separate window displaying keywords starting with `PF`.

               Search for Keywords

        Mark Keyword
        ---- PF*_________________
          _  PF-KEY
          _  PF-KEY LINE

  To select a specific keyword as selection criterion, enter any character in the Mark column. As a result, a list of all APIs with this selection criterion is displayed.

Keyword Selection

- Enter a keyword in full, for example:

      PF-KEY

  As a result, a list of all APIs with keyword `PF-KEY` is displayed.

  Note:
  A non-trailing asterisk is interpreted literally, for example entering `*LANGUAGE` results in a list of APIs with keyword `*LANGUAGE`.

### SYSEXT PF Keys

You can use the following PF keys:

PF Key | Name | Function
--- | --- | ---
PF1 | Help | Display context-sensitive help. There is a specific help text for each input field. In other contexts, for example the command line, a general help text is displayed.
PF2 | Reset | Clear all selection fields and readjust the list of APIs.
PF3 | Exit | Exit the SYSEXT utility, or the current menu or window.
PF4 | Asc/Desc | Toggle between ascending (Asc) and descending (Desc) order of APIs.
PF5 | All/Curr | Toggle between menus displaying all APIs (All) and menus displaying only current APIs (Curr). See Interface Versions.
PF6 | -- | Scroll to the beginning of the list.
PF7 | - | Scroll one page up.
PF8 | + | Scroll one page down.
PF9 | ++ | Scroll to the end of the list.
PF10 | < | Shift to first menu.
PF11 | > | Shift to second menu.
PF12 | Canc | Exit the SYSEXT utility or the current menu or window.

### SYSEXT Line Commands

Line commands are used to perform object operations. You can enter a line command in the Cmd column next to the API required. For a list of valid line commands, enter a question mark (`?`) or press PF1.

The following line commands are available:

Line Command | Function
--- | ---
`K` | List keywords relevant to the specified API.
`T` | List text object USRnnnnT for a description of the corresponding API. The description comprises purpose, function and calling conventions of the API, relevant keywords and its category.
`L` | List example program USRnnnnP.
`E` | Edit example program USRnnnnP. Note The Natural program, data area, and map editor have been disabled in your environment by default. For more information, see NaturalONE as the Default Development Environment in the Editors documentation.
`R` | Run example program USRnnnnP.
`X` | Execute example program USRnnnnP.
`.` | Exit the SYSEXT utility.

### SYSEXT Utility Commands

This section covers the following utility commands to be entered in the command line:

- EXIT
  Exit the SYSEXT utility.

- REFRESH
  Update API information using data from the objects contained in the current library SYSEXT. The `REFRESH` command is only required if an API description or a keyword has been modified or if a text object has been added or removed.

  Upon successful completion, there is a confirmation that the text modules EXT-XML1 and EXT-XML2 have been generated in library SYSEXT.

  Note
  Do not modify the source objects EXT-XML1 and EXT-XML2. They are required for configuring the SYSEXT utility and intended for Software AG internal use only.

## Interface Versions

Interface versions can be seen as a collection of APIs with (almost) the same functionality but with differently extended parameter specifications. Thus, they cover a development cycle to be kept explicit for sake of compatibility (of later versions with earlier versions).

If an API has interface versions, they are displayed in the corresponding text object USRnnnnT. Interface versions are ordered within a list according to the version they belong to. The rightmost element belongs to the current version. This status is expressed by the reserved keyword `+CURRENT-VERSION`. All other elements belong to a previous version and are marked with the reserved keyword `+PREVIOUS-VERSION`. APIs without interface versions are called unique.

APIs with interface versions are displayed intensified on the menu.

The list of all current APIs (see PF5) consists of all unique APIs and the current version of APIs with interface versions (with keyword `+CURRENT-VERSION`).

## Reserved Keywords

Reserved keywords refer to meta information on APIs, for example the Natural version in which an API has been added. Reserved keywords always start with a plus sign (`+`). See the table below for a description:

Reserved Keyword | Description
--- | ---
+CURRENT-VERSION | The current version of an API with interface versions (see Interface Versions).
+PREVIOUS-VERSION | A previous version of an API with interface versions (see Interface Versions).
+NEW-PROD-version | An API that has been added to a specific product in a specific version. For example, `+NEW-NAT-6.3.11` refers to an API that has been added to the product Natural in version `6.3.11`.
+MOD-PROD-version | An API that belongs to a specific product and has been modified in a specific version. For example, `+MOD-NAT-6.3.12` refers to an API that belongs to product Natural and has been modified in version `6.3.12`.

## Using a Natural API

If you want to use a Natural API contained in the system library SYSEXT, perform one of the following steps:

- Define the system library SYSEXT in the system file FNAT as a steplib library for the user library that contains the Natural objects that use this API. Thus, no API-specific actions are required when upgrading your Natural version.

- Copy the required API to the system library SYSTEM in the system file FNAT. Thus, you only need to check a single library for APIs when upgrading your Natural version.

- Copy the required API to the system library SYSTEM in the system file FUSER (not recommended).

- Copy the required API to the user library (or one of its steplibs) in the system file FUSER which contains the Natural objects that use this API (not recommended).

An API can only be used in the Natural version with which it is delivered. It is strongly recommended to store the APIs only in the FNAT system file. This will ensure that the right version is always executed.

To make use of an interface

1. In the calling program, use the `DEFINE DATA` statement to specify the parameters listed in the text object `USRnnnnT` of that API. In the example program `USRnnnnP`, the parameters are defined within the `DEFINE DATA LOCAL` statement. Alternatively, you can specify the parameters outside the calling program in a separate LDA (Local Data Area) or PDA (Parameter Data Area), with a `DEFINE DATA LOCAL USING` statement referencing that data area.

2. Enter the following statement:

       CALLNAT 'USRnnnnN' parameters

   For further information, see the CALLNAT statement in the Statements documentation.

Note
Non-standard usage is always documented in the respective text object `USRnnnnT`.

If you want to use a Natural copycode contained in the system library SYSEXT, perform the following step:

Copy the required copycode to the user library in the system file FUSER which contains the Natural objects that use this copycode.

To make use of a copycode

1. In the calling program, use the `INCLUDE` statement to specify the parameters listed in the text object `USRnnnnT` of that API or in the copycode itself. In the example program `USRnnnnP`, the parameters are defined within the `DEFINE DATA LOCAL` statement. Alternatively, you can specify the parameters outside the calling program in a separate LDA (Local Data Area) or PDA (Parameter Data Area), with a `DEFINE DATA LOCAL USING` statement referencing that data area.

2. Some copycodes require additional data definitions. These are described in the text object `USRnnnnT` of the API and in the copycode itself.

3. Enter the following statement:

       INCLUDE USRnnnnX 'parameter'...

   For further information, see the INCLUDE statement in the Statements documentation.

Note
Non-standard usage is always documented in the respective text object `USRnnnnT`.

## List of Natural APIs

The following list of Natural Application Programming Interfaces (APIs) available with the SYSEXT utility is for general information only. For the current status of APIs, execute the system command SYSEXT.

For detailed information on the use of APIs that apply to Natural Remote Procedure Call (RPC), refer to the section Application Programming Interfaces for Use with Natural RPC in the Natural Remote Procedure Call documentation.

Interface | Description | Product | Category | Keyword
--- | --- | --- | --- | ---
USR0010N | Get SYSPROF information | NAT | SYSTEM COMMANDS | DBID, ENVIRONMENT, FILE, FNAT, FNR, FUSER, SYSPROF
USR0011N | Get information on logical file | NAT | SYSTEM FILES | DBID, FNAT, FNR, FUSER, LFILE, SYSPROF
USR0020N | Read any error message from FNAT or FUSER | NAT | ERROR MESSAGES | *ERROR-NR, *LANGUAGE, ERROR, FNAT, FUSER, SYSERR
USR0040N | Get type of last error | NAT | ERROR HANDLING | *ERROR-NR, ERROR
USR0050N | Get SYSPROD information | NAT | SYSTEM COMMANDS | ENVIRONMENT, SYSPROD
USR0060N | Copy LFILE definition from FNAT to FUSER | NAT | SYSTEM FILES | FNAT, FNR, FUSER, LFILE
USR0080N | Get or set type and name of editor contents | NAT | EDITOR | EDITOR, NAME, OBJECT NAME, OBJECT TYPE, TYPE
USR0120N | Read Natural short error message | NAT | ERROR MESSAGES | *ERROR-NR, *LANGUAGE, ERROR, FNAT, SYSERR
USR0210N | Save, catalog or stow Natural object | NAT | NATURAL OBJECTS | CAT, EDITOR, ESIZE, OBJECT TYPE, SAVE, STOW, TYPE
USR0220N | Read Natural long error message | NAT | ERROR MESSAGES | *ERROR-NR, ERROR, FNAT, SYSERR
USR0221N | Read Natural long error message | NAT | ERROR MESSAGES | *ERROR-NR, *LANGUAGE, ERROR, FNAT, SYSERR
USR0320N | Read user short error message from FNAT or FUSER | NAT | ERROR MESSAGES | *ERROR-NR, *LANGUAGE, ERROR, FNAT, FUSER, SYSERR
USR0330N | Read Natural object directory | NAT | NATURAL OBJECTS | DIRECTORY
USR0360N | Modify user short error message on FNAT or FUSER | NAT | ERROR MESSAGES | *ERROR-NR, ERROR, FNAT, FUSER, SYSERR
USR0420N | Read user long error message from FUSER | NAT | ERROR MESSAGES | *ERROR-NR, ERROR, FUSER, SYSERR
USR0421N | Maintain user long error message on FUSER | NAT | ERROR MESSAGES | ERROR, FUSER, SYSERR
USR0500N | Define title of window | NAT | WINDOW HANDLING | TITLE, WINDOW
USR0600N | Get program level information | NAT | RUNTIME | *LEVEL
USR0610N | Get error information on last database call | NAT | ERROR HANDLING | *ERROR, DATABASE, ERROR
USR0620N | Convert string into ASCII or EBCDIC code | NAT | DATA HANDLING | ASCII, EBCDIC, LOWER CASE, TRANSLATE, UPPER CASE
USR0622N | Reset error counter in ON ERROR statement block | NAT | ERROR HANDLING | *ERROR-NR, ERROR, COUNTER
USR1002N | Save or restore Natural environment parameters | NAT | NATURAL ENVIRONMENT | ENVIRONMENT, PARAMETER
USR1005N | Get information on certain Natural session parameters | NAT | SESSION PARAMETERS | SESSION PARAMETER, PARAMETER, GLOBALS, NATPARM, AUTO, CC, CF, CPCVERR, CPU TIME LIMIT, DAY DIFFERENTIAL, DBUPD, DC, DD, DELETE, DELETE PROGRAMS, DFOUT, DFSTACK, DFTITLE, DO, DTFORM, DYNPARM, EJ, ERROR-TA, FCDP, FS, IA, ID, IM, LANGUAGE CODE, LE, LOWER-UPPER CASE, LS, LT, MADIO, MAXCL, MAXIMUM CPU TIME, MESSAGE LINE, ML, MT, NATURAL COMMANDS, NC, OPF, PF-KEY LINE, PM, PS, RECAT, REINP, RELEASE ISN, RI, SA, SF, SL, SM, STATUS LINE, STEPLIB, STRUCTURED MODE, TD, THSEPCH, TIME DIFFERENTIAL, TIMEZONE, TQMARK, TS, UDB, UPDATE COMMAND, WH, ZD, ZP
USR1009N | Convert store clock with sliding window into microseconds | NAT | DATE / TIME SUPPORT | *TIMESTMP, CONVERSION, DATE, MICROSECONDS, SLIDING WINDOW, STORE CLOCK, TIME
USR1011N | Check name for wildcard or asterisk notation | NAT | DATA HANDLING | ASTERISK, MASK, NAME, WILDCARD
USR1012N | Get dynamic error message parts from the last error | NAT | ERROR MESSAGES | *ERROR-NR, DYNAMIC, ERROR, SYSERR
USR1013N | Display current character set | NAT | CODE PAGE SUPPORT | EBCDIC, ASCII
USR1016N | Get error level for error in nested copycodes | NAT | RUNTIME | *ERROR-NR, *ERROR-TA, *LEVEL, COPYCODE, INCLUDE
USR1020N | Add user short error message to FUSER | NAT | ERROR MESSAGES | *ERROR-NR, ERROR, FUSER, SYSERR
USR1021N | Check name for wildcard or asterisk notation | NAT | DATA HANDLING | ASTERISK, MASK, NAME, WILDCARD
USR1022N | Get type of database | NAT | DATABASE | DATABASE, DBID, LFILE, TYPE
USR1023N | Convert time-related variables | NAT | DATE / TIME SUPPORT | *DATX, *TIMESTMP, *TIMX, CONVERSION, COPYCODE-INTERFACE, DATE, MICROSECONDS, STORE CLOCK, TIME
USR1025N | Maintain definition of multiple steplibs | NAT | STEPLIBS | *STEPLIB, LIBRARY, STEPLIB
USR1026N | Get information on RETURN data | NAT | RUNTIME | RETURN, SETUP
USR1027N | Search user short error message on FNAT or FUSER | NAT | ERROR MESSAGES | *LANGUAGE, ERROR, FNAT, FUSER, SYSERR
USR1028N | Convert bits and bytes | NAT | DATA HANDLING | BIT, BYTE
USR1029N | Get type of Natural object | NAT | NATURAL OBJECTS | OBJECT TYPE, TYPE
USR1030N | Convert language code | NAT | DATA HANDLING | *LANGUAGE
USR1031N | Check Natural object name | NAT | DATA HANDLING | NAME, OBJECT NAME
USR1032N | List cataloged Natural objects with type | NAT | NATURAL OBJECTS | NAME, OBJECT NAME, OBJECT TYPE, TYPE
USR1033N | Find DBID and FNR of a cataloged DDM | NAT | DDMS | DBID, DDM, FNR
USR1034N | Get NTTF file table with translated DBID and FNR | NAT | SYSTEM FILES | DBID, FNR, NTTF, TF, TRANSLATE
USR1035N | Maintain objects using the Software AG editor engine | NAT | EDITOR | BUFFER, EDITOR, SAG EDITOR, SOURCE
USR1036N | Maintain user profile of the Software AG editor | NAT | EDITOR | BUFFER, EDITOR, PROFILE, SAG EDITOR, SOURCE
USR1038N | Get platform-specific information | NAT | NATURAL ENVIRONMENT | ASCII, BYTE SWAPPING, CHECK, EBCDIC, ENVIRONMENT, GUI, PLATFORM
USR1039N | Modify the clipboard | NAT | DATA HANDLING | CLIPBOARD
USR1040N | Get or set profile parameter UDB | NAT | PROFILE PARAMETERS | DBID, DDM, GET, SET, UDB
USR1041N | Install error transaction program (*ERROR-TA) | NAT | ERROR HANDLING | *ERROR-NR, *ERROR-TA, ERROR
USR1042N | Get or set value of UPDATE command | NAT | DATABASE | DBUPD, GET, SET, UPDATE
USR1043N | Perform Adabas direct calls | NAT | DATABASE | ADABAS, DATABASE, DDM, FILE
USR1048N | Modify PF-key labels | NAT | NATURAL ENVIRONMENT | PF-KEY
USR1050N | Get or set work file name | NAT | WORK FILE / PRINTER | GET, SET, WORK FILE
USR1052N | Send a command to the operating system | NAT | RUNTIME | COMMAND, EXTERNAL
USR1053N | Get the value of an environment variable | NAT | NATURAL ENVIRONMENT | ENVIRONMENT, GET, VARIABLE
USR1054N | List libraries | NAT | NATURAL OBJECTS | FNAT, FUSER, LIBRARY, LIST, SYSTEM FILE
USR1055N | List objects in a library | NAT | NATURAL OBJECTS | FNAT, FSEC ENABLED, FUSER, LIST, MODULE, SOURCE, SYSTEM FILE
USR1056N | List DDMs on the FDIC file or in a library | NAT | DDMS | DDM, FDIC, FNAT, FSEC ENABLED, FUSER, LIST, MODULE, SOURCE, SYSTEM FILE
USR1057N | Read a Natural source code into an array | NAT | NATURAL OBJECTS | FNAT, FSEC ENABLED, FUSER, READ, SOURCE, SYSTEM FILE
USR1058N | Read a DDM source code into an array | NAT | DDMS | DDM, FDIC, FNAT, FSEC ENABLED, FUSER, READ, SOURCE, SYSTEM FILE
USR1059N | Initialize the Natural Reporter interface | NAT | REPORTER | INITIALIZE, REPORTER
USR1060N | Terminate the Natural Reporter interface | NAT | REPORTER | REPORTER, TERM, TERMINATE
USR1061N | Open an existing report layout | NAT | REPORTER | OPEN, REPORTER
USR1062N | Close a report | NAT | REPORTER | CLOSE, REPORTER
USR1063N | Select printer to print a report | NAT | REPORTER | PREVIEW, PRINT, PRINTER, REPORTER, SELECT
USR1064N | Print a report | NAT | REPORTER | PRINT, REPORTER
USR1065N | Preview a report | NAT | REPORTER | PREVIEW, REPORTER
USR1066N | Enable or disable the Natural message 'Executing ...' | NAT | ERROR HANDLING | EXECUTING, MESSAGE
USR1067N | Check Natural library name | NAT | DATA HANDLING | CHECK, LIBRARY, NAME
USR1068N | Maintain the number of DBMS calls, MAXCL and MADIO parameters | NAT | DATABASE | COUNTER, DATABASE, GET, MADIO, MAXCL, SET
USR1069N | Get or set a printer configuration | NAT | WORK FILE / PRINTER | GET, PRINTER, SET
USR1071N | Set credentials for RPC server | RPC | RPC - SECURITY | PASSWORD, RPC, SECURITY, TICKET, USER ID
USR1072N | Get command ID of a retain set | NAT | DATABASE | CID, COMMAND ID, RETAIN SET
USR2001N | Get information on last error | NAT | ERROR HANDLING | ERROR
USR2004N | Get information on logical file | NAT | SYSTEM FILES | DBID, FNAT, FNR, FUSER, LFILE, SYSPROF
USR2005N | Read internal file translation table | NAT | PROFILE PARAMETERS | NTTF
USR2006N | Get information from error message collector | NAT | ERROR MESSAGES | ERROR, *ERROR-NR
USR2007N | Get or set data for RPC default server | RPC | RPC | RPC, SERVER
USR2009N | Get dynamic error message parts from the last error | NAT | ERROR MESSAGES | *ERROR-NR, DYNAMIC, ERROR, SYSERR
USR2010N | Get error information on last database call | NAT | ERROR HANDLING | *ERROR, DATABASE, ERROR
USR2011N | Get or set work file name | NAT | WORK FILE / PRINTER | GET, SET, WORK FILE
USR2012N | Get system variable *NET-USER | NAT | NATURAL ENVIRONMENT | GET, *NET-USER
USR2013N | Get SYSPROF information | NAT | SYSTEM COMMANDS | DBID, ENVIRONMENT, FILE, FNAT, FNR, FUSER, SYSPROF
USR2014N | Maintain objects using the Software AG editor engine | NAT | EDITOR | BUFFER, EDITOR, SAG EDITOR, SOURCE
USR2018N | Read Natural object directory | NAT | NATURAL OBJECTS | DIRECTORY
USR2019N | Read or save Natural source code from/to the source area | NAT | EDITOR | EDITOR, FNAT, FSEC ENABLED, FUSER, READ, SAVE, SYSTEM FILE
USR2023N | Get type of database | NAT | DATABASE | DATABASE, DBID, LFILE, TYPE
USR2026N | Get TECH information | NAT | SYSTEM COMMANDS | ENVIRONMENT, ERROR, STEPLIB, TECH
USR2027N | Define wait interval for current session | NAT | RUNTIME | WAIT
USR2030N | Get dynamic error message parts from the last error | NAT | ERROR MESSAGES | *ERROR-NR, DYNAMIC, ERROR, SYSERR
USR2031N | Get SYSPROD information | NAT | SYSTEM COMMANDS | ENVIRONMENT, SYSPROD
USR2032N | Support commit for CLOSE CONVERSATION | RPC | RPC | CLIENT, CLOSE, CONVERSATION, RPC
USR2035N | Get or set parameters for SSL support | RPC | RPC | CLIENT, ENTIREX, RPC, SERVER, SSL
USR2036N | Convert binary variable (B8) into numeric variable (P20) | NAT | DATE / TIME SUPPORT | B8, BINARY, CONVERSION, COPYCODE-INTERFACE, NANOSECONDS, STORE CLOCK, TIME
USR2071N | Support EntireX Security on client side | RPC | RPC - SECURITY | CLIENT, ENTIREX, PASSWORD, PASSWORD PHRASE, RPC, SECURITY
USR2072N | Support EntireX Security on server side | RPC | RPC - SECURITY | ENTIREX, PASSWORD, PASSWORD PHRASE, RPC, SECURITY, SERVER
USR2073N | Ping or terminate a Natural RPC server | RPC | RPC | PING, RPC, SERVER, TERMINATE
USR2074N | Set new password for Natural Security user in RPC context | RPC | RPC - SECURITY | NEWPASSW, RPC, SERVER
USR2075N | Terminate EntireX Broker service | RPC | RPC | BROKER SERVICE, ENTIREX, RPC, SERVER, TERMINATE
USR2076N | Get or set RPC TIMEOUT value | RPC | RPC | GET, RPC, SET, TIMEOUT
USR3004N | Maintain internal Fast Locate Table | NAT | SERVER | BUFFER POOL, CLEAR, CLIENT, FAST, LOCATE, SERVER, TABLE
USR3013N | Get SYSPROF information | NAT | SYSTEM COMMANDS | DBID, ENVIRONMENT, FILE, FNAT, FNR, FUSER, SYSPROF
USR3025N | Maintain definition of multiple steplibs | NAT | STEPLIBS | *STEPLIB, LIBRARY, STEPLIB
USR3320N | Find user short error message (including steplibs search) | NAT | ERROR MESSAGES | *ERROR-NR, *LANGUAGE, ERROR, FNAT, FUSER, STEPLIB, SYSERR
USR4003N | Get Natural stack information | NAT | RUNTIME | STACK
USR4004N | Get dynamic Natural profile parameters at session start | NAT | PROFILE PARAMETERS | DYNAMIC, PARAMETER, PROFILE
USR4005N | Read all current PF-key settings | NAT | NATURAL ENVIRONMENT | KEY SETTING, PF-KEY
USR4007N | Get or set profile parameter SYNERR | NAT | PROFILE PARAMETERS | GET, SET, SYNERR
USR4008N | Set library for RPC execution | RPC | RPC | LOGON, RPC, SERVER
USR4009N | Set parameters for EntireX | RPC | RPC | CLIENT, RPC, SERVER
USR4010N | Get runtime settings of RPC server | RPC | RPC | RPC, RUNTIME, SERVER, SETTING
USR4011N | Create a hash value using SHA-1 | NAT | DATA HANDLING | HASH, METHOD, SECURITY, SHA-1
USR4012N | Set application error on RPC server | RPC | RPC | ENTIREX, RPC, SERVER
USR4025N | Maintain definition of multiple steplibs in Natural Security | NAT | STEPLIBS | *STEPLIB, LIBRARY, STEPLIB
USR4201N | Maintain data area sources | NAT | EDITOR | DATA AREA, GDA, FSEC ENABLED, LDA, PDA, SOURCE, SOURCE AREA
USR4206N | List objects in a library | NAT | NATURAL OBJECTS | FNAT, FSEC ENABLED, FUSER, LIST, MODULE, SOURCE, SYSTEM FILE
USR4208N | Read or write a Natural resource | NAT | RESOURCES | FSEC ENABLED, READ, RESOURCE, WRITE
USR4209N | Get short name of subroutine | NAT | NATURAL OBJECTS | LONG NAME, NAME, SUBROUTINE
USR4210N | Perform base64 conversion of alphanumeric and binary bytes | NAT | DATA HANDLING | ALPHA, BASE64, BINARY, CONVERSION, NETWORK, TCP/IP
USR4212N | Analyze data area | NAT | EDITOR | DATA AREA, FSEC ENABLED
USR4215N | Get list of resources in a Natural library | NAT | RESOURCES | FSEC ENABLED, LIST, RESOURCE
USR4217N | Send data to Optimize for Infrastructure | NAT | OPTIMIZE FOR INFRASTRUCTURE | DATA COLLECTOR, OPTIMIZE
USR4218N | Get information on Natural Development Server | NDV | SERVER | NDV, SERVER
USR4220N | Perform base64 conversion of alphanumeric and binary bytes | NAT | DATA HANDLING | ALPHA, BASE64, BINARY, CONVERSION, NETWORK, TCP/IP
USR4371N | Set credentials for RPC server (define user ID and ETID) | RPC | RPC - SECURITY | ETID, PASSWORD, RPC, SECURITY, TICKET, USER ID
USR6001N | Call external XSLT processor | NAT | RUNTIME | XML, XSLT
USR6002N | Get the current values of internal counters | NAT | RUNTIME | COUNTER, GET, LT, MADIO, MAINPR, MAXCL, RUNTIME
USR6006N | Get path to system file | NAT | SYSTEM FILES | DBID, FNAT, FNR, FUSER, PATH, SYSTEM FILE
USR6007N | Get information on last error in Tamino database | NAT | ERROR HANDLING | ERROR, TAMINO
USR6008N | Get data of object in source area | NAT | EDITOR | LIBRARY, MODE, NAME, SOURCE AREA, TYPE
USR6009N | Maintain Natural buffer pool | NAT | BUFFER POOL | BUFFER POOL
USR6202N | Get or set value of an environment variable | NAT | NATURAL ENVIRONMENT | ENVIRONMENT, GET, SET, VARIABLE
USR6203N | Maintain a resource in a Natural library | NAT | RESOURCES | CREATE, GET, PATH, RESOURCE
USR6204N | Set profile parameter PROGRAM | NAT | PROFILE PARAMETERS | BACKEND, PARAMETER, PROFILE, PROGRAM, SET
USR6303N | Get Natural stack information | NAT | RUNTIME | STACK
USR6304N | Get or set reliable state for RPC execution | RPC | RPC - RELIABLE RPC | CLIENT, RELIABLE, RPC, UOW
USR6305N | Commit or rollback reliable RPC messages | RPC | RPC - RELIABLE RPC | CLIENT, COMMIT, RELIABLE, ROLLBACK, RPC, UOW
USR6306N | Get status of UOWs of current EntireX Broker user | RPC | RPC - RELIABLE RPC | CLIENT, RELIABLE, RPC, UOW
USR6307N | Get or set Request Document timeout value (RQTOUT) | NAT | PROFILE PARAMETERS | GET, SET, REQUEST DOCUMENT, TIMEOUT
USR6308N | Retrieve system files defined in Natconf.cfg | NAT | NATURAL ENVIRONMENT | NATCONF, PATH, SYSTEM FILE
USR8208N | Terminate EntireX Broker service | RPC | RPC | BROKER SERVICE, ENTIREX, RPC, SERVER, SHUTDOWN-SERVICE, TERMINATE
USR8210N | Maintain Natural Profiler monitoring | NAT | PROFILER | PROFILER, TRACE
USR8213N | Shutdown server with sequence number on EntireX Broker | RPC | RPC | BROKER SERVER, ENTIREX, RPC, SEQUENCE NUMBER, SERVER, SHUTDOWN, SHUTDOWN-SERVER, TERMINATE
USR8215N | Get the Natural and NSC version | NAT | NATURAL ENVIRONMENT | NATVERS, NSC, SECURITY, VERSION
USR8216N | Maintain the RPC service directory | RPC | RPC | MAINTENANCE, NATCLTGS, RPC, SERVICE DIRECTORY
USR8217N | Search execution library for a Natural object | NAT | NATURAL ENVIRONMENT | EXECUTING, LIBRARY, STEPLIB
USR8219N | Perform Adabas direct calls using ACBX protocol | NAT | DATABASE | ACBX, ADABAS, DATABASE, DDM, FILE
USR8220N | Trigger termination of current RPC server | RPC | RPC | RPC, SERVER, TERMINATE
USR8221N | Generate codepage translation table | NAT | DATA HANDLING | ASCII, CODEPAGE, EBCDIC, TRANSLATE, TRANSLATION TABLE
USR8222N | Get Natural stack information | NAT | RUNTIME | STACK
USR8224N | Get Adabas file name | NAT | DATABASE | DATABASE, FILE, NAME
USR8225N | Maintain message ID and correlation ID of EntireX | RPC | RPC | CLIENT, CORRELATION ID, ENTIREX, MESSAGE ID, RPC, SERVER
USR8301N | Get Natural fix information | NAT | SYSTEM COMMANDS | ENVIRONMENT, FIX, SYSPROD
USR8302N | Define wait interval for current session | NAT | RUNTIME | WAIT
USR8401N | Read/Write dynamic error message parts | NAT | ERROR MESSAGES | *ERROR-NR, DYNAMIC, ERROR, SYSERR
USR9171N | Set user ID and password phrase for RPC server | RPC | RPC - SECURITY | PASSWORD, PASSWORD PHRASE, RPC, SECURITY, TICKET, USER ID
USR9175N | Ping, terminate or trace a Natural RPC server (pwd phrase) | RPC | RPC | PASSWORD PHRASE, PING, PWD PHRASE, RPC, SERVER, TERMINATE, TRACE, TRACEINFO
USR9176N | Terminate an EntireX Broker service (password phrase) | RPC | RPC | BROKER SERVICE, ENTIREX, PASSWORD PHRASE, RPC, SERVER, SHUTDOWN-SERVICE, TERMINATE
USR9177N | Shutdown server (seq. number) on EntireX Broker (pwd phrase) | RPC | RPC | BROKER SERVER, ENTIREX, PASSWORD PHRASE, RPC, SEQUENCE NUMBER, SERVER, SHUTDOWN, SHUTDOWN-SERVER, TERMINATE
USR9178N | Maintain local store clock value | NAT | DATE / TIME SUPPORT | *TIMESTMP, *TIMX, CONVERSION, COPYCODE-INTERFACE, DATE, LOCAL TIME, MICROSECONDS, SLIDING WINDOW, STORE CLOCK, TIME, TIME DIFFERENTIAL, TIMEZONE
USR9201N | Convert time-related variables | NAT | DATE / TIME SUPPORT | *DATX, *TIMESTMP, *TIMESTMPX, *TIMX, CONVERSION, COPYCODE-INTERFACE, DATE, DIFFERENCE, EXTENDED STORE CLOCK, MICROSECONDS, SLIDING WINDOW, SMART STORE CLOCK, STORE CLOCK, TIME
USR9205N | Create a hash value using SHA-256 or others | NAT | DATA HANDLING | HASH, METHOD, SECURITY, SHA-256

### On this page

- Introduction to SYSEXT
- Invoking and Terminating SYSEXT
- Using the SYSEXT Utility
- Interface Versions
- Reserved Keywords
- Using a Natural API
- List of Natural APIs