Trigger Ontimer a complemento PingPong

A partir de la versión de Dynamics NAV 2013, todos los desarrollos que los programadores hemos realizado en el trigger OnTimer de un formulario, tenemos que adaptarlo al nuevo complemento de control llamado PingPong.

En este articulo, veremos paso a paso como tenemos que usar el complemento e introducirlo en su lugar, para poder seguir utilizando temporalizadores en las versiones posteriores en caso de que nos haga falta.

Tenemos por ejemplo, un formulario que cada x tiempo revisa si hay algún cliente que no tiene el campo e-mail indicado en su ficha, y en ese caso muestra un mensaje. En anteriores versiones seria algo como esto:

En las nuevas versiones hay que añadir en la page el control PingPong, como se muestra en la imagen:

Hay que indicarle un nombre, nosotros le ponemos PingPong, y le indicamos en las propiedades el ControlAddIn al que hace referencia. 

El código que teníamos en el trigger Ontimer ahora se mueve a un nuevo activador, PingPong :: Pong. Hay que tener en cuenta que el nuevo temporizador no funciona de la misma manera. 

El método utilizado es similar al que se usa en Cola de Proyectos, donde se utiliza la función de suspensión en lugar de un temporizador regular. Al ejecutar Currpage.PingPong.Ping (1000), se inicia una nueva ejecución que duerme durante 1000 milisegundos y luego lanza PingPong :: Pong. De ahí el nombre del complemento. Cuando se haya ejecutado todo el código introducido en este disparador, se requiere de otro Ping para lanzar el siguiente.

También os indico que si la aplicación solo usa un temporizador todo funciona correctamente, pero si ya tiene un PingPong funcionando, y se lanza un siguiente PingPong, no funciona. Tenedlo en cuenta..

Espero que os sirva de ayuda.

Para mas información no dude en ponerse en contacto con ABD Informática, S.L.

Saludos 🙂