Natural for DL/I allows Natural programs to access DL/I databases using Natural statements.
To access DL/I data, Natural requires certain information on these data. This information mainly consists of four types of control blocks:
the original database descriptions (DBDs) and program specification blocks (PSBs) which are required by DL/I itself;
suitable copies of DL/I DBDs and PSBs for Natural, called NDBs and NSBs;
user-defined fields (UDFs);
Natural DDMs generated from NDBs and UDFs.
All information required by Natural to access DL/I databases is stored
and maintained in the Natural system file FDIC
. The Natural system
file FDIC
can be an Adabas file (if Adabas is installed), or a
VSAM file (only in CICS environments).
As is the case with any DL/I application, a DL/I DBDGEN and PSBGEN must be performed to define the data structure the Natural application is to have access to, and the processing intent this application has on these data. This same information, which is contained in the DBD and PSB source statements, must also be defined to Natural.
The Natural batch procedures NATDBD
and NATPSB
are used to add this information to the Natural FDIC
system file.
They generate NDBs and NSBs from the respective DBDs and PSBs, using the DBDGEN
and PSBGEN source respectively, as input.
It is the administrator's responsibility to ensure that the contents of
the DL/I DBDLIB and PSBLIB and the Natural system file FDIC
are
compatible. It is therefore recommended that the DL/I procedures DBDGEN and
PSBGEN and the Natural procedures NATDBD
and NATPSB
always be executed as a pair.
The DBDGEN source usually does not define all fields within a segment.
Additional segment fields, called user-defined fields (UDFs), can be entered as
part of creating the DDMs. UDFs in Natural are added by using either the batch
utility NATUDF
, the
Edit an NDB
Segment Description facility of the SYSDDM
utility, or Predict.
Once all the necessary information has been stored on the Natural system
file FDIC
, Natural DDMs defining the DL/I database segment types
can be created.