All statements that involve moving data between items and/or literals of class NCHAR obey the rules given for such moves under
the General Rules below.
Category of Sending Item |
Category of Receiving Data Item |
Alpha-numeric |
NCHAR |
NCHAR-EDITED |
NCHAR with JUSTIFIED |
Alpha-numeric |
See Note |
Yes/G1 |
Yes/G4 |
No/S2 |
NCHAR |
Yes/G2 |
Yes/G3 |
Yes/G4 |
Yes/G5 |
NCHAR-EDITED |
No/S1 |
No/S1 |
No/S1 |
No/S1 |
NCHAR with JUSTIFIED |
Yes/G2 |
Yes/G3 |
Yes/G4 |
Yes/G5 |
Note: Class Alphanumeric is specified in this table as an illustration of the usage of single-byte or group data items. For details
of MOVE operations involving only single-byte data items refer to the topic The MOVE Statement. For details of MOVE operations mixing single- and double-byte data item, refer to the following information and the table
above.
Syntax Rules
- The sending data item must not be of category NCHAR-EDITED.
- If the receiving data item is of class NCHAR and the JUSTIFIED clause is specified, the sending data item must be of class
NCHAR.
General Rules
- If the sending data item is of class alphanumeric or alphabetic and the receiving data item is of class NCHAR then the single-byte
characters in the source are converted into the equivalent double-byte characters in the target. DBCS characters in the source
are moved unchanged into the target.
If a receiving data item is a different size from the sending data item, the data that is stored in the receiving item is
truncated or padded on the right with DBCS spaces.
- If the sending data item is of class NCHAR and the receiving data item is of class alphanumeric, then the hexadecimal values
in the source are moved, unchanged, to the target data item on a byte by byte basis.
If a receiving data item is a different size from the sending data item, the data that is stored in the receiving item is
truncated or padded on the right with SBCS spaces.
- If the sending data item is of class NCHAR and the receiving data item is also of class NCHAR, then the values in the source
are moved, unchanged, to the target data item on a byte by byte basis.
If a receiving data item is a different size from the sending data item, the data that is stored in the receiving item is
truncated or padded on the right with DBCS spaces.
- If the sending data item is of class alphanumeric, alphabetic or NCHAR and a receiving data item is of category NCHAR-EDITED,
editing is carried out on that receiving data item.
If a receiving data item is a different size from the sending data item, the data is stored in that receiving item and truncated
or padded on the right with DBCS spaces.
If the sending data item is of class alphanumeric or alphabetic, the hexadecimal values of the single-byte characters in the
source are converted to the equivalent double-byte characters in the target. DBCS characters in the source are moved unchanged
into the target.
- If the sending data item is of class NCHAR and the receiving data item is class NCHAR with the JUSTIFIED clause specified,
then the values in the source data item are moved, unchanged, to the target data item on a byte by byte basis.
When a receiving data item is described with JUSTIFIED clause and the sending data item is larger than the receiving data
item, the leftmost characters are truncated. When the receiving data item is described with the JUSTIFIED clause and it is
larger than the sending data item, data is aligned at the rightmost character position in the data item with DBCS spaces padding
from the leftmost character positions.