Da musst du die Programme wohl eher auf SQL umstellen, da die Nativeunterstützung ein Problem darstellt.
Bei ILERPG kannst du für die CHAR-Variablen eine Default-CCSID definieren, da i.d.R. deine Variablen mit CCSID(*HEX) definiert sind.
https://www.ibm.com/support/knowledg...hccsidchar.htm

CCSID(*CHAR:*JOBRUNMIX) könnte eine Option sein. Jeder Move/Eval führt zu einer Konvertierung, u.U. mit Verlust "?" wenn Zeichen inkompatibel sind.
Es kommt halt auf einen Versuch an.
Wenn der Compiler Probleme macht müssen u.U. Konvertierungen per %char(UCS2Var) oder %UCS2(CharVar) eingesetzt werden.

COBOL unterstützt ebenso Unicode.
Die Variablen müssen als NATIONAL definiert sein, was zumindest bei COPY-DDx automatisch passiert.
Problematisch sind da halt Work-Variblen, bei denen ein Konvertierung oder Neudefinition gemacht werden muss.
Default wird CCSID 13488 verwendet, mman kann mit der Umwandlungsoption NTLCCSID(1200) auch UTF16 verwenden. Dies kann auch in der PROCESS-Anwesiung in der COBOL-Quelle angegeben werden.
Für Konvertierungen in COBOL gibt es dann die Funktionen NATIONAL-OF (Char to National) und DISPLAY-OF (National to Char).