type new isdate invalid for example entre diferencia data convert argument sql-server tsql ssis

sql server - new - función isdate en el componente derivado ssis



sql server new date (5)

¿Hay alguna forma de verificar la columna Fecha (como función isDate en TSQL) en la expresión de columna derivada del paquete SSIS después de la extracción de Sourcefile antes de cargarla en la base de datos de destino?

Gracias


Hay una tarea de conversión de datos que puede incluir. A continuación, redirija las filas según sea necesario, ya sea que falle la importación por completo o redirigiendo las filas que no funcionan.

O podría intentar una división condicional donde emite el campo a un tipo de datos de fecha y luego enviar los fallos a lo largo de otra ruta (ya sea eliminar los registros o anular el campo sería la acción común).


no hay una función integrada, pero puede ejecutar una tarea de script y usar el código de vb.net para verificar si la columna es una fecha y operarla como lo desee ...


Tuve un problema similar. Tenía una fecha / hora en un archivo de texto, pero el campo tenía una carrera entre la fecha y la hora. Creé una columna derivada para hacer un reemplazo en el tablero:

REPLACE([TimeField], "- ", "")

Luego agregué una columna de conversión para convertir el campo en una fecha. Elegí ignorar los errores. Luego agregué otra columna derivada para verificar si el campo convertido era NULL, lo que indica que no pudo convertir el valor. Si lo fuera, lo tenía configurado en la fecha actual.


Puede verificar si su variable tiene una fecha o no usando una declaración condicional como esta:

testDateVariable?true:false

Por ejemplo, si date > 2 entonces es true (y ponga la fecha, o formatee la fecha como desee). Si es false , ponga nulo (reemplaza verdadero con el formato de fecha y falso con nulo).

Todo esto está en una columna manejada en SSIS.