![]() |
Validar celda de DBGrid
Hola, tengo un problema para validar una celda de un DBGrid, el caso es el siguiente:
Tengo un DBGrid conectado a una tabla temporal DBF que cuando la salvo me la guarda en una base de Interbase. Pues bien, es una factura y cuando el cursor pasa por la columna de Precio quiero validar que no permita un precio en cero, si utilizo el evento GridColExit tengo lo siguiente: {Valida que no pueda pasar con precio cero} if Grid.SelectedField = DetalleEditPrecio then begin //primero valida que esté en la columna de precio if DetalleEditPrecio.Value = 0 then begin raise Exception.Create('Esta procesando una partida con precio Cero'); end; end; Sin embargo, siempre manda la excepción, quiero entender que cuando sale el cursor de la columna aún no se guardan los datos en la base temporal y siempre lo lee como cero, quisiera saber la forma de leer directamente el valor de la celda del grid y no del campo de base de datos, a través de Grid.Columns.Items o algo así, ojalá me haya dado a entender y alguien me pueda ayudar. Gracias y saludos a todos. |
Programa la validación en el evento OnValidate del Dataset que tengas conectado, por ejemplo:
- Mi DataSet se llama Tabla1 y quiero que no deje en cero en campo llamado valor, entonces usaría el evento OnValidate del campo "Valor" asi:
Espero te sirva ;). |
Listo Johnny, resuelto el problema, no había pensado en ese evento pero ya solucioné esa parte.
Te lo agradezco mucho. Saludos. |
Cita:
|
La franja horaria es GMT +2. Ahora son las 09:34:19. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi