com.ibm.pdp.maf.rpp.pac.blockbase
Interface DHLine

All Superinterfaces:
Element

public interface DHLine
extends Element

DH lines describe the relationships between Segments in a hierarchical BlockBase (example: DL/1).

Each line designates a Segment and its parent (except for the line referring to the root Segment). The description consists of records which make up the physical file.


Field Summary
static java.lang.String copyright
           
 
Method Summary
 java.lang.String getCommentsOrRelationShipOrKeyLength()
           
 int getEstimatedNumberOfLink()
           
 java.util.List<GLine> getGGLines()
           
 java.lang.String getKeyIndicatorOrOption()
           
 AbstractSegment getParentSegment()
           
 HierarchicalBlockBase getPCBorPSBCode()
           
 java.lang.String getRelationCode()
           
 AbstractSegment getSegment()
           
 

Field Detail

copyright

static final java.lang.String copyright
See Also:
Constant Field Values
Method Detail

getCommentsOrRelationShipOrKeyLength

java.lang.String getCommentsOrRelationShipOrKeyLength()

This field can be used to document the defined parent-child link. It is also used to indicate the concatenated key length.

When generating PS-type Database Blocks (a PSB), the length of the longest concatenated key is automatically calculated for each:

This length can be overridden by entering the following characters on the first line: CC=n (with n = 9 - 9999).

On each Segment call line, you can enter PR=nnnn to generate the PROCOPT=nnnn parameter in the SENSEG statement when generating the PSB which contains this DBD, PCB, or index database.

Returns:

getEstimatedNumberOfLink

int getEstimatedNumberOfLink()

Average number of occurrences of a child Segment linked to one occurrence of its parent Segment.

Returns:

getGGLines

java.util.List<GLine> getGGLines()

In the -GG lines, you have the information contained in the BlockBase Description lines before they are generated.

Depending on the type of description line, lines are automatically displayed, in order to guide you when you enter the physical information of the BlockBase. These lines are identified by 'VIRT' or 'GUID' in the last field of the table of the -GG lines. Collectively, these lines are called 'virtual' lines. The lines identified by 'VIRT' are generated. These lines can be overridden.

The lines will be taken into account at generation time, depending on a G Type.

The description gives the generation elements or comments you want to be generated. Its content depends on the type of BlockBase and type of line selected.

The virtual lines associated with a description line of a physical DBD retrieve the Segment descriptions as defined in the repository. They do not need to be rewritten. However you can complete, modify, or delete these lines (declaration of an index). A FIELD description can be modified at this level. To do so, insert one or more lines between the beginning and the end of the insertion area, indicated on virtual lines. On the first line, enter the Data Element code corresponding to the FIELD to be modified. It must be left-aligned between and > signs. You must enter six characters between the delimiters or complete with blanks. Enter the new description of FIELD on the following lines.

Example: G

G FIELD NAME=(NUM,SEQ,U),BYTES=7,... Logical DBD:

The virtual lines associated with a description line of a logical DBD retrieve, for each Segment of the DBD, the name of the Segment and the name of the parent Segment. You must complete each line by identifying the source of the Segment.SOURCE = ((name of Segment,,name of DBD))Index

The virtual lines associated with the index BlockBase description line retrieve the Segment description from the repository. Since the necessary information for the description of a given index (LCHILD...) is unavailable, you must complete the virtual lines.

No virtual lines are associated with a PCB BlockBase. You can modify a PCB description through the virtual lines associated with the description lines of a PSB using this PCB.

The virtual lines associated with PSB description lines retrieve the Segment descriptions which make up the called PCB from the repository. They do not need to be rewritten. A SENSEG description can be modified at this level. To do so, insert one or more lines between the beginning and the end of the insertion area, indicated on virtual lines. On the first line, enter the Segment code corresponding to the SENSEG to be modified. It must be left-aligned between and > signs. You must enter four characters between the delimiters or complete with blanks. Enter the new description of SENSEG on the following lines.

Example: G

G SENSEG NAME=CLCDE,PARENT=COCRD,PROCOPT=G

Returns:

getKeyIndicatorOrOption

java.lang.String getKeyIndicatorOrOption()

Key indicator used for a symbolic reference of the key Data Element of a given Segment in a given Database Block.

The character indicated in this field must also be entered in the -CE lines of the Segment, in the Sort key field of the Data Element call line.

In this field, you can enter:

Returns:

getParentSegment

AbstractSegment getParentSegment()

Code of the Segment upon which the given Segment is hierarchically dependent.

Returns:

getPCBorPSBCode

HierarchicalBlockBase getPCBorPSBCode()

The PCB or PSB code field is active only for PC or PS-type Blocks.

For a PCB or PSB database called on a -DH line, you only must enter the Key indicator or option and Comment/relationship/key length fields.

Returns:

getRelationCode

java.lang.String getRelationCode()

This field is optional. It is only used if the type of Block is 'PSB' to name the different DBD and PCB called.

Returns:

getSegment

AbstractSegment getSegment()

Segment code.

For a SOCRATE/CLIO database, this is the code of the Segment which is used to generate the entity, the formal or the SOCRATE/CLIO Segment.

Returns: