CCSID(*CHAR : *JOBRUN | *JOBRUNMIX | *UTF8 | *HEX | number)

CCSID(*CHAR) sets the default character CCSID used for alphanumeric data definitions in the module.

The default CCSID for alphanumeric definitions specified on definition statements be temporarily changed using the /SET and /RESTORE directives. See /SET.

CCSID(*CHAR:*JOBRUN)
The job CCSID at runtime. If the job CCSID is 65535, the default job CCSID is used.

The character X'0E' will be assumed to be a shift-out character only if the runtime job CCSID is a mixed-byte CCSID.

See Character Format for more information.
CCSID(*CHAR:*JOBRUNMIX)
The mixed-byte CCSID related to the job CCSID at runtime. If the job CCSID is 65535, the mixed-byte CCSID related to the default job CCSID is used.

The character X'0E' will always be assumed to be a shift-out character.

CCSID(*CHAR:*UTF8)
UTF-8; the numeric value of this CCSID is 1208.
CCSID(*CHAR:*HEX)
By default, character data does not have a CCSID. Character variables that are defined without the CCSID keyword cannot be used in CCSID conversions.
CCSID(*CHAR:number)
number must be an alphanumeric CCSID. It can be any single-byte or mixed-byte EBCDIC CCSID, any single-byte or mixed-byte ASCII CCSID, or the UTF-8 CCSID 1208.
When CCSID(*CHAR) is not specified
  • If CCSID(*EXACT) is specified, CCSID(*CHAR:*JOBRUN) is the default.
  • If CCSID(*EXACT) is not specified, character data will be assumed to be in the mixed-byte CCSID related to the job CCSID. If the character X'0E' appears in character data, it will be interpreted as a shift-out character. This may cause incorrect results when character data is converted to UCS-2 data or character data with a CCSID other than the job CCSID.

For information on the CCSID of subfields of externally-described data structures and data structures defined with the LIKEREC keyword, see CCSID(*EXACT | *NOEXACT).

For information on the CCSID of character literals, see CCSID of literals and compile-time data.