Saber si el registro de un dgbrid tiene algun campo vacio
Bunas tardes!!!
Esta consulta la veo un tanto pava, pero la verdad no se como hacerla.. Tengo una grilla conectada a un dbQuery, la cual me muestra varios registros, los campos son los siguientes: Cita:
Por defecto tal botón esta en enabled:=False. Trabajo con Delphi 7, utilizo sql y motor de base de datos Firebird. Muchas gracias de antemano, espero puedan ayudarme, sigo disponible para cualquier consulta por si no se ah entendido mi petición.. Saludos!!! |
mas detalles
Perdón, me olvide detallarles que el dbgrid esta conectado a un dbQuery de la tabla AGENDA_TURNOS. Pero el campo PACIENTE viene de otra tabla, que es la tabla PACIENTES, es decir que estoy utilizando un campo virtual en el Query, por lo tanto, a mi criterio para realizar lo que necesito, tendría que trabajar directamente con los id (clave). La tabla AGENDA_TURNOS tiene la clave foránea ID_PACIENTE..
Muchas gracias.. |
Encontré una posible solución que no es acorde a lo que estaba pidiendo, pero también sirve..
Lo que realice fue agregar 3 botones: TODOS: muestra absolutamente todos los registros que estén en ESTADO:=0; es decir que estén dados de alta. LLENOS: muestra solo los registros que tienen el campo PACIENTE cargado. VACÍOS: muestra solo los registros que no tienen el campo PACIENTE cargado.. Entonces si la grilla solo muestra los registros que tienen el campo PACIENTE vacío, se habilita el botón Agregar, asignándole la propiedad Enabled:=True; Les paso el código para cada botón, para que realice el filtro. Botón TODOS:
Botón LLENOS:
Botón VACIOS:
Espero a alguien le sirva.. igual acepto respuestas sobre alguna otra solución o sobre lo que pedi primeramente, siempre es útil y me puede servir para otro caso o este mismo.. Muchas gracias. |
Hola Vales.
Respondiendo a tu primer pregunta (que un botón se habilite/deshabilite de acuerdo a si un campo está vacío o no), podrías utilizar el evento AfterScroll del query:
Saludos. |
El Query lo tengo colocado en un Data Module, como hago para poder llamar al boton? porque no me deja usarlo
|
Hola Vales.
Tendrías que anteponer el nombre del TDataModule, por ejemplo:
Saludos. |
Claro, eso esta bien porque yo en el código siempre hago referencia a los querys y dataset con el datamodule.
Mi problema es que no puedo poner el nombre del botón en el código que me pasaste, porque no me lo reconoce y es obvio porque esta ubicado en un formulario distinto del datamodule.. No se si me logro explicar? En el data module estoy haciendo referencia a un boton que no existe en el mismo. Muchas gracias por tu ayuda!! |
Cita:
Hacé así:
Un saludo. |
Ahh perfecto, apenas lo pruebe te comento que tal me fue..
Disculpa por no haber sido clara en la pregunta.. Muchas gracias!! |
No tenés por que disculparte, la confusión fué mia.
Aquí: Cita:
Saludos.:) |
La franja horaria es GMT +2. Ahora son las 23:37:32. |
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