En este grupo En todos

Foro de SQL Server



Error BCP para generar archivos planos

Damián
Ingenieria de sistemas universidad ind...
Escrito por Damián Garcés Páez
el 31/08/2010

Buenas tardes, quisiera saber si ustedes me pueden colaborar, basicamente mi problema es parecido que el de Isabel Correa, les comento:

Yo tengo un sp, que me genera un archivo plano, el cual no tengo problemas al generarlo siempre y cuando se cree en la misma maquina donde esta mi sp en el sqlserver, el problema radica cuando yo le doy que lo guarde en una ruta de otro equipo.

Por ejemplo si normalmente guardo el archivo plano en C:\Carpeta_Archivo_Plano\, pero al cambiar esta ruta por

Damián Garcés Páez
Ingenieria de sistemas universidad ind...
Escrito por Damián Garcés Páez
el 31/08/2010

\\192.168.1 . 45\Carpeta_Archivo_Plano\ Es donde me genera el error que dice:

Error = [Microsoft][SQL Native Client]BNo se puede abrir el archivo de datos host BCP.

Aclaro que la carpeta ya esta creada en esa direccion y esta como carpeta compartida


Basicamente la tarea de generar los archivos planos en el sp es la siguiente:

SELECT @Ruta = Valor from OCP_parametros where Parametro = 'RutaArchPlanoAuditoria'
SET @FileNameAudi = REPLACE( @ruta + 'OCP_' + @ConsecutivoArchivoPlano + '_' + CONVERT(char(8),GETDATE(),1) + '_' + @CodigoProveedor + '. Txt','/','-' )
SET @bcpCommandAudi = 'bcp "SELECT Nombre from Boyaca.. OCP_Temporal " queryout "'
SET @bcpCommandAudi = @bcpCommandAudi + @FileNameAudi + '" -c -t, -T -S'
EXEC master.. Xp_cmdshell @bcpCommandAudi

Donde @Ruta es la ruta que les mensione anteriormente que se encuentra en una tabla de parametros


Mcts Isaias Islas González
Distrito Federal, Mé...
Escrito por Mcts Isaias Islas González
el 31/08/2010

El usuario que ejecuta el BCP. EXE, debera tener permisos sobre la carpeta compartida, de lo contrario, simpre tendras se problema, la ruta deberia ser algo como:

\\RutaServidor\Compartido\archivo. Txt

Damián Garcés Páez
Ingenieria de sistemas universidad ind...
Escrito por Damián Garcés Páez
el 31/08/2010

Pues no se si te refieres al usuario con que me contecto al sql server, por que me conecto con usuario sa, o si es el con el que arranca el sql server, mire en servicios y es el Servicio de red y SERVICIO LOCAL