NDBs and UDFs of physical and logical IMS databases can be incorporated into the Predict data dictionary.
As a safeguard against accidental overwriting, an NDB will not be incorporated if the dictionary already contains a database incorporated from the same NDB. To change a database object of type I, use the Replace function (code R).
See Concepts of Incorporation for basic information on how to use incorporation functions.
This document covers the following topics:
The Incorporate NDBs screen is
displayed by selecting function code I and object code ND in a Predict main
menu or by entering the direct command
13:44:22 ***** P R E D I C T ***** 2007-05-31 Plan 0 - Incorporate NDBs - NDB name .......
|NDB name||Name of the NDB. NDB names correspond to the name of IMS databases. Asterisk notation is allowed.|
NDBs which meet this selection criterion are then listed as follows:
13:27:58 ***** P R E D I C T ***** 2007-05-31 - Incorporate NDBs - Search-crit.:NDB name=ALL Segment Cmd NDB name NDB type Count Database ID Remark __ ARTICLE Physical 6 ARTICLE4 __ CUSTOMER Physical 3 CUSTOMER __ ED00DBD Physical 5 ED00DBD1 __ PARTLIST Logical 3 PARTLIST2 __ PARTUSED Logical 3 PARTUSED __
|Columns in the List|
|NDB name||Name of the NDB corresponding to an IMS database.|
|NDB type||Type of the IMS database: either Physical or Logical.|
|Segment count||The number of segments in the IMS database.|
|Database ID||The ID of a Predict database object documenting the NDB.|
|Remark||After successful execution of the function: either Replaced or Incorporated.|
A database object of type I is created for each NDB.
A Predict file object of type I is created for each segment of the NDB.
Predict file objects of type J are created if a segment has UDFs. If the segment contains a DBID and FNR (connection to the UDF) Predict checks whether a UDF is defined with this DBID and FNR and whether the DBID is defined in the NTDB macro as an IMS/DL/I database. If no corresponding UDF is defined, an error message is returned.
If the DBID does not correspond to an IMS/DL/I database, any UDF is incorporated with a warning message. The DBID and FNR remain unchanged.
If a corresponding UDF is defined, one or more files of type J containing all user defined fields are created.
Each time a redefinition is found, i.e., the offset of a field is equal to or less than the offset of a previous field, a new file of type J is created. Gaps between two user defined fields are filled with DUMMY fields.
Predict ensures that the Adabas short names of UDFs in logical child segments fall within the range allowed by Natural for DL/I. This range is documented in the DDA Services and should only be changed on special advice of SAG. DBID/FNR of the UDF are recorded in the generation log of the file of type I.
Before the Incorporate function is executed, specify the following parameters for each NDB in an additional input screen:
|Segment name prefix||The prefix to be concatenated both with the NDB name to create an ID for the Predict database object and with the name of each segment in the NDB to create an ID for the corresponding Predict file object of type I.|
|Segment name suffix||The suffix to be concatenated both with the NDB name to create an ID for the Predict database object and with the name of each segment in the NDB to create an ID for the corresponding Predict file object of type I.|
|Layout name prefix||The prefix to be concatenated with the name of each segment in the NDB that has user defined fields, to create an ID for the corresponding Predict file object of type J.|
|Layout name suffix||The suffix to be concatenated with the name of each segment in the NDB that has user defined fields, to create an ID for the corresponding Predict file object of type J. If several layouts are created for one segment, a different number is added to the layout name suffix for each layout.|
|Field name prefix / suffix||
|Only for identical field names||
|List incorporated code||
Replaces Predict objects documenting NDBs.
Predict objects documenting NDBs will be not be replaced in the following circumstances:
if a physical database is to replace a logical database or vice versa;
if a file of type I or a related file of type J or K for which a DDM exists is to be deleted and Natural Security does not allow the user to delete the DDM.
The Replace function creates, replaces and deletes Predict file objects. The following rules apply:
New Predict file objects will be created for all segments in the NDB that are not yet documented in Predict.
Existing Predict file objects are replaced if they document segments that are still used in the NDB. Changes to IMS fields and deletion of IMS fields are then rippled across all related files of types J and K that contain these fields. The following files will be marked as modified after generation after this rippling:
If the changed file represents a segment of a physical database:
the changed file and all its related files of types J and K;
Files of type I that depend on the changed file and all their related files of types J and K.
If the changed file represents a segment of a logical database:
the changed file and all files of types J and K that are related to the physical file of type I from which the changed file is derived;
Files of type I that depend on the changed file and all files of types J and K that are related to the physical files of type I from which these files of type I are derived.
Predict file objects documenting segments that are no longer contained in the NDB will be deleted. Whenever a file of type I is deleted, all related files of types J and K are also deleted. If DDMs have been generated from the files of type I, J and K, these files can only be purged if the user is authorized to modify the Natural Security definition of the files. This is only applicable if Natural Security is active. See Protecting DDMs in the section Protecting External Objects in Predict with Natural Security in the Predict Security documentation.
Files of type J are not replaced, even if the UDF has been changed.
Before the Replace function is executed, enter the following parameters for each NDB in an additional input screen:
|Keep layout structure||
|List incorporated code||
|Comments as abstract||
Enter parameters on the next line in positional or keyword form.
|Field / Code||Keyword||Position|
|I (incorp.) o. R (replace)||SUB-FUNCTION||2|
|Segment name prefix||SEGMENT-PREFIX||3|
|Segment name suffix||SEGMENT-SUFFIX||4|
|Layout name prefix||LAYOUT-PREFIX||5|
|Layout name suffix||LAYOUT-SUFFIX||6|
|Field name prefix / suffix||FIELD-NAME||7|
|Only identical field names||ID-ONLY||8|
|List incorporated code||LIST||9|
|Keep layout structure||KEEP||10|
|Comments as abstract||COMMENT||11|
The keyword ABSTRACT can be used as a synonym for COMMENT.
To incorporate the IMS-NDB of name TEST, code the command:
INCORPORATE NDB NDB=TEST,SUB-FUNCTION=I
or (using positional parameters)
INCORPORATE NDB TEST,I
The example above uses the Natural parameters
|Extra Parameter for Replacing an NDB in Batch Mode|