Javier,

Ni idea de powerbuilder pero igual es la forma de llamar al bat ("restore 
cereza.bat") que encima tiene espacio en el nombre.
Si admite cadenas con comilla simple prueba a cambiar .-

li_resultado = Run( "D:\Sistemas\Cereza\restore cereza.bat", Minimized! )

por .-

li_resultado = Run( 'cmd /C"D:\Sistemas\Cereza\restore cereza.bat"', Minimized! 
)

--
Xavi

Javier Ochoa escribió:


Hola, tengo el siguiente problema, porque será?

Tengo un archivo en bat que es el que me hace el restore.

Esto es lo que hace el bat:

@echo off

SET PGPASSWORD=cereza

C:\Archiv~1\PostgreSQL\8.1\bin\pg_restore.exe -i -h localhost -p 5432 -U cereza -d cereza -c "D:\BackUp\backup_cereza.backup"

Si ejecuto ese archivo bat desde el explorador de Windows se hace perfecto.

Si lo ejecuto desde el sistema me da un error

Error while processing TOC.

Error from TOC entry 1900

Etc

Etc

Etc

Asi muchas entradas mas.

Por que???

Aca les paso el código donde llama al archivo bat para hacer el Restore.

El programa esta hecho en powerbuilder.

Integer li_resultado

li_resultado = Run( "D:\Sistemas\Cereza\restore cereza.bat", Minimized! )

If li_resultado = 1 Then

Messagebox( "Información","Restore Realizado con Éxito", Information!, Ok! )

Else

Messagebox( "Error","Problemas al realizar el Restore", StopSign!, Ok! )

End If

Agrego que también utilizo el mismo código, solo que llama a otro bat, para hacer el backup y funciona perfecto.

Muchas gracias por su ayuda-

--
TIP 8: explain analyze es tu amigo

Responder a