SEGM segment type format
The IMS catalog SEGM segment type contains metadata about an IMS database segment.
- Segment name
- SEGM
- Parent name
- DBD
- Sequence field
- SEGMSEQ
- Segment length
- 376 bytes
Offset (bytes) | Length (bytes) | Data type | Field name | Description | Unique key field | |
---|---|---|---|---|---|---|
1 | 2 | X | LEN | Length of this segment. | ||
3 | 2 | C | CTL | Control field. | ||
5 | 2 | X | SEGMSEQ | Sequence field, type = U. | X | |
5 | 2 | X | SEQNUM | Sequence number. | ||
9 | 8 | C | IMSNAME | Name of this segment. | ||
17 | 8 | C | PARPHY | Name of the physical parent of this segment. | ||
25 | 4 | C | PARTYPE | Type of physical child pointers (SNGL or DBLE) that are included in all occurrences of the physical parent of this segment. | ||
29 | 8 | C | PARLOG | Name of the logical parent of this segment. | ||
37 | 8 | C | PARCHK | Indicates whether the concatenated key of the logical parent is virtual or physical. | ||
45 | 8 | C | DBNAME | Name of the database that the logical parent of this segment is defined in. | ||
53 | 4 | X | BYTE1 | Maximum length of a variable-length segment in bytes, or the number of bytes in the data area of a fixed-length segment. | ||
57 | 4 | X | BYTE2 | Minimum length of a variable-length segment in bytes. If this field contains data, this segment type is variable-length. | ||
61 | 8 | C | FILLER01 | Reserved. | ||
69 | 3 | C | RULE1 | Path type that must be used to insert, delete, or replace an instance of this segment type. This field contains three characters. The first character is the path type for insert operations, the second character is the path type for delete operations, and the third character is the path type for replace operations. | ||
72 | 5 | C | RULE2 | The rule that IMS uses when adding a new instance of a segment type that does not have a unique sequence field: | ||
77 | 8 | C | SRCSEG1 |
In a catalog record for a virtual logical child segment type, this is the name of the real logical child that corresponds with this virtual logical child. In a catalog record for a segment type in a logical database, this is the name of the source segment in a physical database that is being defined as a logical segment type. |
||
85 | 4 | C | SRCFBK1 |
In a catalog record for a virtual logical child segment type, this field indicates if only the key of the real logical child or both the key and data portions of the real logical child are used to construct this segment type in the user I/O area. This field is only used for segments in logical databases. |
||
89 | 8 | C | SRCDBN1 | Name of the database that contains the segment type identified in the SRCSEG1 field. | ||
97 | 8 | C | SRCSEG2 |
In a catalog record for a concatenated virtual logical child segment type, this is the name of the physical parent of the real logical child segment. In a catalog record for a segment in a logical database, this is the name of the logical or physical parent segment in a physical database that is used to construct the destination parent section of this logical concatenated segment. If this field contains data, this segment is a logical concatenated segment. |
||
105 | 4 | C | SRCFBK2 |
In a catalog record for a concatenated virtual logical child segment type, this field indicates if only the key of the real logical child or both the key and data portions of the real logical child are used to construct this segment type in the user I/O area. The key value of a concatenated segment is either the value in the physical twin sequence field or the logical twin sequence field, depending on which path the logical child is accessed from. This field is used only for concatenated segments in logical databases. |
||
109 | 8 | C | SRCDBN2 | Name of the database that contains the segment type identified in the SRCSEG2 field. | ||
117 | 8 | C | COMPRTN | Name of the Segment Edit/Compression exit routine used for this segment. | ||
125 | 4 | C | COMPDATA | Indicates whether the Segment Edit/Compression exit routine for this segment only condenses or modifies data fields and not sequence fields. | ||
129 | 4 | C | COMPINIT | Indicates if initialization and termination processing control is required for the Segment Edit/Compression exit routine identified in the COMPRTN field. | ||
133 | 4 | X | COMPMAX | Indicates the maximum expansion size (in bytes) for this segment when it is modified by the Segment Edit/Compression exit routine identified in the COMPRTN field. | ||
137 | 3 | C | COMPPAD | Indicates that a segment instance will be padded to the size given in the COMPMAX field if the Segment Edit/Compression exit routine compresses it to a smaller size. | ||
140 | 1 | C | FILLER02 | Reserved. | ||
141 | 7 | C | PTR1 | Indicates if pointer fields are reserved in the segment prefix for a HIER (hierarchic forward pointer), HIERBWD (hierarchic forward and backward pointers), TWIN (twin forward pointer), TWINBWD (twin forward and backward pointers), or NOTWIN (no reserved field for physical twin pointers) relationship. See the POINTER= parameter of the SEGM statement in the DBDGEN utility for more details about these values. | ||
148 | 8 | C | PTR2 | Indicates if pointer fields are reserved in the segment prefix for a LTWIN (logical twin forward pointer) or LTWINBWD (logical twin forward and backward pointers) relationship. | ||
156 | 6 | C | PTR3 | Indicates if a pointer field is reserved in the segment prefix for a LPARNT (pointer to a logical parent segment) relationship. | ||
162 | 3 | C | PTR4 | Indicates if a 4-byte field is reserved in the segment prefix for a logical relationship counter. | ||
165 | 6 | C | PTR5 | Indicates if this segment type is part of a bidirectional logical relationship. | ||
171 | 2 | X | SSPTR | The number of subset pointers. A value of 0 in this field indicates that subset pointers are not used in this segment type. | ||
173 | 3 | C | TYPE | Indicates the type of DEDB dependent segment for this segment type, either sequential or dependent. | ||
176 | 1 | C | DSGRP | The data set group identifier for this segment. This field is only used for segments in a HALDB. | ||
177 | 2 | X | DSGHAL | Reserved for internal use. | ||
179 | 10 | C | FREQ | Estimated number of times that this segment occurs for each instance of the physical parent. This value is used by IMS to determine the logical record length and physical storage block sizes for data set groups in the database that contains this segment type. | ||
189 | 128 | C | NAME | The external alias name for this segment. | ||
317 | 25 | C | ENCODING | The code page used to encode all character data in this segment. | ||
342 | 35 | C | FILLER03 | Reserved. |