Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Problema con sp_OAMethod en objeto FSO

Estas en el tema de Problema con sp_OAMethod en objeto FSO en el foro de SQL Server en Foros del Web. hola tengo un problemón, resulta que estoy tratando de copiar un archivo a otra unidad de disco mediante el Procedimiento de Sql Server "sp_oaMethod" con ...
  #1 (permalink)  
Antiguo 24/10/2005, 13:53
Avatar de Punktruka  
Fecha de Ingreso: enero-2005
Ubicación: Santiago, Chile
Mensajes: 215
Antigüedad: 19 años, 3 meses
Puntos: 0
Problema con sp_OAMethod en objeto FSO

hola tengo un problemón, resulta que estoy tratando de copiar un archivo a otra unidad de disco mediante el Procedimiento de Sql Server "sp_oaMethod" con el cual creo un objeto Scripting.FileSystemObject, y a éste le coloco el método "CopyFile".

Según SQL la sintaxis que debo ocupar para este sp seria:
Código:
sp_OAMethod objecttoken, 
                   methodname 
                   [ , returnvalue OUTPUT ] 
                   [ , [ @parametername = ] parameter [ OUTPUT ] 
                   [ ...n ] ]
y yo en mi sintaxis tengo:
Código:
declare @objeto2 int
DECLARE @ruta varchar(8000)
DECLARE @ruta2 varchar(8000)
declare @Param1 varchar(8000)
declare @Param2 varchar(8000)
declare @Param3 varchar(8000)

set @ruta='c:\xml_'+@CodUbic+'.xml''
set @ruta2='d:\'

EXEC SP_OACREATE 'scripting.filesystemobject', @objeto2 OUT 
EXEC SP_OAMETHOD @objeto2, 'copyfile', @ruta output, @Param1=@ruta, @Param2=@ruta2, @Param3='true', 1
entonces se supone que despues de @ruta output, debo pasar los parámetros que ocupa el método CopyFile(los estoy tratando de pasar como @param1,2 y 3), pero ésto no se como se hace.
favor alguien que me ayudeeeee porque me tiene chata este problema porfiiisssss.
__________________
y nada más
porke el cielo ya está de nuevo torvo y sin estrellas kon helikópteros y SIN DIOS....
  #2 (permalink)  
Antiguo 24/10/2005, 15:10
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Nunca he utilizado esa forma de llamadas, pero...

¿No te sirve una llamada a xp_cmdshell?
Código:
EXEC xp_cmdshell 'copy ' + @rutaorigen + ' ' + @rutadestino
También haría el trabajo.
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #3 (permalink)  
Antiguo 25/10/2005, 06:19
Avatar de Punktruka  
Fecha de Ingreso: enero-2005
Ubicación: Santiago, Chile
Mensajes: 215
Antigüedad: 19 años, 3 meses
Puntos: 0
hola, muchas gracias por responder.
bueno antes ya había probado con el xp_cmdshell, pero por un problema de servidor de acá me denegaba los permisos de escritura, por eso ahora estaba tratando con el sp_OAMethod, bueno me funcionó el este último pero igual no me dejaba escribir en el otro servidor, así que generé un .bat para copiar el archivo despues de crearlo, y ahora sip me funciona.

la sintaxis que ocupé en el SP_OAMETHOD, es esta (por si a alguien le sirve)
Código:
EXEC SP_OAMETHOD @objeto2, 'copyfile', null, @RutaOrig, @RutaDest
__________________
y nada más
porke el cielo ya está de nuevo torvo y sin estrellas kon helikópteros y SIN DIOS....
  #4 (permalink)  
Antiguo 25/10/2005, 13:33
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Seguramente el problema sea por el usuario que está corriendo el servicio del SQL Server y del Agent. Si usas un usuario de la red (con acceso al otro servidor) no tendrás ese problema.

De cualquier forma, ya has logrado solucionar el problema
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:37.