|
Lamentablemente no conozco los IBExpress, pero utilizar dbExpress es muy sencillo (por eso lo utilizo en bastantes programas).
Como bien dices no puedes conectar directamente una grid a un SQLQuery, para hacerlo necesitas poner un ClientDataset de intermediario. NOTA: Necesitas también un DatasetProvider para actuar de intermediario entre el SQLQuery y el ClientDataset. Ambos componentes se encuentran en la pestaña "Data Access".
En definitiva el SQLQuery no hace más que leer los datos de la base de datos.
Se añade un DatasetProvider para poder pasar esos datos a un ClientDataset.
Finalmente se añade un ClientDataset que mantiene esos datos en memoria, por lo que puede hacer movimientos .Next, .Prior, .etc. ..., y por lo tanto se puede conectar a la Grid.
Es un poco engorroso puesto que tienes que añadir dos componentes más de lo normal, pero es muy útil, y al final tienes los datos en un ClientDataset que es un componente fantástico, y tiene muchas opciones para manejar tus datos en memoria (aplicar filtros, mantener campos de agregado, etc. ...).
Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
|