Explico lo que estoy haciendo , es un filtro .
El dxDBGrid (el grid de Developer Express) , se asocia a un dataset vacio , creado en memoria , se llena la primera columna con los nombres de la base de datos , la segunda columna con las condiciones , por ejemplo , empieza por ... , mayor que ... ,etc... y en la tercera columna el usuario escribe el código por el que quiere escribir .
Así pues aparece un grid vacio , el usuario habre un desplegable en la primera celda de la primera columna y aparecen todos los nombre por los que puede filtrar , luego en la segunda abre otro desplegable donde apareceran todos las condiciones y en la tercera ya no hay desplegable sino simplemente el usuario edita el valor a dar .
Por ejemplo
cantidad mayor que .......
fecha igual a ...
Dirección contiene ...
Esto ya esta conseguido , la idea es pues si elige una fecha que sólo escriba formato fecha (esto esta conseguido) , si elige un integer que sólo escriba números (también esta conseguido) y si elige un numerico (float, currency ,etc...) que pueda escribir sólo número decimal hasta dos .
Es decir , hago que el grid funcione como 2 combobox y en TEdit y a medida que va añadiendo filas , pues es como si añadiera abajo otro combobox donde esta los nombres de la base de datos , otro donde esta la condición y un TEdit donde el usuario escribe el valor .
La pregunta seria identica que si dijera , como puedo hacer que un edit , unas veces valga para fecha , otras para integer y otras para número . Eso sí las 2 primeras (fecha e integer ) estan resueltas y funcionan bien .
bueno , esto es a modo decorativo ,que tampoco es tan importante , lo que si es de vital importancia es el post que he puesto en el foro de base de datos .
Un saludo
|