Natural Development Server Version 8.2.5 for BS2000/OSD
 —  Natural Development Server for BS2000/OSD  —

SPoD-Specific Limitations and Considerations

When you are working with Natural Single Point of Development, you will encounter a few limitations which are due to the different capabilities of the graphical user interface available on the local site and the character-based user interface that exists on the remote site. In addition, this document includes hints which are important for the efficient use of the remote development facilities.

This document covers the following topics:

Editor Features With SPoD

You can use Natural's Single Point of Development with different versions of Natural on a variety of platforms. Depending on the server environment you are using together with Natural for Windows (client), the editors offer different features. For further information, refer to the section Editor Features With SPoD in the Natural for Windows Editors documentation.


The following topics are covered:

Back-End Program

If a back-end program has been specified (for example, by means of the Natural profile parameter PROGRAM), it is not invoked if the Natural session is executing on a Natural Development Server.



The Natural Development Server for BS2000/OSD does not support the REQUEST DOCUMENT statement.

System Commands

The following topics are covered:

System Command SYSDDM

The system command SYSDDM is not available, since the DDMs are listed in the tree view under the node DDM, and because all functions of the utility SYSDDM are available by using Natural Studio's context menu or menu bar.

System Commands Unavailable for Remote Development

The following system commands are not available, since their use would make no sense with a graphical user interface:

System Commands Entered Directly on the Development Server

All system commands which are not entered in the user interface of Natural Studio are executed directly by the Development Server without control of Natural Studio. As a result, the character-based representation of the corresponding command appears in the terminal emulation window. This is the case when the STACK TOP COMMAND mechanism is used or when a system command is directly entered inside the terminal emulation window.

During the mapping phase any STACK commands entered in the text box Session Parameters are processed within Natural Studio and the corresponding Natural Studio windows are used.

It is even possible to invoke the mainframe editors. However, this may lead to inconsistencies (see also Object Locking in the Natural for Windows documentation). Therefore, you are strongly recommended to use only Natural Studio's GUI editors.

The commands HELLO and MAINMENU do not cause a screen output on the development server side, since this would not make any sense in the SPoD environment. Instead of the menu-driven user interface, the dialogs provided in Natural Studio are used.

Profile Parameters

CP Parameter

The Natural profile parameter setting CP=AUTO is not supported in a SPoD environment. (AUTO means that the code page name from the user terminal is taken, if available.)

Terminal Commands

Using terminal commands in a SPoD environment is only possible within the terminal emulation window. Entering terminal commands in the command line of Natural Studio is not possible.

Moving/Copying Error Messages

Moving and copying of error messages is different in remote and local environments:


In contrast with a pure Natural mainframe environment, that is, without remote development from Natural Studio, the command EDIT DDM is available also from a user library. This means that it is not necessary to expand the DDM node in the tree view to be able to edit a specific DDM. However, when Natural Security is used, the use of the commands LIST DDM and EDIT DDM can be restricted only via the security profile of the mainframe Natural utility SYSDDM.

Maps Containing GUI Elements

Maps containing GUI elements can be moved or copied from the local environment to a remote environment. However, the GUI elements are not displayed when the map is being tested or executed on the remote environment.

Field Sensitive Maps

For these maps, the consistency check for a map field is made as soon as the user input has been entered. Field sensitive maps can be moved or copied from the local environment to a remote environment. However, a field sensitive map cannot be tested or executed on a remote mainframe environment.


On the mainframe, objects of type resource can be handled (displayed, copied, deleted, etc.). See Using Non-Natural Files - Resources in the Natural Programming Guide.

By default, resouces are not handled by Natural Development Server for performance reasons; that is, resources are normally not displayed.

If you want Natural Development Server to handle resources, use the user exit NDV-UX03 (source: NDV-SX03), which allows you to enable/disable the display of resources in Natural Studio for all or certain users only.

The server behaves in the following way: If the user exit exists and the flag DISPLAY-RESOURCES contained therein is set (Y), the server checks in the Library Statistical Record whether the number of resources is greater than 0. If so, the library is searched also for resources.


Dialogs can be stored on the mainframe. Therefore it is possible to move or copy dialogs from the local environment to a remote environment. Private resource files of a dialog will not be moved or copied together with the dialog. It is also possible to list dialogs in a remote environment. New dialogs cannot be created and dialogs cannot be edited in a remote environment.

Natural ISPF Macros and Recordings

As the object types Natural ISPF Macro and Recording available with Natural for Mainframes cannot be processed by Natural Studio, they will not be displayed in the tree view of the library work space. If a library consists only of such object types, the library will be displayed nevertheless in the tree view, but without any subnodes.

If a library containing such object types is deleted, then the objects of these two specific object types will not be deleted and the library will continue to be displayed in the tree view.

Objects of the types Natural ISPF Macro and Natural ISPF Recording cannot be linked to an application.


