Se me ocurre que puedes usar ClientDataSets:
Debes primero inlcuir el paquete MyBase en tu aplicación y colocar un ClientDataSet y un Provider en tu formulario.
A la propiedad DataSet del provider le asignas el Query y a la propiedad ProviderName del ClientDataSet le asignas el Provider.
Ya en código ejecutas:
Código:
ClientDataSet.Open; // Asigna los datos del Query al ClientDataSet
ClientDataSet.SaveToFile('resultados.cds'); // Guarda los resultados
Después, para ver los resultados en un dbGrid basta que uses otro ClientDataSet (sin Provider) y ejecutes el método
Código:
LoadFromFile('resultados.cds');
El ClientDataSet es como cualquier otro DataSet y lo puedes asociar a un DataSource y éste a un dbGrid para ver sus registros.
// Saludos