18-Byte Communications Blocks (PL/I)
This section describes where to specify an 18-byte communications block and contains figures showing these blocks.
idmscu19
This section describes where to specify an 18-byte communications block and contains figures showing these blocks.
As an alternative to using the 16-byte IDMS DB and IDMS DC communications blocks, you can specify 18-byte blocks. The difference between 16-byte blocks and 18-byte blocks is that an 18-byte block contains an additional 18-byte filler field, and the following fields are 18 bytes instead of 16 bytes:
- RECORD_NAME
- AREA_NAME
- ERROR_SET
- ERROR_RECORD
- ERROR_AREA
For more information about the fields in IDMS DB and IDMS DC communications blocks, see IDMS DB Communications Block and IDMS DC Communications Block.
Where to Specify the 18-Byte Block
For PL/I, you specify an 18-byte communications block in the SUBSCHEMA_NAMES LENGTH clause of the DECLARE SUBSCHEMA precompiler-directive statement. For more information, see DECLARE SUBSCHEMA.
18-Byte IDMS DB Block
The following figure shows the 18-byte IDMS DB communications block:
Length Field Data Type (bytes) Initial Value ┌──────────┐ *│ 1 8 │ PROGRAM-NAME Alphanumeric 8 Program Name ├────────┬─┘ │ 9 12 │ ERROR-STATUS Alphanumeric 4 '1400' ├────────┤ │ 13 16 │ DBKEY Binary 4(Fullword) 0000 ├────────┴───┐ │ 17 34 │ RECORD-NAME Alphanumeric 18 Spaces ├────────────┤ │ 35 52 │ AREA-NAME Alphanumeric 18 Spaces ├────────────┤ │ 53 70 │ FILLER Alphanumeric 18 Spaces ├────────────┤ │ 71 88 │ ERROR-SET Alphanumeric 18 Spaces ├────────────┤ │ 89 106 │ ERROR-RECORD Alphanumeric 18 Spaces ├────────────┤ │ 107 124 │ ERROR-AREA Alphanumeric 18 Spaces ├─────────┬──┘ **│ 125 128 │ PAGE-INFO Binary 4(Fullword) 0000 └─────────┘ ┌─────┬───┬────┐ │ 125 ... 224 │ IDBMSCOM-AREA Alphanumeric 100 Low Values ├─────┴───┴┬───┘ │ 225 228 │ DIRECT-DBKEY Binary 4(Fullword) 0000 └──────────┘ ┌─────────┐ │ 229 235 │ DATABASE-STATUS Alphanumeric 7 Spaces ├─────┬───┘ │ 236 │ FILLER ... 1 ... ├─────┴───┐ │ 237 240 │ RECORD-OCCUR Binary 4(Fullword) 0000 ├─────────┤ │ 241 244 │ DML-SEQUENCE Binary 4(Fullword) 0000 ├─────────┴──┐ │ 245 300 │ FILLER Alphanumeric 56 Spaces └────────────┘ * word aligned ** PAGE-INFO-GROUP overlays bytes 125 and 126 and PAGE-INFO-DBK-FORMAT overlays bytes 127 and 128. Both of these fields are binary datatype, each with a length of two bytes. Suggested initial values for both are 00. Together these two fields represent PAGE-INFO.
18-Byte IDMS DC Block
The following figure shows the 18-byte IDMS DC communications block:
Length Field Data Type (bytes) Initial Value ┌──────────┐ *│ 1 8 │ PROGRAM-NAME Alphanumeric 8 Program Name ├────────┬─┘ │ 9 12 │ ERROR-STATUS Alphanumeric 4 '1400' ├────────┤ │ 13 16 │ DBKEY Binary 4(Fullword) 0000 ├────────┴───┐ │ 17 34 │ RECORD-NAME Alphanumeric 18 Spaces ├────────────┤ │ 35 52 │ AREA-NAME Alphanumeric 18 Spaces ├────────────┤ │ 53 70 │ FILLER Alphanumeric 18 Spaces ├────────────┤ │ 71 88 │ ERROR-SET Alphanumeric 18 Spaces ├────────────┤ │ 89 106 │ ERROR-RECORD Alphanumeric 18 Spaces ├────────────┤ │ 107 124 │ ERROR-AREA Alphanumeric 18 Spaces ├─────────┬──┘ **│ 125 128 │ PAGE-INFO Binary 4(Fullword) 0000 └─────────┘ ┌─────┬───┬────┐ │ 125 ... 224 │ IDBMSCOM-AREA Alphanumeric 100 Low Values ├─────┴───┴┬───┘ │ 225 228 │ DIRECT-DBKEY Binary 4(Fullword) 0000 ├──────────┤ │ 229 235 │ DATABASE-STATUS Alphanumeric 7 Spaces ├─────┬────┘ │ 236 │ FILLER ... 1 ... ├─────┴────┐ │ 237 240 │ RECORD-OCCUR Binary 4(Fullword) 0000 ├──────────┤ │ 241 244 │ DML-SEQUENCE Binary 4(Fullword) 0000 ├──────────┤ │ 245 300 │ FILLER Alphanumeric 56 Spaces ├─────┬───┬┴───┐ │ 301 ... 400 │ DBMSCOM-AREA Alphanumeric 100 Low Values ├─────┴───┴┬───┘ │ 401 404 │ SSC-ERRSTAT-SAVE Alphanumeric 4 0000 ├──────────┤ │ 405 408 │ SSC-DMLSEQ-SAVE Binary 4(Fullword) 0000 ├──────────┤ │ 409 412 │ SUBSCHEMA-CTRL-END Alphanumeric 4 0000 └──────────┘ * word aligned ** PAGE-INFO-GROUP overlays bytes 125 and 126 and PAGE-INFO-DBK-FORMAT overlays bytes 127 and 128. Both of these fields are binary datatype, each with a length of two bytes. Suggested initial values for both are 00. Together these two fields represent PAGE-INFO.