none
Conocer ruta mis documentos RRS feed

  • Pregunta

  • Hola

     

    Existe alguna forma de conocer la ruta de mis documentos de un pc , necesito la informacion para leer un archivo y hacer un bulk insert a una tabla.

     

    Gracias.

    martes, 30 de agosto de 2011 14:51

Respuestas

  • Eso depende del usuario logado, pero supongo que podrías lograrlo con algo como

    CREATE TABLE #exit (t NVARCHAR(MAX))
    
    INSERT #exit
    	EXEC xp_cmdshell 'echo %USERPROFILE%'
    	
    SELECT t + '\My Documents' AS USERPROFILE
    FROM  #exit
    WHERE t IS NOT NULL	
    
    DROP TABLE #exit
    


    martes, 30 de agosto de 2011 15:05
  • Mi recomendación es que no lo hagas de esta forma, debido a lo poco mantenible y posibles fallas que puedan resultar (que pasa si en una pc es utilizada por varios usuarios? Que carpeta Mis Documentos de que usuario tomara), en tu caso creo que lo mejor seria que tuvieras una tabla de configuración, en la cuál pudieras asignar información de este tipo (IP, Ruta, Archivo Fuente, etc) y en caso de futuros cambios no tengas una aplicación con "hard code", sino una solución que pueda ser parametrizada.

    Cualquier duda con gusto te apoyamos.


    "El talento es una disciplina tenaz y una larga paciencia"  Gustave Flaubert

     Email: info@geohernandez.com Blog: geeks.ms/blogs/ghernandez

     

    martes, 30 de agosto de 2011 15:11
  • Complementando lo que dice Geovanny, tu mejor aliado es estandarizar el proceso para que obtengas la información requerida. Y estandarizar requiere que los comerciales se comprometan a que en esa ruta colocarán el archivo Excel, porque si no, no alimentará la tabla y los datos no estarán al día.

    ¿Estás usando SQL Server Integration Services?

    Saludos,

     

     


    Guillermo Taylor F.

    IT Pro & Xbox gamer

    My blog

    martes, 30 de agosto de 2011 20:51

Todas las respuestas

  • Eso depende del usuario logado, pero supongo que podrías lograrlo con algo como

    CREATE TABLE #exit (t NVARCHAR(MAX))
    
    INSERT #exit
    	EXEC xp_cmdshell 'echo %USERPROFILE%'
    	
    SELECT t + '\My Documents' AS USERPROFILE
    FROM  #exit
    WHERE t IS NOT NULL	
    
    DROP TABLE #exit
    


    martes, 30 de agosto de 2011 15:05
  • Mi recomendación es que no lo hagas de esta forma, debido a lo poco mantenible y posibles fallas que puedan resultar (que pasa si en una pc es utilizada por varios usuarios? Que carpeta Mis Documentos de que usuario tomara), en tu caso creo que lo mejor seria que tuvieras una tabla de configuración, en la cuál pudieras asignar información de este tipo (IP, Ruta, Archivo Fuente, etc) y en caso de futuros cambios no tengas una aplicación con "hard code", sino una solución que pueda ser parametrizada.

    Cualquier duda con gusto te apoyamos.


    "El talento es una disciplina tenaz y una larga paciencia"  Gustave Flaubert

     Email: info@geohernandez.com Blog: geeks.ms/blogs/ghernandez

     

    martes, 30 de agosto de 2011 15:11
  • Gracias!
    martes, 30 de agosto de 2011 15:39
  • Pero los usuarios que van a colocar el archivo son comerciales super play, que si les parametrizo una ruta, deberia de mapearsela y luego se convierte en una responsabilidad de soporte.....porque incialmente lo hice asi , pero lamentablemente son usuarios complicados, si ya es dificil que hagan el excel....
    martes, 30 de agosto de 2011 15:43
  • Complementando lo que dice Geovanny, tu mejor aliado es estandarizar el proceso para que obtengas la información requerida. Y estandarizar requiere que los comerciales se comprometan a que en esa ruta colocarán el archivo Excel, porque si no, no alimentará la tabla y los datos no estarán al día.

    ¿Estás usando SQL Server Integration Services?

    Saludos,

     

     


    Guillermo Taylor F.

    IT Pro & Xbox gamer

    My blog

    martes, 30 de agosto de 2011 20:51