Add Type List (QteAddTypeList) API
Required Parameter Group:
1 | Source region number | Input | Binary(4) |
2 | Type entry buffer | Input | Char(*) |
3 | Number of type entries | Input | Binary(4) |
4 | Format name | Input | Char(10) |
5 | Error code | I/O | Char(*) |
Service Program: QTECRTVS
Threadsafe: No
The Add Type List (QteAddTypeList) API is used to add the type information associated with the symbols defined in a specific source region. Each type in the type list needs to be assigned an identifier. The identifier should be unique within the adding type list. Symbols can specify their type information by referring the type identifier.
Each source region can only contain one type list and the type list should be added once, in one call to this API. For this reason, the type information must be build up in a buffer as the preprocessor produces its output. When all the type information for the source region is collected, it can be supplied to this API.
Authorities and Locks
None.
Required Parameter Group
- Source region number
- INPUT; BINARY(4)
The number of the source region which this type list belongs to. The source region should be added previously via QteAddSourceRegionDescription API.
- Type entry buffer
- INPUT; CHAR(*)
The input variable containing the type list associated with the symbols defined in the specified source region.
- Number of type entries
- INPUT; BINARY(4)
The number of entries in the type entry buffer.
- Format name
- INPUT; CHAR(10)
The format name of the information supplied by the calling program in the type entry buffer parameter.
The valid values for format name are:
TYPFMT0100 Used to add symbol type information.For more information, see TYPFMT0100 Format.
- Error code
- I/O; CHAR(*)
The structure in which to return error information. For the format of this structure, see Error code parameter.
TYPFMT0100 Format
Offset | Type | Field | |
---|---|---|---|
Dec | Hex | ||
0 | 0 | BINARY(4) | Type |
4 | 4 | BINARY(4) | Type ID |
8 | 8 | BINARY(4) | Type length |
12 | C | CHAR(16) | Variant type information |
Field Descriptions
Type. The type described by the type entry. It may be one of following:
Value | Enumeration | Description |
---|---|---|
0 | kNoType_T | Type is not valid. |
1 | kCLOB_T | Character large object. |
2 | kDBCLOB_T | Double byte character large object. |
3 | kBLOB_T | Binary large object. |
4 | kLOB_LOCATOR_T | Large object locator. |
5 | kCHAR_T | Fixed-length character strings. |
6 | kVARCHAR_T | Varying-length character strings. |
7 | kGRAPHIC_T | Fixed-length graphic strings. |
8 | kVARGRAPHIC_T | Varying-length graphic strings. |
9 | kBINARY_T | Fixed-length binary strings. |
10 | kVARBINARY_T | Varying-length binary strings. |
11 | kDATE_T | Date. |
12 | kTIME_T | Time. |
13 | kTIMESTAMP_T | Timestamp. |
14 | kROWID_T | Row ID values. |
15 | kDATALINK_T | DataLink values. |
16 | kXML_T | XML Values. |
Type ID. The identifier assigned to this type. It is unique within the type list and its value should be non-zero.
Type length. The length of one type entry in the type entry buffer. Its value is in bytes.
Variant type information. The type information specific to different types. It occupies 16 bytes for each type and the details are described in section Variant type information format.
Variant Type Information Format
Variant Information for kCLOB_T, kCHAR_T, kVARCHAR_T
Offset | Type | Field | |
---|---|---|---|
Dec | Hex | ||
12 | C | BINARY(4) | Type flag |
16 | 10 | BINARY(4) | CCSID |
20 | 14 | CHAR(8) | Reserved |
Field Descriptions
Type flag. Flags defined to indicate the type attributes. The format of the 32 bit flags are depicted follow.
0 | ...... | 28 | 29 | 30 | 31 |
Currently the flags can be divided into two categories:
Content flags:
Content flags occupy the Bits 29 – 31. Following values are defined for content flags.
Value | Enumeration | Description |
---|---|---|
0x00000007 | kContentMask_F | Content mask flag |
0x00000000 | kSBCS_F | Single byte character data |
0x00000001 | kMIXED_F | Mixed character data |
0x00000004 | kUNSPEC_F | Unspecified content flag |
Normalization flags:
Normalization flags occupy the bit 28. Following values are defined for normalization flags.
Value | Enumeration | Description |
---|---|---|
0x00000008 | kNormalizationMask_F | Normalization mask flag |
0x00000000 | kNormalized_F | Data is normalized |
0x00000008 | kNonNormalized_F | Data is non-normalized |
The flags defined in different categories can be combined together with bitwise or operation.
CCSID. The CCSID of the data content. Value 0 indicates the data is of job CCSID.
Variant Information for kDBCLOB_T, kGRAPHIC_T, kVARGRAPHIC_T, kDATALINK_T, kXML_T
Offset | Type | Field | |
---|---|---|---|
Dec | Hex | ||
12 | C | BINARY(4) | CCSID |
16 | 10 | CHAR(12) | Reserved |
Field Descriptions
CCSID. The CCSID of the data content. Value 0 indicates the data is of job CCSID.
Error Messages
Message ID | Error Message Text |
---|---|
CPF3C21 E | Format name &1 is not valid. |
CPF3CF1 E | Error code parameter not valid. |
CPF3CF2 E | Error(s) occurred during running of &1 API. |
CPF9549 E | Error addressing API parameter. |
CPF9CA2 E | Source region not correct. |
CPF955B E | Number of entries not valid. |
CPF9CA9 E | Type identifier &1 is duplicated. |
CPF9CAA E | Source region already contains type list. |
CPF9556 E | API not valid at this time. |
CPF955D E | View data overflow. All debug data lost. |
API introduced: V7R3
[ Back to top | Debugger APIs | APIs by category ]