Hola a todos.
Necesito ejecutar un bat desde uniface y no parece que me funcione...
He probado el propio bat desde su localización y se ejecuta correctamente.
Desde Uniface, he probado con lo siguiente:
VCFILE = ruta completa de localización del bat , es decir: \\servidor\subcarpetas\
activate "OS".command("cmd.exe /c %%VCFILE%%%stock.bat")
spawn ("c:\windows\sistem32\cmd.exe /c %%VCFILE%%%stock.bat")
también he probado con una ruta más corta, indicando la carpeta del bat ya que está dentro del directorio de la aplicación
VCFILE = ruta completa de localización del bat , es decir: DirBat\
activate "OS".command("cmd.exe /c %%VCFILE%%%stock.bat")
spawn ("c:\windows\sistem32\cmd.exe /c %%VCFILE%%%stock.bat")
¿Alguien puede echarme un cable?
Gracias por anticipado.
Saludos
Ejecutar un bat
Re: Ejecutar un bat
No debería haber ningún problema por lanzar un bat en un \\servidor
Funciona tanto con command como con commandout (lo acabo de probar).
El mecanismo es el siguiente. Uniface está en la carpeta de trabajo del IDE y allí ejecuta lo que se le ordena con el command. Para facilitar el debug, recomiendo hacer algo como
Así se verá exactamente lo que Uniface le ordenará al sistema operativo. Ese mismo string se puede copiar y pegar en una ventana de Símbolo de sistema (usando la misma carpeta de trabajo del IDE). Si se ejecuta en el DOS Prompt, se ejecutará desde Uniface.
También es recomendable entrecomillar el bat
Code: Select all
VC_BAT = "\\LIMBO25\Users\cufiler\performance_oracle.bat"
activate "OS".command("cmd /c %%VC_BAT%%%")
El mecanismo es el siguiente. Uniface está en la carpeta de trabajo del IDE y allí ejecuta lo que se le ordena con el command. Para facilitar el debug, recomiendo hacer algo como
Code: Select all
VCCOMM = "cmd /c %%VC_BAT%%%"
activate "OS".command(VCCOMM)
También es recomendable entrecomillar el bat
Code: Select all
VCCOMM = "cmd /c %%"%%VC_BAT%%%%%"
$status=0 ; se acabaron los problemas
Re: Ejecutar un bat
Hola, sigue sin funcionar.
Posiblemente sea por alguna parametrización de Java
Posiblemente sea por alguna parametrización de Java