jueves, 31 de enero de 2013

Usando timer para ejecutar un procedure en el server - WebDev 17


"Estoy entrando al mundo de la programación con las herramientas de PCSoft, especialmente ahora enfocado en un proyecto en WebDev 17. Todavía estoy acostumbrándome a dividir el código en Navegador y Servidor, lo cuál no se si es tan bueno como parecía cuando lo leí el manual, ya que existen algunas funciones que no son compatibles en server y browser. Como todavía somos muy pocos los "WebDeveros" que hablan español, lo comparto con ustedes."


Finalmente hice andar un Timer en Web con el código que encontré en un foro francés (como verán, previo curso rápido de francés, jajaja) que te permite "engañar" a WinDev para ejecutar código en el Server, ya que la función Timer,como sabrán, solo te deja ejecutar procedures en el Browser. Les dejo el código y espero que a alguien le sirva, saludos!

1 - Código en el Load (Onload) de la page (Browser)

Timer("ProcTimer",100)

ProcTimer es es el nombre de un procedure browser al que llamaremos en el punto 2
100 es el tiempo de espera para que se vuelva a ejecutar el procedure (= 1 segundo)

2 - Procedure local (Browser)

PROCEDURE ProcTimer()
PageValide("",BTN_Timer)

En el procedure hacemos que se ejecute el código del botón que está en la page, en este caso se llama BTN_Timer.


3 - Code clic en el botón (Server)

Trace(HeureSys())

Ahora si ya podemos ingresar código que se ejecuta en el servidor"!!! Lo verificamos haciendo un trace...

Ejemplo útil: Si cambiamos Trace(HeureSys()) por EDT_Reloj=TimeSys() siendo EDT_Reloj un control campo de texto tenemos un reloj en nuestra página web actualizándose cada 1 segundo!


Si no fui claro o tienen dudas no duden en preguntarme, saludos compañeros!!    Javier

No hay comentarios:

Publicar un comentario