Hola Monika,
Parece que tienes un programa heredado que movió un valor de byte (0c) a un campo CHAR. Esto funcionaba en sistemas no Unicode (ya que los campos CHAR y HEX tenían un tamaño idéntico, y 0C era un carácter de control válido), pero no puede funcionar en sistemas Unicode: En un sistema Unicode, un campo CHAR 1 tiene un ancho de 2 bytes. Sin embargo, un campo HEX1 sigue siendo de un byte. Por lo tanto, no puede haber una conversión canónica de CHAR1 a HEX1.
Los caracteres en sistemas Unicode están representados por la codificación UTF-16, que requiere 2 bytes por carácter. Ahora, un 0C en un sistema no Unicode representa un carácter de avance de formulario. En la codificación UTF-16 de un sistema Unicode, un carácter de avance de formulario sería U+000C, que se codifica binariamente como 000C (big-endian, página de códigos SAP 4102) o 0C00 (little-endian, página de códigos SAP 4103), dependiendo de la arquitectura de tu hardware.
Puedes usar un field-symbol para mover los 2 bytes de un campo Type X (¡con longitud = 2!) a un campo CHAR1 en Unicode. Pero asegúrate de usar el orden de bytes correcto para representar tu carácter especial en el campo X.
Saludos,
Alex