This document covers the following topics:
For more information on libraries, see SYSMAIN Utility in the Tools and Utilities documentation.
Libraries are used to store Natural objects such as programs, subprograms, subroutines, helproutines or text.
Some libraries are delivered with Natural, such as libraries beginning
with the prefix "SYS". The library
SYSTEM
, for example, contains system-related programs, error
messages and DDMs (data definition modules).
When you first logon to Natural, your default library will in most cases
be SYSTEM
. Since this library generally contains system-related
objects, you will probably want to use a different library to store your
programs. You can add your own libraries to the Natural environment or use
libraries set up for this purpose.
Note:
You can alter your default library from SYSTEM
to any
other library by specifying the Natural profile parameter
INIT-LIB
in the
Configuration Utility.
A steplib is a Natural user library or system library that is concatenated with the current user or system library. This avoids redundant storage of identical objects and helps organize applications. In addition, if Natural Security is installed, a steplib can be used to restrict access to particular objects.
Natural searches in a steplib when an object is not found in the current
library (see Search Sequence
for Object Execution for further information). The
standard steplibs are the libraries SYSTEM
in the
FUSER
and the FNAT
system files.
If Natural Security is active, you can define additional steplibs in the security profile of each library. The entries in a library security profile override any definitions made outside Natural Security.
If Natural Security is not active, you can specify additional steplibs
in the Configuration Utility,
with the profile parameter STEPLIB
. In
addition, you can define further steplibs by using one of the application
programming interfaces (for example, USR1025N
or
USR3025N
) that are supplied for this purpose in the Natural system
library SYSEXT
.
The additional steplibs are searched for an object before the standard
steplibs SYSTEM
(FUSER
and FNAT
).
The currently active steplibs are shown when you enter the system
command TECH
.
This section describes the sequence in which Natural libraries and system files are searched for a requested object that is to be executed from either a user library or a system library.
Note:
If the profile parameter BPSFI
is set to
"ON" (the default setting is
"OFF"), objects are searched
for in the buffer pool first.
The current library in the FUSER
system file as defined by the system
variable *LIBRARY-ID
.
The steplibs (in sequence) as specified in the Natural Security profile for the current library or in the steplib table.
The default steplib as defined by the system variable
*STEPLIB
.
The library SYSTEM
in the FUSER
system
file.
The library SYSTEM
in the FNAT
system
file.
The current "SYS" library in the
FNAT
system file as defined by the system variable
*LIBRARY-ID
.
The steplibs (in sequence) as specified in the Natural Security profile for the current library or in the steplib table.
The library SYSLIBS
in the FNAT
system
file, which contains objects shared by system commands and utilities.
The library SYSTEM
in the FNAT
system
file.
The library SYSTEM
in the FUSER
system
file.
Since the FUSER
system file is searched last, you
must provide an object that is used in both the FUSER
and
the FNAT
system files (for example, a
user-exit routine for a Natural utility) only in one location, namely in
FUSER
.
To log on to a library, select the ENTER. A window appears showing the command followed by a list of all existing libraries. For example:
menu and press+----------+ ¦ <LOGON> ¦ ¦ DEMO1 ¦ ¦ DEMO2 ¦ ¦ DEMO3 ¦ ¦ SAMPLES ¦ ¦ SYSEXPG ¦ ¦ SYSEXSYN ¦ ¦ SYSTEM ¦ +----------+ |
To create a new library, choose the Library Naming Conventions.
command. A window is then displayed in which you enter the name of the library to be created. See alsoTo use an existing library, you can either choose the library from the list, or choose the
command and then enter the name of the desired library. The contents of the library are then displayed. For example:+------------------------------- List * * -------------------------------+ ¦ Cmd Name Type SM S/C User ID SRC Date GP Date ¦ ¦ --- -------- ----------- -- --- -------- -------------- -------------- ¦ ¦ <DIRECT COMMAND> ¦ ¦ ARRAYD Program S S SAGPC 07:45 02-02-07 ¦ ¦ ARRAYE Program S S/C SAGPC 07:45 02-02-07 09:25 02-02-07 ¦ ¦ BREAK1 Program S S/C SAGPC 07:45 02-02-07 09:25 02-02-07 ¦ |
Note:
It is also possible to enter the system command
LOGON
library-name
in the
Direct
Command window.