Get Encoding Scheme, Character Set, and Code Page Elements (CDRGESP, QTQGESP) API


  Required Parameter Group:

1 CCSID1 Input Int(4)
2 N1 Input Int(4)
3 N2 I/O Int(4)
4 ES Output Int(4)
5 CSCPL Output Array of Int(4)
6 FB Output Feedback

  Default Public Authority: *USE

  Threadsafe: Yes

The most frequently accessed elements of a CCSID are the Encoding Scheme and the CS/CP elements. The function returns the value of the encoding scheme (ES) associated with CCSID1 in ES, and the values of CS and CP elements in CSCPL.

Authorities and Locks

None.


Required Parameter Group

CCSID1
INPUT; INT(4)

This variable contains the CCSID value referenced; a positive number in the range 1 to 65,533.

N1
INPUT; INT(4)

This variable contains the size of the allocated area starting at CSCPL to contain the returned data. N1 is specified as a number of elements, each CS/CP pair is counted as 2 elements. It is an even number greater than or equal to 2.

N2
I/O; INT(4)

This variable contains the number of values (each pair of CS and CP is counted as two values) associated with CCSID1 and returned in CSCPL providing that sufficient space (N1) was allocated. The first invocation of this function must have N2 initialized to zero.

ES
OUTPUT; INT(4)

This variable contains the ES value associated with CCSID1. It is a positive number in the range 4352 to 65,534.

CSCPL
OUTPUT; Array of INT(4)

Start of the area to contain the CS/CP elements returned. Each element is a pair of Binary(4) values. For each pair, the first value is the character set and the second value is the code page.

FB
OUTPUT; FEEDBACK

The function returns, in this feedback array, the processing status (and any associated reason) for this function; field type: array of three 32-bit two's complement binary values (12 bytes, or 96 bits); the status code is a non-negative number in the first 16 bits, and the reason code is a non-negative number in the second 16 bits. The following are specific meanings of the status code and associated reason code values (in Hex) contained in the first 32 bits of FB:


Feedback Codes and Conditions

Status Reason Meaning
0000 0000 The function completed successfully.
0001 0001 CCSID1 value is not in the CCSID resource repository.
0002 0001 CCSID1 value is 0, which is reserved for indicating a default in a hierarchy. The caller must resolve the default before calling this function.
0003 0001 CCSID1 is 65,535.
0004 0001 The allocated length (value of N1) for the area to contain returned values was insufficient to contain all the output data that is to be returned.
0005 0002 N2 is greater than N1. However, the start of the next block of data to be returned is outside the valid range 1 to N2max.
0005 000A N2 is less than or equal to N1, but is not 0.
0006 0001 The CCSID resource repository was not found.
0006 0002 The CCSID resource repository is currently unavailable.
0007 0001 The system CCSID resource repository accessed by the function was found to be incorrect in the structure.
0007 0004 There was no ES element definition in the CCSID resource for CCSID1.
0007 0006 There was no definition for CS, CP elements in the CCSID resource for CCSID1.
0008 0001 CCSID1 value is not in the range 0 to 65,535.
0008 0002 N1 value is greater than the maximum allowed in this implementation, or N1 is odd.
0008 0003 N1 is less than 2.


Usage Notes

  1. The maximum number of (CS, CP) values depends on the ES. Most CCSIDs have only one pair of (CS, CP) values. A calling function can set N1 to 32, to accommodate up to 16 pairs of (CS, CP) values without overflow.

API introduced: V2R2

[ Back to top | National Language Support APIs | APIs by category ]