none
BulkInserT archivo continuo CSV RRS feed

  • Pregunta

  • Buenos dias, tengo un archivo en CSV continuo, es decir solo separa campos por ; no separa las columnas. Ej:

    2017-01-01;01:08:38;VE-9-DIARIO;Success;2017-01-01;01:10:33;CR-2-DIARIO;Success;2017-01-01;01:44:59;VE-1-DOCUMENTOS-VE;Success;2017-01-01;01:51:00;VE-1-MENSUAL;Success;2017-01-01;02:07:06;VE-1-DIARIO;Success;2017-01-01;02:15:46;CR--DOCUMENTOS;Warning;2017-01-01;02:17:43;VE-9-SEMANAL;Success;2017-01-01;02:20:27

    No tiene retorno de linea al final de los 4 campos que tiene mi tabla, quisiera saber como poder cargarlo ya que al intentar hacerlo muestra un error por que no consigue como pasar a la siguiente columna. 

    Saludos.

    viernes, 21 de abril de 2017 15:40

Respuestas

  • Presumo que estás intentando cargar el archivo con SSIS (si estás usando el asistente para importar, puedes decirle en el paso final que te genere un paquete para SSIS). Podrías insertar antes de la tarea de flujo de datos una tarea de Script, y en el Script leer el fichero, cambiar ";2017" por salto de línea seguido de "2017", y volver a salvar el fichero. Esto presume que todas tus fechas son de 2017; si no es así, habrá que buscar otro truco. En caso necesario podrías usar un Regex. En resumidas cuentas, el Script quedaría más o menos así:

    string contenido = System.IO.File.ReadAllText(@"c:\ruta\fichero.csv");

    contenido = contenido.Replace(";2017", "\r\n2017");

    System.IO.File.WriteAllText(@"c:\ruta\fichero.csv", contenido);

    viernes, 21 de abril de 2017 19:47