Pierdo dbedit

Tengo el siguiente problema tengo un dbedit apuntando a un datasource y un datafield con un campo, y se muestra perfectamente el contenido de ese campo el dbedit1, también tengo un dbgrid apuntando al datasource, pero al crear una consulta en sql y ejecutarla que si devuelve el campo idventa entre otros campos, y si se muestran en el dbgird que apunta al datasource el cual apunta a su vez a query1, "Pierdo el contenido del dbedit1" que debería tener el contenido del campo idventa, pero al ejecutar el query1 deja de apuntar y verse el contenido respectivo
¿Por qué el dbedit pierde el contenido después de ejecutar el query? ¿Cómo lo puedo recuperar?
Probé asignándole todas las propiedades al dbedit de nuevo pero no resulto
este es un poco el código para graficar un poco
dbedit1.DataSource:=datasource1;
dbedit1.DataField:='idventa';
Dbedit1.text:=(aqui se ve el contenido de idventa pero despues de ejecutar query1 se pierde)
Respuesta
1
Parece un problema con la query. Lo que haces al ejecutarla afecta al contenido del resultado, o al cursor que marca la posición (primero.. n.. ultimo) dentro de la tabla. Prueba con querys separadas, y asegurate de que no haces sql. Clear de más en tu código

2 respuestas más de otros expertos

Respuesta
1
Hi,
Vos sabes que nunca tuve ese problema. Proba haciendo un refresh en el Query1. Y lo principal fíjate si en la consulta pedís que te devuelva el campo IDVENTA. Probá con un SELECT * FROM "Tabla" haber si te aparece el IDVENTA.
Cualquier consulta no dudes en preguntarme.
Nahuelon..
Respuesta
1
Mmmm, lo que se te pierde es el dato, no el DBEdit, JaJa.
Mira evidentemente el problema se suscita al crear el SQL, cosa que no me pasaste, si me lo pasas te miro el código.
Fíjate si no estas usando el método DisableControls sin su correspondiente EnableControls, que hace que los controles no le presten atención a los eventos de actualización y por ende a las actualizaciones de la BD.
Me gustaría ver el código desde que se pulsa el botón o cualquier control, hasta que se ejecute el SQL.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas