Saltar al contenido

¡Transforma tus conexiones en dinero para el final del año con nuestro nuevo Programa de Indicación de Clientes! Descubre más

Procesamiento de esquemas en Jitterbit Integration Studio

Introducción

En determinadas circunstancias, los datos de los esquemas pueden convertirse durante el procesamiento. Esta página describe cuándo y cómo se convierten los datos según el tipo de esquema:

Todos los tipos de esquema

En la mayoría de los casos (las excepciones se indican a continuación), ciertos datos se convierten de la misma manera independientemente del tipo de esquema:

Tipos de datos

Estas secciones describen la compatibilidad de Jitterbit con ciertos tipos de datos según el tipo de esquema. Para conocer todos los tipos de datos compatibles con los Secuencias de comandos de Jitterbit, consulte Tipos de datos en Jitterbit Script.

Tipos de datos de precisión ilimitada

Para la mayoría de los tipos de esquema, los tipos de datos de precisión ilimitada, como el decimal XML, se convierten a double Los tipos de datos tienen un límite de precisión que podría truncarlos.

El límite de precisión se encuentra dentro del rango de los valores mínimo y máximo de un long con signo, que va de –2 147 483 648 a 2 147 483 647. Si está fuera de este rango, considere usar un tipo de dato de cadena para evitar truncarlos.

Tipos de datos no primitivos

Los tipos de datos primitivos boolean, date, double, float, integer, long, y string, y el tipo de datos no primitivo decimal Se admiten en todos los tipos de esquema. Al crear o editar un plano personalizado o jerárquico esquema o editar cualquier esquema cargado en una transformación, estos tipos de datos están disponibles para elegir en el menú desplegable Tipo. Para nuevos esquemas personalizados, otros tipos de datos no primitivos como datetime no son compatibles

Sin embargo, otros tipos de datos no primitivos son compatibles con los esquemas que se generan automáticamente a partir de un esquema generado por conector o se reflejaron desde dicho esquema. Una vez generados, estos esquemas también pueden editarse manualmente en el editor de esquema personalizados. Si el esquema contiene tipos de datos no primitivos, estos también se listan en el menú desplegable Tipo al esquema.

Nombres de campos y nodos

Los nombres de campos y nodos se convierten a espacios de nombres válidos según el estándar XML. Para obtener más información, consulte NCNameChar para conocer los caracteres permitidos según la definición del W3C.

Al reflejar un esquema proporcionado por una base de datos, cualquier carácter especial en un campo de esquema o nombre de nodo se reemplaza por guiones bajos. (_) según sea necesario para crear un esquema XML válido.

Valores nulos

Los campos con un valor nulo se incluyen en el esquema de datos resultante a pesar de no contener datos. Dado que tampoco tienen un tipo de dato definido, se consideran de tipo cadena.

Esquemas CSV

Al utilizar un esquema CSV, se aplican ciertas reglas a los siguientes datos:

Archivos CSV con encabezados

Al proporcionar un archivo CSV con una fila de encabezado como archivo de esquema de muestra, se aplican estas reglas para generar nombres de columnas:

  • Los caracteres especiales se reemplazan con un signo de interrogación. (?).
  • Los espacios se reemplazan con un guion bajo. (_).
  • Si el nombre de una columna está en blanco, se reemplaza con f1, f2, f3, y así sucesivamente.
  • Si el nombre de una columna comienza con un número, se le añade un guion bajo. (_).
  • Si se repite el nombre de una columna, se añade con 2, 3, 4, etcétera.

Caracteres especiales

En estas circunstancias, los caracteres especiales (. _ - $ # @ ?) en esquemas CSV se convierten:

  • Los caracteres especiales presentes en el lado de origen o destino de una transformación se reemplazan por un signo de interrogación (?).
  • Los caracteres especiales en un secuencia de comandos en un campo de destino en una transformación se reemplazan por un signo de interrogación (?) Esta regla también se aplica a cualquier piso personalizado o jerárquico personalizado esquema creado en formato CSV.

Nota

Estas conversiones se limitan únicamente a las estructuras del esquema y no afectan los datos reales.

Esquemas JSON

Al utilizar un esquema JSON, se aplican ciertas reglas a los siguientes datos:

  • Tipos de datos (como se describe arriba)
  • Nombres de campos y nodos (como se describe arriba)

    Precaución

    Cuando el nombre de campo o nodo de un esquema JSON comienza con un número o una @ carácter, ese carácter se reemplaza con un guión bajo _ Por ejemplo, un nombre de campo de 12345 se convierte a _2345, y un nombre de campo de @account se convierte a _account.

  • Valores nulos (como se describe arriba)

Esquemas XML

Al utilizar un esquema XML, se aplican ciertas reglas a los siguientes datos:

Para obtener información sobre cómo solucionar ciertos errores de transformación y esquema XML, consulte Solución de problemas de operación.

Espacios de nombres

Se admiten espacios de nombres en esquemas XML. Si se utiliza más de un espacio de nombres en un esquema XML, el agente Jitterbit convierte el esquema XML en varios archivos XSD durante el procesamiento.

Etiquetas de cierre automático

Las etiquetas de cierre automático en elementos de esquemas XML son compatibles con cierta manipulación del XML de muestra utilizado para generar el esquema. Para enviar el elemento XML en la carga útil sin un valor asignado, puede usar una función y una variable Jitterbit, como se describe a continuación.

Manipular el XML de muestra

Se requiere manipulación cuando un archivo XML de ejemplo utiliza notación abreviada para las etiquetas de apertura y cierre en un elemento como este:

<tag/>

Si se utiliza dicha abreviatura directamente en un esquema XML, no será posible asignar el nodo cuando se lo utilice como esquema de destino de una transformación.

Para resolverlo, manipule el XML de muestra que se utiliza para generar el esquema para expandir las etiquetas de apertura y cierre que rodean el elemento, y proporcione un valor de muestra para que se le asigne un tipo de datos al elemento:

<tag>example</tag>

Luego, el elemento se mostrará como un campo en el esquema XML y, cuando se use como esquema de destino en una transformación, podrás asignarlo a ese campo.

Mapa del campo XML

Si no tiene un objeto o variable de origen para asignar al campo de destino, puede colocar la función Jitterbit Null en el secuencia de comandos de transformación para utilizar como valor asignado:

<trans>
Null()
</trans>

Antes de la transformación que utiliza el esquema XML, configure una de estas variables Jitterbit (según la que sea adecuada para su caso de uso) para controlar lo que se envía:

Caracteres especiales

En estas circunstancias, los caracteres especiales en los esquemas XML se convierten:

  • Los caracteres especiales en un secuencia de comandos en un campo de destino en una transformación se reemplazan por un signo de interrogación (?).

  • Estos caracteres especiales en un campo de esquema XML o en un nombre de nodo no son compatibles, ya que no son compatibles con XML:

    $ # @ ?

Nota

Estas conversiones se limitan únicamente a las estructuras del esquema y no afectan los datos reales.