Power Builder - MESSAGEBOX

   
Vista:

MESSAGEBOX

Publicado por Christian cerb_tach@hotmail.com (5 intervenciones) el 22/12/2011 17:22:10
HOLA AMIGOS, TENGO LA SIGUIENTE FIGURA A VER SI ME AYUDAN:

HAY UNA APLICACION EN POWER BUILDER, EL CUAL EJECUTA A TRAVES DEL RUN .EXE UNA APLICACION MUY EXTERNA A PB (APLICACION DE TERCEROS) EL CUAL CORRE Y EL TIEMPO DE DEMORA ES VARIABLE (ENTRE 1 Y 3 MINUTOS) EL ASUNTO ES QUE LO QUE QUIERO ES SABER EN QUE MOMENTO SE ACABA ESTE PROCESO EXTERNO PARA MANDAR UN MENSAJE AL USUARIO Y DECIRLE QUE SE EJECUTARA OTRO PROCESO.

ACTUALMENTE LUEGO DE EJECUTAR EL RUN .EXE INMEDIATAMENTE MANDA EL MENSAJE DE QUE SE EJECUTARA OTRO PROCESO SIN HACER UN STOP Y SIN ESPERAR A QUE EL PRIMER PASO CULMINE, Y YO LO NECESITO ASI PORQUE EL SEGUNDO PROCESO DEPENDE DEL PRIMERO.
ESPERO ME HAYAN ENTENDIDO EL CODIGO ES MAS O MENOS ASI:

if (FileLength("k:\tempdocumentsV2.txt")>0) then
RUN("k:\DTW.exe -s k:\V2facturasdeordendeventa.xml")
end if

messagebox('Informacion','A continuación se procederá con la 2da fase',information!)

DECLARE procesobancos2 procedure for sp_procesapagosbancoscontinental_fase2pagos;
execute procesobancos2;
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

MESSAGEBOX

Publicado por JeinnerH jhidalgo@excelteccr.com (638 intervenciones) el 22/12/2011 21:46:27
Veamos si esto te sirve.

Lo que puedes hacer es que en lugar de ejecutar el programa directamente ejecutas un .bat, este .Bat manda a ejecutar el programa que originalmente necesitabas ejecutar.

Pero en el .bat, haces algo diferente. En la línea siguiente a la ejecución del programa, puedes ejecutar otro programa hecho por usted, que actualice un campo en la base de datos o que genere el mensaje que necesitas. Si lo que haces es cambiar un campo en la BD, debes estar monitoreando en qué momento este campo cambia, para desplegar el mensaje.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antonio

MESSAGEBOX

Publicado por Antonio (1114 intervenciones) el 23/12/2011 17:42:55
Hola Cristian:

usa este codigo:

OleObject wsh
integer li_rc

CONSTANT integer MAXIMIZED = 3
CONSTANT integer MINIMIZED = 2
CONSTANT integer NORMAL = 1
CONSTANT boolean WAIT = TRUE
CONSTANT boolean NOWAIT = FALSE

wsh = CREATE OleObject
li_rc = wsh.ConnectToNewObject( "WScript.Shell" )

li_rc = wsh.Run("C:\veo\MINIVEO\setup.exe" , NORMAL, WAIT)
Destroy wsh;

A mi me resulto muy bien en XP pero en vista y 7 no me funciono por cuestiones de que debes correrlo como supervisor, pero si logras hacerlo correr en vista y 7 me avisas.

Suerte,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

MESSAGEBOX

Publicado por Christian (5 intervenciones) el 26/12/2011 15:12:00
Hola Jeinner y Antonio gracias x sus respuestas! y aprovecho para desearles Feliz Navidad!

Soy casi novato en esto de Power BUilder puesto que encontre esta aplicación en el trabajo la cual debo modificar, ahora... aunque me parece muy buena la idea de Jeinner creo q me demoraría un poco puesto como les digo no conozco mucho PB, x eso intentare primero lo de Antonio si resulta como dices perfecto! si no intentare lo otro...
Muchas gracias x su ayuda ya les comento como me fue.

Christian
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

MESSAGEBOX

Publicado por CHRISTIAN (5 intervenciones) el 07/01/2012 02:25:47
HOLAS AMIGOS
PROBE CON EL CODIGO DE ANTONIO.
SUCEDE QUE DESPUES DE EJECUTARSE EL WHS.RUN
QUIERO MOSTRAR EL CURSOR DE TIEMPO PARA QUE EL USUARIO SEPA ESPERAR YA QUE ENTRE QUE SE HACE EL DESTROY Y SALE EL SIGUIENTE MENSAJE SE DEMORA UNOS 10 SEGUNDOS PERO PANTALLA INTACTA, ESTO QUIERO CAMBIARLO ESPERO Q SE PUEDA.

LO OTRO ES QUE QUIERO EJECUTAR NUEVAMENTE EL PROGRAMA WHS.RUN PERO NO ME DEJO YA QUE ME SALE UN MENSAJE DE ERROR. "ERR NULL OBJECT REFERENCE" QUIZA SEA PORQUE ESTOY USANDO NUEVAMENTE LAS VARIABLES LI_RC y WSH como hago para usarlas nuevamente??
Gracias x su apoyo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar