Otros temas que te pueden interesar
|
||||
| Tema | Autor | Foro | Respuestas | Último post |
| [Componente] Cómo usar el Timer | orlando | PowerCOBOL (ActiveX, v4 - v11) | 3 | 1 de febrero de 2021 21:14 |
| [Sintaxis] Uso Equivalente al Timer | Anthony | AcuCobol | 6 | 25 de marzo de 2019 19:40 |
| [Sintaxis] Cancelar proceso en bucle desde otro Form | Fito | PowerCOBOL (ActiveX, v4 - v11) | 2 | 29 de agosto de 2017 00:58 |
| [Sintaxis] PowerCOBOL 7 crear archivo Excel con varias hojas | drvedia1981 | PowerCOBOL (ActiveX, v4 - v11) | 2 | 10 de abril de 2017 16:34 |
| [Sintaxis] Evento Timer de más de 65535 ms | Josber | PowerCOBOL (ActiveX, v4 - v11) | 4 | 8 de junio de 2016 16:19 |
![]() |
|
Moderador Global
![]()
|
Tengo un Timer a 1001 milisegundos, y lo necesito en un proceso, que toma la fecha y la hora del sistema para crear unos códigos únicos con un bucle, una vez creado el primero, activo el timer, todo dentro de un bucle perform, y vuelvo a cargar la fecha y hora, así hasta el final. Dento del evento del timer, lo único que tengo es la desactivación del timer, el resto es desde un botón, pero no me funciona el timer, ¿puede ser que no se pueda usar el timer por estar dentro de un perform?
Un saludo.- |
||||||||
|
|
|
|
Administrador
![]()
|
Josber, según entiendo, si en el evento Timer no tienes nada, ¿intentas que haga una especie de pausa en tu PERFORM? Si es así, no va a funcionar, porque par la "pausa" hay que ejecutar el código dentro del evento Timer.
NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro. ![]() ¿Te han ayudado? NO TE OLVIDES de darle a ![]() ¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick |
||||||||
|
|
|
|
Moderador Global
![]()
|
Sí kuk, eso es lo que necesito, tengo una rejilla, que puede contener uno o mil registros, a esos registros hay que crearles un campo que es el que creo con la fecha y la hora, por lo que necesito que se cree cada campo con, al menos, un segundo de diferencia, para que no tengan el mismo valor un campo con el anterior.
Lo que hace la rutina es leer la rejilla desde el primero hasta el último con un perform, y dentro del evento timer, se crea el código que necesito y se actualiza la rejilla informando que ese campo se ha creado, pero no funciona. Éste es el código que uso: Código COBOL:
Un saludo.- |
||||||||
|
|
|
|
Administrador
![]()
|
Josber, por lo pronto, que yo sepa puedes usar FUNCTION CURRENT-DATE o ACCEPT FROM TIME y ambos te sacan los milisegundos. En cuanto al timer, sí que va a funcionar. Lo que debes hacer es lo siguiente:
Defines tus CONTA como GLOBAL en la WORKING del Form. En el botón (o donde tengas el inicio del proceso) haces: Código COBOL:
En el Timer haces: Código COBOL:
Pero de todos modos, hacer esperar al cliente 1000 segundos por ello me parece un poco demasiado. Creo que si lo haces con el bucle cogiendo los milisegundos obtendrás valores diferentes. En el peor de los casos, mete en el bucle una llamada a la WinAPI "Sleep" pasandole 1 milisegundo y tema resuleto ![]() NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro. ![]() ¿Te han ayudado? NO TE OLVIDES de darle a ![]() ¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick |
||||||||
|
|
|
|
Guardián del Foro
|
Hola Amigos !!!!, el timer corre independiente del perform, es como te dice fito, o por lo menos es lo que me parece a mi también, yo tomo la hora de 8 dígitos, Horas-Minutos-Segundos-Centésimas. Según el código que pusiste el Habilitar o no el timer no detendrá el proceso.
Saludos Hrm |
||||||||
|
|
|
|
Moderador Global
![]()
|
A ver, al final he hecho lo de aceptar la fecha/hora, sumar 1 a un contador y fuera, Kuk, ya no he probado lo que has puesto, pero estoy con Fito y Hrmcobol, me da que el timer corre independientemente del perform, o por lo menos esa es la experiencia que he tenido.
Kuk, en cuanto a hacer esperar al cliente 1000 segundos, no es así, son milisegundos, osea 1 segundo por cada registro y como normalmente no son más de 100 registros, no hay problemas por eso. Todo viene porque se "olvidan" de introducir un código de barras EAN-13, y para que no esté repetido, lo calculo con la fecha, en formato AAMMDDHHMMSS, que suman doce más el dígito de control, así me aseguro de que nunca haya uno repetido, de ahí venía el tener que hacer una pausa de 1 segundo entre registro y registro. Un saludo y gracias a todos.- |
||||||||
|
|
|
![]() |
|
|
| Archivo - Cobol Foro | Contactar con Nosotros - Cobol Foro | |||||||