The restricted libraries SYSLIB/SYSLIBS of the server are not shown in Natural Studio's tree view, because a logon to these libraries is not possible. These libraries can be modified only by using a Natural utility such as SYSMAIN or the Object Handler.

Allow Lower Case Input in Program Editor of Natural Studio

Natural Studio's program editor is case-sensitive, that is, lower case input will be included in the program source in lower case. The compiler on the Natural Development Server, however, expects upper case code in its normal setting. This issue can be fixed by setting the compiler option LOWSRCE=ON. But this setting will have specific side effects which should be noticed. Refer to the CMPO profile parameter in the Natural Parameter Reference.

Terminal Emulation

The terminal emulation supports 3270 Model 2 screens. The support of 3270 Model 3, 4 and 5 screens is planned for one of the next versions of Natural Single Point of Development.

Dependencies between XRef Evaluation and Predict

If you are using dynamic language assigned when calling other objects such as INPUT USING MAP 'MAP1&', the connection between caller and called object cannot be retrieved by using XRef Evaluation.

Natural on the mainframe supports case-sensitive calls to other objects such as PERFORM SUBROUTINE. With the current version of SPoD, this may lead to strange results when, in XRef Evaluation, trees are expanded and it is not possible to request case-sensitive calls with the filter dialog.

Remote Debugging

When the remote debugging facility was implemented, the goal was not to provide any new functions, but to support the existing essential debugging functions under the Natural Development Server. These functions are:

Generally, it was intended to provide for compatibility between the debug functionality that exists in a Natural on mainframes and a Natural on PC. Hence, the current state of development constitutes the lowest possible common denominator. Especially the debug statistics as supported on mainframes are not yet supported in a remote debug environment.

Which Differences Exist in Debugging in a Mainframe Environment and in Natural Studio?

The following tables provide an overview of differences that exist between Natural debugging in a mainframe environment and debugging in Natural Studio.

Explanation of the table headings:

MF Describes debugging functionality available or not available in a mainframe Natural environment.
SPoD Describes debugging functionality available or not available in a Natural Single Point of Development environment using Natural Studio as a development client and a mainframe Natural Development Server.
PC Describes debugging functionality available or not available in Natural Studio (stand alone).

Miscellaneous Restrictions under BS2000/OSD

The following restrictions apply when you are using a Natural Development Server (NDV) in a SMARTS server runtime environment on BS2000/OSD.

Natural Advanced Facilities

This add-on product cannot be used.


The Natural remote job entry facility NATRJE is not currently supported.

Call to External 3GL Subroutines

3GL programs that are to be called by Natural must have the following characteristics:

  1. They must be fully reentrant since they are loaded as shared code into a common memory pool.

  2. They may not invoke any system function such as request memory or file IO, because they are running in a multitasking environment where every communication with the Natural Studio front-end can cause a task change similar to UTM.

  3. AMODE 24 is not supported. Any attempt to load an AMODE 24 subroutine will end up with a GETMAIN error.

  4. CRTE is not supported.

The Natural profile parameter DELETE is not evaluated; that is, a 3GL program that has been loaded cannot be unloaded.

MT ParameterProfile parameter

The Natural profile and session parameter MT (Maximum CPU Time) cannot be used to limit the time consumption.

LIBNAM Parameter

The Natural profile parameter LIBNAM (Name of External Program Load Library) is not supported.

Natural System Variables

The Natural system variables *INIT-PROGRAM, *HARDWARE and *OSVERS are not supported.

NDV Server

Only one NDV server can be started per SMARTS server instance.

Terminal Emulation

Currently, only terminal type 3270 is supported.

Natural Shared Nucleus

Support of a Natural shared nucleus is not possible. That is, NDV under SMARTS on BS2000/OSD cannot share one nucleus with Natural under TIAM, UTM, or in batch mode.

Global Bufferpools

The usage of global bufferpools is not possible with NDV under SMARTS on BS2000/OSD, because NDV is not able to share bufferpools with Natural under TIAM, UTM, or in batch mode.

Usage of the Software AG Editor under SMARTS on BS2000/OSD

Since no editor work file access method is currently available for SMARTS on BS2000, the Software AG editor has to run without a buffer pool.

For this purpose, the profile parameter EDPSIZE (described in the Natural Parameter Reference) is provided where you can specify the size of an auxiliary editor buffer pool. All editor data are kept in the user storage thread. The total editor work space per user is limited by the EDPSIZE parameter. No editor work file is required. The recover mechanism of the Software AG Editor is not supported.

EntireX Broker Stub

The EntireX Broker Stub BROKER must be used.

Top of page

Performance Considerations

The working situation displayed in the library workspace of Natural Studio is based on the representation of the entire user system files.

