PowerBuilder: uso de dos llamadas a la función de temporizador en el mismo evento

Estoy tratando de usar dos llamadas a funciones de temporizador en el mismo evento, una tras otra, de la siguiente manera:

// set up attempt to login again
 Timer(ll_loginDelay(set to 10), this)


// informs server that user is logged in (i.e. does a 'ping')
 Timer(ll_pingRefresh(set to 30), iw_ping)

Uno intenta reintentar el inicio de sesión en un sistema telefónico y se utiliza para actualizar un informe sobre quién inició sesión en un momento dado. Si se establecen en el mismo intervalo, funcionan, si no, el segundo no funciona. ¿Alguna idea de por qué?

Gracias,

tg

preguntado el 10 de mayo de 11 a las 13:05

¿Dónde está este guión? es decir, ¿qué es ESTO? Saber por qué, si se puede saber, depende en gran medida de eso. Además, en la mayoría de los casos, mencionar qué versión de PB está usando puede afectar la precisión de las respuestas. -

2 Respuestas

No está del todo claro por qué está obteniendo este comportamiento, pero poner una funcionalidad no visual como un ping en un objeto no visual como un objeto Timing no solo sería una mejor solución, sino que también podría solucionar su problema.

Buena suerte,

Terry

contestado el 10 de mayo de 11 a las 18:05

Descubrí que usar el objeto del temporizador me sacó de problemas y todo funciona como se esperaba. en cuanto a los dos temporizadores, el intervalo más pequeño del primero fue pisar el segundo sin permitirle disparar. Se ha mencionado que solo puede haber una llamada de temporizador en una ventana, así que quizás ese sea el problema. - TomG

Me alegra ver que lo consiguió TomG. Yo mismo aprendí algo, que PB tiene un objeto de tiempo nativo para heredar elementos no visuales. En todos los años que he usado PB nunca lo supe. - Rich Bianco

Solo puede tener un temporizador para una ventana en particular. Cada vez que llama al evento del temporizador para esa ventana, en efecto, está restableciendo el intervalo del temporizador. Es difícil saber si está usando diferentes ventanas mirando el código que ha proporcionado.

Una segunda cosa a tener en cuenta es que un temporizador de ventana requiere que la ventana esté abierta. Este requisito parece obvio, pero Sybase se propuso mencionarlo en la documentación, así que pensé que lo mencionaría también.

Documentación de SyBooks Online para PowerScript Timers en PB versión 12.

Documentación de SyBooks Online Ejemplo de objeto de temporización no visual.. Este no es el mejor ejemplo porque implica que lo no visual es un tipo de "temporizador" no visual estándar, pero no estaba al tanto de un no visual de ese tipo. Creo que probablemente sea un simple no visual definido por el usuario antiguo, en cualquier caso, esta es otra solución alternativa.

Buena suerte.

Respondido el 01 de junio de 11 a las 10:06

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.