El post que buscas se encuentra eliminado, pero este también te puede interesar

Pre Load Genexus (Versiones viejas)

Hola amigos TARINGUEROS, cómo están?, yo bien cómo siempre por acá aportando útiles pequeñeces.

Hoy les traigo algo que hace mucho que implemento en mis aplicaciones web hechas con Genexus y que hace bastante que quiero compartirlo con uds, pero por fiaca nunca lo hago. Les cuento que antes de implementar eso busqué mucha información y NUNCA dí con la tecla. Bueno vamos a los BIFES....

Voy a realizar un ejemplo donde muestro la ejecución de un web panel con un botón que éste lo único que hace es llamar a otro web panel utilizando la versión 9.0. Pero lo mágico de todo esto que les voy a mostrar es que mientras se carga el web panel que es llamado se muestra una pantalla hermosa de LOADING para hacer nuestras aplicaciones mas bonitas.

Primero que nada vamos a crear un archivo JavaScript con una función para mostrar el siguiente cartel de espera:
(Guardar el archivo .js archivo dentro de la carpeta "WEB"
Pre Load Genexus (Versiones viejas)

Va código personalizado a mi gusto:
Javascript dijo:
function loading() {
waitHeight = 100;
waitWidth = 500;
waitMessage = document.createElement('div')
waitMessage.id = 'divWM';
waitMessage.height = waitHeight;
waitMessage.width = waitWidth;
waitMessage.style.backgroundColor = "#ffffff";
waitMessage.style.zIndex = "300";
waitMessage.style.position = "absolute";
waitMessage.innerHTML = '<table bgcolor="#0099FF" width="' + waitWidth + '" height="' + waitHeight + '" border="5" cellspacing="0" style=position:absolute;border-color:#09F;>
<tr valign="middle" bgcolor="#FFFFFF">
<td align="center">
<table bgcolor="#FFFFFF" border="0px" cellspacing="0px" width="100%" >
<tr>
<td width="20">
<td align="center" bgcolor="#FFFFFF"><font face="Verdana" color="#999999" size=5>Procesando, por favor espere...</font></td>
<td align="center" valign="middle" width="50" bgcolor="#FFFFFF" ><img src="Img/wait.gif" height="50" width="50" /></td>
<td width="20"></td>
</tr>
</table>
</td>
</tr>
</table>';


t = (document.body.clientHeight - waitHeight) / 2;
l = (document.body.clientWidth - waitWidth) / 2;

waitMessage.style.left = l;
waitMessage.style.top = t;

document.body.appendChild(waitMessage);
waitMessage.style.display = 'inline';
return true;
}


La propiedad innerHTML está adaptada para generar el cartel que les mostré arriba, uds pueden adaptarlo a su manera y gusto personal.
Les dejo la imagen que yo utilicé:
Programacion

Bueno ahora vayamos a la programación en Genexus.

No importa el control que utilicemos para realizar nuestro evento en el Event Start, hay que asignarle la función creada creada en el JavaScript al evento JS "OnClick" y al Form asignarle el nombre del archivo *.js. Al hacer Click sobre el control se estará ejecutando nuestra función antes de realizar cualquier acción, por lo que mientras que se realizan esas acciones se mostrará el cartelito de espera.

Les dejo un videito que hice de como se vería esto en Genexus:

link: http://www.youtube.com/watch?v=EJ6wZrL9Meo


Espero les sirva de mucha ayuda en sus aplicaciones web hechas en Genexus.

Comentar me hace feliz

<<[[Mikol Be]]>>

1 comentario - Pre Load Genexus (Versiones viejas)

jeffsandes
Tenía que ser Mikol! un capo! grande... gracias