Operaciones

Transform

La operación Transform te permite aplicar código JavaScript personalizado para transformar tus datos durante el pipeline de procesamiento. Esta operación se aplica durante la fase de transformación y te permite realizar manipulaciones de datos complejas que no son posibles con operaciones estándar.

Resumen

La operación Transform te permite:

  • Escribir código JavaScript personalizado para manipular tus datos
  • Aplicar transformaciones a todas las entidades en tu conjunto de datos
  • Implementar lógica de negocio compleja para procesamiento de datos
  • Usar todo el poder de JavaScript para modificar valores de campos, crear nuevos campos o reestructurar datos

Configuración

Editor de Código JavaScript

La operación Transform proporciona un editor de código donde puedes escribir funciones JavaScript personalizadas:

  1. El código debe ser una función JavaScript válida
  2. La función recibe registros de datos y debe retornar registros transformados
  3. Puedes usar cualquier característica de JavaScript soportada por la plataforma
  4. La transformación se aplica a todas las entidades en el pipeline

Ejemplos

Transformación Básica de Datos

Para aplicar una transformación simple a todos los datos:

  1. Añade la operación Transform a tu regla
  2. Escribe código JavaScript como:
// Ejemplo: Convertir todas las direcciones de correo electrónico a minúsculas
record.email = record.email.toLowerCase();
return record;

Transformaciones Complejas

Para manipulaciones de datos más complejas:

  1. Añade la operación Transform a tu regla
  2. Escribe código JavaScript que procese registros:
// Ejemplo: Crear un nuevo campo full_name desde first_name y last_name
if (record.first_name && record.last_name) {
  record.full_name = record.first_name + ' ' + record.last_name;
}
// Ejemplo: Calcular edad desde birth_date
if (record.birth_date) {
  const birthDate = new Date(record.birth_date);
  const today = new Date();
  record.age = today.getFullYear() - birthDate.getFullYear();
  const monthDiff = today.getMonth() - birthDate.getMonth();
  if (monthDiff < 0 || (monthDiff === 0 && today.getDate() < birthDate.getDate())) {
    record.age--;
  }
}
return record;

Esta operación proporciona máxima flexibilidad para procesamiento de datos, permitiéndote implementar lógica personalizada que cumple con tus requerimientos específicos.

Tabla de Contenidos