If you Unicode is used on the system then it must be supported, coded and configured on every level:
Unicode is supported by DDS and SQL. In SQL it needs to be declared as GRAPHIC
or VARGRAPHIC
with a corresponding CCSID
.
At the program level the variables need to be defined with a corresponding 'CCSID
' keyword.
dcl-s buffer char(1048576) ccsid(*utf8);
The field in the display file needs to be defined as G
(graphic) with CCSID(13488)
.
The 5250 terminal emulator must support unicode in the data stream. IBM i ACS supports it, see Main Menu → Communication → Configuration → Connection → Unicode Options