Delphi - Refrescar Query

 
Vista:

Refrescar Query

Publicado por irreal (15 intervenciones) el 26/03/2003 09:50:27
Tengo en un formulario un grid asociado a una query y unos campos edit sin asociar a nada para hacer camboios en la tabla.

En problema que tengo es que doy de alta los registros y no se actualizan en el grid.

Para conseguir que los actualice lo que hago es tras añadir desactivo la Query y la vuelvo a activar. Funciona pero me parece poco profesional.

¿A que estoy en lo cierto?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Refrescar Query

Publicado por Fer (269 intervenciones) el 26/03/2003 10:24:53
No, no estás en lo cierto. Por alguna razón la clase TQuery tiene ese comportamiento y nos obliga a cerrar y volver a cerrar para ver los datos "frescos".
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Refrescar Query

Publicado por Ernesto D'Spirito (706 intervenciones) el 26/03/2003 18:15:11
Interpreto que tienes un TQuery, que es lo que muestras en el DBGrid, y que además tienes un TTable, que es en el que agregas los registro. En ese caso, desde luego, si quieres ver los registros nuevos agregados a la tabla en el DBGrid, tendrás que volver a ejecutar la consulta.

Ahora bien, si la consulta es actualizable, mejor pon la propiedad ReadOnly de la consulta en False y directamente añade los registros en el mismo TQuery y así se verán directamente en el DBGrid sin necesidad de refrescar la consulta.

Si la consulta no es actualizable, puedes usar el mecanismo de las actualizaciones cacheadas (Cached Updates) para que igual puedas modificar la consulta como en el caso anterior.

Típicamente las consultas actualizables son aquellas que se basan en una sola tabla y que no tienen datos agrupados (GROUP BY), aunque esta regla varía según del proveedor.

Espero que te sirva.

Ernesto D'Spirito
http://www.latiumsoftware.com/es/index.php
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar