Antes de comenzar
Define primero la regla: recortar espacios de name, cambiar exactamente jorge por Jorge y conservar únicamente name y amount. No es una regla general de capitalización. Usa un CSV de laboratorio con cabecera, codificación UTF-8 y un destino independiente. Prepara permisos y un runtime compatible antes de probar.
No necesitas una expresión SQL para ese cambio literal. Para una regla general de primera letra mayúscula, Clean text ofrece capitalize; para cada palabra, title. Este ejemplo conserva deliberadamente la regla exacta con Replace values. Calculated field interpola texto y no ejecuta LEFT ni fórmulas.
Procedimiento
- Añade Flat File input con
format=csv,delimiter=,yhasHeader=true. Revisa nombres y cabecera. - Añade Clean text con
fields=["name"]yoperations=["trim"]. Así el valor con espacios puede coincidir con la regla exacta posterior. - Conecta Replace values y configura
field=name,find=jorge,replacement=Jorge,matchMode=exact,caseSensitive=true. - Añade Field selector con
fields=["name","amount"]. Este paso elimina las demás columnas del esquema y de cada fila. - Conecta Flat File output con
includeHeader=truey un nombre de prueba. Valida, guarda y publica; prepara la Session y el Workflow para ejecutar.
Ejemplo sintético
Entrada:
name,amount,internal_note
jorge ,12.5,sample-a
ana,8,sample-b
Salida esperada:
name,amount
Jorge,12.5
ana,8
El orden es intencional: Trim antes de Replace values. La regla no cambia ana ni convierte importes; si necesitas números tipados, añade Convert type y define su política de error.
Comprobar el resultado
Comprueba dos filas, cabecera con solo name,amount, reemplazo de Jorge y conservación de Ana. La columna internal_note no debe aparecer. El destino CSV escribe el esquema recibido: su nombre de archivo no selecciona campos.
Para comprobar valores obligatorios puedes añadir Required fields con fields=["name"] y maxInvalidPercent=0. Esa comprobación falla toda la ejecución ante una fila inválida; no rellena valores ni elimina registros. No añadas controles sin decidir cómo quieres tratar sus errores.
Resolver problemas
Si no reemplaza, revisa espacios, mayúsculas, nombre de campo y matchMode. Si salen columnas extra, inspecciona el Mapping guardado y la versión vinculada, no supongas que Field selector conserva campos no seleccionados. Si solicitas capitalización general, especifica esa regla como requisito distinto; no presentes este reemplazo como solución universal. Antes de repetir una carga real, comprueba idempotencia y destinos. Un ejemplo correcto no establece una política financiera de precisión o redondeo.