Necesito ejecutar unos cálculos sobre unas bases de datos dentro de un timer.
Esto modifica el órden de los registros y las tablas en uso en ese momento, por lo que si el usuario estaba haciendo otra cosa en ocasiones me da errores por haber cambiado las posiciones del registro en las tablas.
He pensado que una solución podría ser usar un hilo distinto pero no se como trabajar con hilos ni por donde empezar con esto.
O bien, crear un exe para ese proceso del timer y que el programa principal lo mande ejecutar al arrancar y que lo haga minimazado, de modo que para el usuario ese proceso del timer sea transparente y solo vea el del programa principal.
¿Cual piensan que sería la mejor solución?.
Ejecución de código en un timer alterando bases de datos
- Biel EA6DD
- Posts: 680
- Joined: Tue Feb 14, 2006 9:48 am
- Location: Mallorca
- Contact:
Re: Ejecución de código en un timer alterando bases de datos
Abres la tabla en modo compartidos dos veces, con alias distintos. Cada proceso utiliza un alias, y no afecta el hecho de que muevas punteros pues cada alias maneja los propios.
- Silvio.Falconi
- Posts: 4956
- Joined: Thu Oct 18, 2012 7:17 pm
Re: Ejecución de código en un timer alterando bases de datos
sample :
DEFINE TIMER ::oOutLic INTERVAL 20000 OF ::oWndMain ;
ACTION ( ::nTimeLic ++, if ( ::nTimeLic == 4,;
( MsgInfo( "any text" ),Pstart()),))
ACTIVATE TIMER ::oOutLic
Function Pstart()
//here your function to alterate database
return nil
DEFINE TIMER ::oOutLic INTERVAL 20000 OF ::oWndMain ;
ACTION ( ::nTimeLic ++, if ( ::nTimeLic == 4,;
( MsgInfo( "any text" ),Pstart()),))
ACTIVATE TIMER ::oOutLic
Function Pstart()
//here your function to alterate database
return nil
I use : FiveWin for Harbour August 2020 (Revision) - Harbour 3.2.0dev (r1712141320) - Bcc7.30 - xMate ver. 1.15.3 - PellesC