Duda con estado de consulta
Buenos días a todos, como siempre ultimamente acudo a vosotros para que me echéis una mano con esto de la programación delphi.
A ver si alguien me puede echar una mano con esto. ¿cómo puedo comprobar el estado de una consulta? Por poner un ejemplo, quiero poner un boton que haga lo siguiente: si la consulta esta abierta muestrame unos datos y si esta cerrada otros. Mi problema es que no se representar la sentencia que dice si la consulta está abierta o cerrada. He visto que el componente adoquery, tiene una propiedad llamada state. No se si van por ahí los tiros, pero he intentado hacer algo asi: If (Datamodule.adoquery1.state = dsopen) then ... Pero claro, me da un pedazo de error. Si alguien puede echarme una mano, sería estupendo. Muchas gracias por adelantado. saludos! :D:D |
No sé si es exactamente lo que buscas pero creo que la podrías preguntar por la propiedad active (que es un booleana).
|
No exactamente. Yo no quiero comprobar si la consulta está activa, ya que yo en mi datamodule la propiedad active siempre está a True. Lo que quiero es comprobar si está abierta (open) o cerrada (close).
no se si me estoy explicando correctamente... Gracias de todas formas por la aportación. |
Cierto.
Para la propiedad state, buscando en la ayuda de delphi a mí no me sale el valor dsOpen, sin embargo me aparece dsInactive que es para saber si está "closed", supongo que te valdrá. |
Oleee...Perfecto. Esto es lo que necesitaba.
Muchas gracias. Dos ojos ven mas que uno, yo he mirado en la ayuda pero me debo haber saltado esa parte. Un saludo!.:D |
Cita:
Si miras el código fuente de "Open" y de "Close" verás algo así: En la ayuda dice:"dsInactive -> Dataset is closed, so its data is unavailable" que es equivalente con preguntar:
Por tanto, la primera respuesta de ozsWizzard, es totalmente válida. Si tu consulta está siempre "Active" entonces jamás estará en estado dsInactive. Espero te aclare los conceptos, Saludos |
Muchas gracias por la aclaración. Aún no soy muy experta en delphi. y claro hay conceptos que aún no tengo muy claros.
muchas gracias de nuevo. poco a poco voy avanzando. saludos! |
La franja horaria es GMT +2. Ahora son las 17:20:08. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi