Saltar al contenido

Codificación de caracteres y soporte multibyte en Jitterbit Harmony

Introducción

La codificación de caracteres predeterminada para la plataforma Harmony es UTF-8 a partir de la versión 12.7 del agente y la versión 11.63 de Design Studio. En versiones anteriores, la codificación predeterminada es Latin-1 (ISO-8859-1).

Soporte de caracteres multibyte

A partir de la versión 12.9 del agente y la versión 11.65 de Design Studio, Jitterbit ofrece soporte oficial para caracteres multibyte en toda la plataforma Harmony. El portugués, alemán y ruso están certificados como idiomas compatibles.

Áreas compatibles

El soporte de caracteres multibyte incluye, entre otras áreas:

  • Nombres en toda la plataforma, incluidos nombres de proyectos, nombres de operaciones, nombres de entornos, nombres de agentes, nombres de variables globales y de proyecto, nombres de API en API Manager, nombres de campos de esquema, nombres de conectores en Connector Builder, nombres de certificados de cliente, nombres de roles y nombres de organizaciones.
  • Datos de origen de transformación, nombres de nodos de esquema y valores codificados en transformaciones.
  • Contenidos de scripts.
  • Comparaciones de cadenas usando == en scripts de condición.
  • Nombres de archivo al leer o escribir archivos con conectores basados en archivos, incluidos File Share, FTP, Local Storage y Temporary Storage (excepto en agentes privados de Windows a partir de la versión 12.10 del agente; consulta Limitaciones).
  • Columnas de cadena en bases de datos conectadas por ODBC (consulta jitterbit.scripting.db.multibyte.enable).
  • Datos intercambiados con conectores.
  • Asuntos y cuerpos de notificaciones por correo electrónico.
  • Respuestas de API.

Esta lista no es exhaustiva; los caracteres multibyte se admiten en áreas adicionales de la plataforma más allá de las enumeradas anteriormente.

Limitaciones

Los caracteres multibyte no se admiten en las siguientes áreas:

  • Jitterbit Message Queue (JBMQ):

    • Los nombres de colas de mensajes admiten caracteres latinos extendidos (como los utilizados en portugués y alemán), pero no caracteres cirílicos ni chinos.
    • Los entornos de JBMQ con caracteres multibyte en sus nombres no se pueden habilitar en la Configuración de Message Queues de la Consola de administración.
  • Direcciones de correo electrónico de usuario: Las cuentas de usuario de Harmony no se pueden registrar ni crear con una dirección de correo electrónico que contenga caracteres multibyte. Esta es una limitación del servicio de entrega de correo electrónico subyacente.

  • Bases de datos de Microsoft Access: Los caracteres multibyte almacenados en bases de datos de Microsoft Access no se leen correctamente.

  • Ordenamiento de Cloud Datastore: Ordenar registros de Cloud Datastore por un campo que contiene caracteres multibyte no produce el orden alfabético esperado.

  • Nombres de archivo en agentes privados de Windows: A partir de la versión 12.10 del agente, leer o escribir un archivo cuyo nombre contiene caracteres multibyte no se procesa de manera confiable en agentes privados de Windows, usando File Share, FTP, Local Storage o Temporary Storage. Utiliza un agente Linux cuando se requiera un nombre de archivo multibyte.

  • Plugins (obsoleto):

    • Los nombres de plugins no admiten caracteres multibyte.
    • El plugin File Merger no puede procesar archivos con caracteres multibyte en sus nombres de archivo.

Anular la codificación de caracteres predeterminada

Para usar una codificación de caracteres diferente a la predeterminada, se puede establecer explícitamente. Algunos conectores (por ejemplo, File Share, FTP, Local Storage y Temporary Storage) incluyen una opción de configuración para establecer la codificación de caracteres.

Alternativamente, se puede usar cualquiera de las siguientes variables de Jitterbit en un script para establecer la codificación de caracteres:

  • jitterbit.source.db.character_encoding

  • jitterbit.target.db.character_encoding

  • jitterbit.source.text.character_encoding

  • jitterbit.target.text.character_encoding

  • jitterbit.scripting.db.character_encoding

El valor debe ser el nombre o alias del convertidor de página de códigos, como se muestra en el siguiente ejemplo:

$jitterbit.scripting.db.character_encoding="ebcdic-xml-us"