Índice

Search

  1. Prólogo
  2. Introducción a las transformaciones
  3. Puertos de transformación
  4. Memorias caché de transformaciones
  5. Transformación del validador de direcciones
  6. Transformación de agregación
  7. Transformación de asociación
  8. Transformación de excepción de registros incorrectos
  9. Transformación de conversión de mayúsculas y minúsculas
  10. Transformación de clasificador
  11. Transformación de comparación
  12. Transformación de consolidación
  13. Transformación de enmascaramiento de datos
  14. Transformación del Procesador de datos
  15. Transformación de decisión
  16. Transformación de excepción de registros duplicados
  17. Transformación de expresión
  18. Transformación de filtro
  19. Transformación de jerárquica a relacional
  20. Transformación de Java
  21. Referencia API de transformación de Java
  22. Expresiones de Java
  23. Transformación de incorporación
  24. Transformación de generador de claves
  25. Transformación de etiquetador
  26. Transformación de búsqueda
  27. Memorias caché de búsqueda
  28. Memoria caché de búsqueda dinámica
  29. Transformación de macro
  30. Transformación de coincidencia
  31. Transformaciones de coincidencia en el análisis de campos
  32. Transformaciones de coincidencia en el análisis de identidad
  33. Transformación de normalizador
  34. Transformación de fusión
  35. Transformación de analizador
  36. Transformación de Python
  37. Transformación de rango
  38. Transformación de lectura
  39. Transformación de relacional a jerárquica
  40. Transformación de consumidor de servicio web REST
  41. Transformación de enrutador
  42. Transformación de generador de secuencia
  43. Transformación de ordenación
  44. Transformación de SQL
  45. Transformación de estandarizador
  46. Transformación de unión
  47. Transformación de estrategia de actualización
  48. Transformación de consumidor de servicio web
  49. Análisis de mensajes SOAP del servicio web
  50. Generación de mensajes SOAP del servicio web
  51. Transformación de media ponderada
  52. Transformación de ventana
  53. Transformación de escritura
  54. Apéndice A: Delimitadores de transformación

Guía de transformaciones de Developer

Guía de transformaciones de Developer

Conversión de tipo de datos

Conversión de tipo de datos

Una transformación Java convierte tipos de datos de de
PowerCenter
en tipos de datos Java según el tipo de puerto de la transformación Java.
Cuando una transformación Java lee filas de entrada, convierte los tipos de datos del puerto de entrada en tipos de datos Java.
Cuando una transformación Java escribe filas de salida, convierte los tipos de datos Java en tipos de datos del puerto de salida.
Por ejemplo, el siguiente procesamiento tiene lugar en un puerto de entrada con el tipo de datos Integer en una transformación Java:
  1. La transformación Java convierte el tipo de datos Integer del puerto de entrada en el tipo de datos int primitivo de Java.
  2. En la transformación, esta trata el valor del puerto de entrada como un tipo de datos int primitivo de Java.
  3. Cuando la transformación genera la fila de salida, convierte el tipo de datos int primitivo de Java en el tipo de datos Integer.
En la siguiente tabla se muestra cómo la transformación Java asigna tipos de datos de de
PowerCenter
a tipos de datos Java primitivos y complejos:
Tipo de datos de Developer tool
Tipo de datos Java
array*
java.util.List
bigint
long
binary
byte[]
date/time
Con procesamiento de nanosegundos habilitado, BigDecimal con precisión al nanosegundo
Con procesamiento de nanosegundos deshabilitado, long con precisión al milisegundo (número de milisegundos desde el 1 de enero de 1970 00:00:00.000 GMT).
decimal
Con procesamiento de alta precisión deshabilitado, double con precisión 15.
Con procesamiento de alta precisión habilitado, BigDecimal
double
doble
entero
int
map*
java.util.Map
string
String
struct*
Clase Java Bean personalizada con establecedores y captadores para los elementos de campo de estructura
text
String
*Compatible solo en el motor de Spark.
En Java, los tipos de datos java.util.List, java.util.Map, String, byte[] y BigDecimal son tipos de datos complejos. Los tipos de datos double, int y long son tipos de datos primitivos.
En Developer tool, los tipos de datos array, struct y map son tipos de datos complejos.
La transformación Java define los valores nulos en tipos de datos primitivos como cero. Puede usar los métodos API isNull y setNull en la ficha
En entrada
para definir valores nulos en el puerto de entrada como valores nulos en el puerto de salida. Para un ejemplo, véase setNull.
El tipo de datos decimal se asigna a BigDecimal cuando se habilita la alta precisión. BigDecimal no se puede usar con algunos operadores, como el operador
+
. Si el código Java contiene una expresión que usa un puerto decimal o un puerto complejo con un elemento de un tipo de datos decimal y el puerto se usa con uno de los operadores, el código Java no se podrá compilar.