Continuando la serie dedicada a la transformación Conversión de datos y sus consecuencias, la idea que iniciamos hoy es dar pasos hasta conseguir que no se pierda ni un registro, que todos lleguen al Destino, aunque «alguno» (332) quede con el nombre truncado.
Creamos una tarea nueva en el mismo paquete y deshabilito la anterior.
Desde el panel Flujo de datos, luego de agregar el mismo origen con el que estamos trabajando, agregamos a su salida correcta una transformación División Condicional, que se encarga de dividir la muestra en flujos diferentes no duplicados, sino excluyentes según la condición que estemos evaluando (pensemos con IF, IIF, CASE, etc.)
Estamos nuevamente en el Generador de expresiones, vimos algo en Tarea ejecutar aplicación externa con expresiones, en este caso se trata de División Condicional, recordamos que nos ofrece ayuda en cuanto a metadatos, variables y
Vamos construyendo la Condición de comparación.
Mientras escribimos el texto aparece en color rojo y hasta que no esté totalmente correctamente correcta la sintaxis, no estará el texto de la condición escrito en negro, en este caso del ejemplo tenemos dos problemas, falta el elemento a comparar y falta un paréntesis para que cierren las dos funciones LEN y TRIM.
La transformación queda configurada. Como esta transformación tiene una salida predeterminada, hemos decidido aprovecharla para sacar la muestra válida, es decir las «Cortas» y que la salida que hemos creado con la condición saque la muestra mala, las «Largas», que no es lo mismo que salida de error, aquí ambas salidas son correctas, sólo que para nuestro caso las cortas valen y las largas no.
Ejecutamos el paquete tal cual
No hay error, es cierto, aunque también es cierto que hemos perdido el resto de la muestra, no es cierto que todos llegan al Destino. ¿Es esto válido? Claro que si !! Ya les digo, siempre depende de lo que necesitemos en cada caso.
El uso de la Salida “Largas” lo veremos en el próximo escrito. Hasta entonces.