The tree view window opens when the user connects to the Natural Development Server. For this, the entire system file has to be analyzed and the corresponding information has to be transferred from the Natural Development Server to the Natural Studio client. In the case of very large system files, the build-up of the tree view window can be very time consuming. Status information displayed in the status bar keeps the user informed about the progress of the screen build-up operation. This is to avoid the impression that the connection to the Natural Development Server might be interrupted.

Switch on the status bar using the View > Status Bar function of the menu bar. Make sure that the transfer rate of your network is 100 Mbit/s at minimum.

Another possibility to reduce the amount of data read while mapping the environment is to supply filter definitions on system file or library level.

In the context menu of a system file and library node it is possible to apply filter definitions. Using these definitions on the client side, you can limit the number of libraries/objects displayed in the tree view.

In the default configuration of Natural Studio, all operations which result in a modification of the system file, for example, moving or copying objects, but also a SAVE or STOW command, will cause the tree view window contents to be refreshed, which can be a very time consuming process in the case of very large system files.

By default, the Refresh function is set to Full automatic refresh. Change the automatic refresh function by choosing Optimized automatic refresh or No automatic refresh in the context menu.

Since the tree view of the application workspace displays only the objects that are linked to the application, the build-up of its tree view screen is consequently considerably faster, which is another advantage of using the application workspace.

Library Statistical Record

In a Natural Single Point of Development environment, either local Natural libraries are accessed or Natural Studio requests the library statistical data from the remote development server. In the local environment, the data are stored persistently in the FILEDIR structure of the library. In the case of a mainframe development server, Natural objects are stored in system files in the database and the requested statistical data of a library are not stored permanently.

In order to reduce the number of Adabas calls and to improve the performance, a statistical record has been introduced.

The program NDVCSTAR is provided to initialize a complete system file, a range of libraries or a single library on a system file with the Library Statistical Records, see Initialization of Library Statistical Records.

The following topics are covered below:


In a Natural Single Point of Development environment, a library statistical record is created and maintained for every library of the FUSER or FNAT system file. This statistical record resides on the same system file where the library resides and contains the following information for every library:

Supported object types:

When Natural Studio requests the statistics for a library the first time, the library statistical record is created and saved in the appropriate system file. Once the library statistical record has been built, all requests from Natural Studio will be satisfied by reading and sending the contents of the statistical record instead of rebuilding the complete library statistics.

When the user initiates an explicit refresh for a library, the statistical record is rebuilt completely.

Data Consistency

The library statistical record of a mainframe development server is supported only in a Single Point of Development environment. The statistical record is always up to date if all system file modifications are initiated in this environment.

All commands or operations triggered by Natural Studio which will modify the system files (add new object or copy, move, delete, rename object, etc.) will update the library statistical record on the development server.

In addition, the library statistical record is regenerated if an object list for the whole library is requested or the statistical record for a given object type is updated if an object list for this type is requested.

To ensure consistency of the data in the library statistical records of your FNAT and FUSER system files, you are strongly recommended to make changes on the same FNAT and FUSER system file used in a Single Point of Development environment exclusively in that environment.

When working with Natural Studio, care must be taken to start all commands or utilities from within Natural Studio. It is not admissible to issue system commands in the terminal emulation window, for example, at a MORE prompt or in a command line. In such a case, the library statistical data might become inconsistent. The same is true if you start a server application that directly changes the FNAT or FUSER system file.

Such inconsistencies may be resolved after the next regeneration (implicit rebuild via get object list or explicit refresh) of the library statistical record is forced.


Statistical records cannot be used for read-only system files. In this case, the old behavior is used.

Initialization of Library Statistical Records

In order to initialize the Library Statistical Records of a a complete system file, a range of libraries or a single library on a system file you can invoke the program NDVCSTAR.

The following options are provided:

Option Meaning Default value
Library name range Possible values: *
blank or * (asterisk) All libraries.
value> All libraries with names greater than or equal to value.
value< All libraries with names less than or equal to value.
DBID, FNR The database ID (DBID) and file number (FNR) of the system file where the Natural libraries are stored. If no values (or 0) are specified, the current FUSER or FNAT system file is used. 0,0
Password, Cipher The password and cipher code of the Adabas file where the Natural libraries are stored. None
Update existing records Specifies whether existing Library Statistical Records are to be processed. Possible values: N
Y (yes) Regenerate existing Library Statistical Records.
N (no) Skip existing Library Statistical Records.
Display library names Specifies whether a processing message of the library currently processed is to be displayed. Possible values: 1
Y (yes) Display processing messages.
N (no) Display only error messages.

Start of instruction setTo invoke the program NDVCSTAR

Start of instruction setTo execute the program NDVCSTAR in batch mode

Top of page

Natural Documentation and Online Help

The following restrictions apply to the Natural documentation and the Windows-based online help when you are using a Natural Development Server (NDV) for remote development:

We ask you to refer to the Natural for Mainframes documentation set for full details.

Top of page