Generar Numero Aleatorio
Buenas, he visto muchos ejemplos de como generar números aleatorios, pero tengo un pequeño problema que no se como solucionar a ver si pueden ayudarme. Tengo que generar un numero aleatorio el cual pertenece a una determinada estación de servicio (1-N), pero puede darse el caso de que M estacion(es) este(én) fuera de servicio por x razón (comiendo, vacaciones, permiso,etc) por lo cual no debe ser tomada en cuenta para la generación del numero. Para presentar las estaciones utilice un TDBCtrlGrid (con su estatus) pero no se como solucionar el problema de generar el numero. si me pueden en caminar a una posible solución se los agradeceré. Gracias de antemanos por cualquier ayuda.
Utilizo Delphi 7 con Mysql. |
Hola steelha.
Supongamos que tu tabla se llama ESTACIONES y tiene dos campos ID y ACTIVA, identificador y estado de la estación respectivamente, también que el estado:
Llamada ejemplo:
Saludos :) |
Muchas gracias ecfisa por responder, he copiado y modificado el código para adaptarlo pero aun así obtengo un error de :
Project GeneradorTicket.exe raised exception class EDatabaseError with message 'qryEstacioens:Field'ID' not found'. Process stopped. Use step or run to continue. No entiendo el porque si el campo existe en la tabla : ID Descripcion Activo Online Adaptacion del codigo
|
Hola steelha.
Mirando tu código, yo tampoco me explico ese error si el campo ID existe y con ese nombre... Por si estuvieras utilizando el mismo componente en otra parte del código, intenta salvando y restaurando la consulta original:
Saludos. :) |
Verificando puse en comentario las lineas
y me funciona no da ningún error |
Hola steelha.
Es extraño... Y mas aún cuando en el código que comentaste (desactivaste) no existe referencia alguna al campo ID. Para salir de toda duda acabo de hacer una pequeña prueba en Firebird. Cree la tabla: Le cargué 500 registros de prueba: Y usando la función del mensaje #2: No genera ningún tipo de error y funciona a la perfección. ¿ Segura que el error se produce en la función ? Saludos :) |
Ok daré una revisada general al programa a ver que referencia puede estar haciendo al momento
Cualquier cosa borro y empiezo desde cero gracias. |
Muchas gracias por la ayuda ecfisa, no se porque no quería funcionar lo que hice fue crear otro query donde especifique el select count con la variable Max_reg y partir de hay funciono :) cosas extrañas, creo que el espiritu maligno de Bill Gate andaba por ahí...luego paso el código completo. Chanfle si me olvidaba nunca dije para que se utilizara. Es un sistema de llamada de cola (Atención al cliente), donde existen N representantes y X personas en cola las cuales se asignan al azar o manualmente dependiendo a cada representante. Este turno va a una cola de llamada la cual sera anunciada por altavoces y mostrada a su ves en una pantalla. En los momentos de ocio (Cuando no se esta llamando), se estará presentando una series de video definidas en una tabla. Bueno esa es la idea que presente espero me salga todo bien especialmente con la ultima parte. Gracias por la ayuda, la cual seguiré necesitando :)
|
La franja horaria es GMT +2. Ahora son las 15:24:44. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi