Presentar formulario mientras se ejecuta un proceso


([N2] overall) #1

Buenos días,

Le estoy dando vueltas, pero no consigo hacerlo. Quiero presentar un formulario mientras se ejecuta un proceso, ya que no quiero tener al usuario en vilo sin saber que es lo que pasa viendo el relojito. También lo podría aplicar para según que importaciones.

Alguien sabe como hacerlo?

Saludos

Overall


([N4] mconde) #2

Por qué no pruebas con una cesta?

Son "refrescadas" automáticamente y puedes meter ahí los mensajes del tipo "facturando albarán 1 de x"

Creo recordar que en alguna Open App de la versión 7.2 está implementado.

Un saludo


([N2] overall) #3

Gracias Mario,

La verdad es que lo único que quiero es presentar un formulario (ej. "Enviando mensaje" ó "Facturando albarán"). Es un mensaje que se presenta en un periodo de tiempo corto, no para largas esperas.

SAludos y gracias

OVerall


([N1] JorgeVelasco) #4

Buenas overall.

Así a bote pronto podrías llamar a un formulario y en este formulario tener un evento con un timer que ejecute tu proceso y que acepte la interfaz. Así te saldrá el formulario, y se quedará en pantalla hasta que acabe el proceso.

Habría que probarlo pero podría servir. Un formulario sin origen que llame desde un manejador de objetos y así decidir el mensaje que quiero sacar y que tenga un evento con un timer que dispare distintos procesos. Algo asi podría servirte.

Un saludo.

 

 


Jorge Velasco Fernández

THE SEED SOFTWARE COMPANY


([N2] overall) #5

Hola Jorge,

Ya lo he probado, pero cuando disparo el formulario, el proceso que lo llama queda a la espera a que sea aceptado. No consigo disparar un formulario y que el procesa siga su curso.

Alguna idea?

Saludos

Overall


([N1] JorgeVelasco) #6

Buenas overall.

He hecho una prueba fácil:

Me he creado un formulario sin origen y con un timer.

Le he metido un evento con un for desde 1 a 10000 y al final le he puesto interfaz:Aceptar. Ejecuto ese evento desde el timer

Ese formulario lo llamo desde un proceso mediante los comandos de interfaz

Ese proceso está en un botón de un menú principal.

Lo ejecuto y me sale el formulario mientras ejecuta el evento. Cuando acaba me cierra el formulario.

Como lo estás haciendo tu?

Un saludo.

 

 


Jorge Velasco Fernández

THE SEED SOFTWARE COMPANY

 


([N4] velavisual) #7

@overall

 

Otra alternativa podría ser:

 

- Creas una acción que contenga como comando -Ejecutar proceso en 2º plano-

- Como Objeto, el proceso a ejecutar

- Como Objeto 1, una cola de procesos definida previamente.

- Puedes mostrar la cola de procesos activos

 

Claro, hay que indicarle al usuario lo que es una cola de procesos en segundo plano


([N2] overall) #8

Hola Jorge,

La operación que hago es la siguiente:

- He creado un formulario sin origen y con un timer (al formulario le he puesto el timer a 5000)

- He creado un eventConect con la señal timer que lanza el evento.

- El evento creado tiene una condición sobre una variable global, que si es 1, lanza "Interfaz: aceptar"

Desde el formulario principal que llama al form anterior:

- Es un formulario con origen ficha que al aceptar ejecuta un evento.

- Este evento llama mediante el manejador de Objetos a un proceso (lo hago así, por que le paso unas cuantas variables, que después me devuelve otras variables con las que modifico los campos de la ficha del formulario).

-En este proceso, al principio, llamo al formulario sin origen, que tiene que desaparecer cuando el proceso finalice. Pero mientras el formulario sin origen está en pantalla el proceso queda parado.

SAludos y gracias

Overall


([N1] JorgeVelasco) #9

Buenas overall.

Claro, se te queda el proceso parado porque desde el proceso llamas al formulario y después ejecutas el resto de instrucciones. Osea, muestra el formulario, esper que se cierre y sigue ejecutando el proceso.

Como se me ocurrió antes, que habría que ver si así lo podíras hacer, es ejecutar el proceso desde el formulario. Así éste se te queda en pantalla hasta que acabe el proceso que está ejecutando gracias al timer.

Habría que saber exactamente lo que haces para ver si se podría hacer.

Un saludo.

 

 

Jorge Velasco Fernández

THE SEED SOFTWARE COMPANY

 


([N2] overall) #10

Ok, voy a ver si puedo ingeniármelas.

Gracias Jorge

OVerall