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 brinda 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, incluyendo 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 fuente de transformación, nombres de nodos de esquema y valores codificados en transformaciones.
  • Contenidos de scripts.
  • Comparaciones de cadenas utilizando == en scripts de condición.
  • Nombres de archivo al leer o escribir archivos con conectores basados en archivos, incluyendo File Share, FTP, Local Storage y Temporary Storage.
  • Columnas de cadena en bases de datos conectadas por ODBC (ver 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 son compatibles en áreas adicionales de la plataforma más allá de las enumeradas anteriormente.

Limitaciones

Los caracteres multibyte no son compatibles en las siguientes áreas:

  • Cola de mensajes de Jitterbit (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 pueden habilitarse en la Configuración de Message Queues de la Consola de administración.
  • Direcciones de correo electrónico del usuario: Las cuentas de usuario de Harmony no pueden registrarse o crearse 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 contenga caracteres multibyte no produce el orden alfabético esperado.

  • Nombres de herramientas del servidor MCP: Un nombre de herramienta creado en un servidor MCP no admite caracteres multibyte. Esta es una restricción de la especificación de nombres de herramientas del Protocolo de contexto de modelo, no una limitación específica de Jitterbit. Los nombres de los servidores MCP en sí no se ven afectados.

  • Complementos (deprecated):

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

Anular la codificación de caracteres predeterminada

Para utilizar 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 pueden utilizar 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 del convertidor de página de códigos o un alias, como se muestra en el siguiente ejemplo:

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