Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   no se me actualizan los datos en el dbgrid (https://www.clubdelphi.com/foros/showthread.php?t=34587)

yeison Cristman 14-08-2006 22:04:40

no se me actualizan los datos en el dbgrid
 
hola a todos Dios les bendiga

estoy usando SQL server, Adoquery. me sucede lo siguiente es que tengo un formulario de alumnos en el cual ingreso los datos de los mismos y tengo otro formulario de consulta de alumnos y no me aparecen en el bdgrid los que entro en el formulario de alumnos y cuando borro uno del formulario de alumnos no se me borrar del dbgrid imnediatamente sino que tengo que cerrar la aplicacion y cuando la vuelvo a abrir entoces sucede el cambio no se que hacer ya le puse el codigo de refrescar en el formulario de alumnos en el boton de guardar se que en ese formulario lo hace bien pero en el dbgrid no, ademas de eso tengo un edit el cual me hace una busqueda de alumnos y cuando le escribo algo trata de buscarlo y cuando le borro lo que escribi actualiza el dbgrid y me aparecen los datos que ingrese en el formulario de alumnos... que debo hacer

Jesucristo es el mismo ayer, hoy y siempre....

Carliviris 14-08-2006 22:17:27

tu has probado utilizar esto al momento en que tu eliminas el registro:

Código Delphi [-]
gridMain.DataSource.DataSet.Refresh;

lo has hecho?? A mi me funciona perfectamente en todos los sistemas que tengo. Y yo elimino, agrego, modifico y todas esas cosas.

pruebate bien a ver.

yeison Cristman 14-08-2006 22:47:47

explicame algo mas
 
hola es Yeison

si el boton de guardar y borrar estan es un formulario y el dbgrid esta en otro como me refiero a el. excusame la pregunta es que soy novato..
lo tengo de esta forma presta atencion..

esto es en el formulario de alumnos. el boton de guardar.
procedure TF_Estudiantes.BitBtn2Click(Sender: TObject);
begin
ADOQUERY_ESTUDIANTE.Post;
ADOQuery_Estudiante.Refresh;
dbgrid_consulta.Datasource_Consulta.dataset.refresh;

me da un error diciendo que no he declarado el dbgrid_Consulta y asi es como en realidad se llama.

si le añado esto me el siguiente error.
F_Consulta.dbgrid_consulta.Datasource_Consulta.dataset.refresh;

y me dice que no he declarado el DataSource_Consulta.

dime si tengo que explicarme mejor estoy dispuesto

Carliviris 14-08-2006 22:57:36

tu has puesto esto:

Código Delphi [-]
dbgrid_consulta.Datasource_Consulta.dataset.refresh;

si te fijas bien, nunca te podria funcionar porque a la propiedad datasource le estas poniendo al lado "_consulta" osea, te deberia de quedar de la siguiente forma:

Código Delphi [-]
dbgrid_consulta.Datasource.dataset.refresh

chequeaste bien la diferencia??
de todos modos, chequeate nueva vez el nombre del grid.
de que manera programas??
no utilizas las teclas ctrl + alt ??
eso te sirve para que no te equivoques a la hora de escribir tu codigo y te referencia e identifica directamente a un componente que si existe, con los nombres debidos, sin errores.

pruebate eso

yeison Cristman 14-08-2006 23:09:56

mas problemas
 
quiero saber si debo poner

F_Consulta.DBGrid_Consulta.DataSource.DataSet.Refresh;

F_Consulta es el nombre del formulario donde esta el dbgrid o solo colocarlo como tu me dijiste

Carliviris 14-08-2006 23:20:15

si lo estas haciendo desde otro formulario debes de poner F_Consulta si no, no hay porque

yeison Cristman 14-08-2006 23:28:05

me un error
 
me dice que Class EoleExcepction With message "el valor Clave de esta fila se cambio o elimino en el almacen de datos, a continuacion se eliminara la fila local". le puse el codigo en el boton de guardar que tiene el siguiente codigo
AdoQuery_Estudiante.post;
F_consulta.DBGridConsulta.DataSource.DataSet.Refresh;

Carliviris 14-08-2006 23:39:44

pero tu estas grabando algo y eso que grabas quieres que se te aparezca en el grid??. No tiene porque fallarte. Puedes intentar con esto tambien :

Código Delphi [-]
Data.qrRnc.Requery();

eso es al query que estas usando y que utilizas para realizar la operacion. Chequeate tambien que datasource esta apuntando en ese momento a el grid.

avmm2004 21-08-2006 19:53:38

Si estas utilizando una base de datos (Oracle, Interbase......) puede ser que no veas lo que acabas de hacer debido a que no has confirmado la transaccion (commit). Por eso al cerrar y abrir el dataset (lo cual implica un commit) si se ven tus resultados. Deberías mirarte el Startransaction y el Commit / rollback de transacciones en bases de datos distribuidas.

yeison Cristman 22-08-2006 04:45:51

uso SQL SERVER 2000
 
hola a todos

la base de datos que estoy utilizando es SQL SERVER 2000 eso me sucede el problema es que tengo un form solo para consultas y no se me actualizan los datos no se que hacer........

JEsucristo es el mismo ayer, hoy y siempre......

yeison Cristman 22-08-2006 04:47:06

Perdon uso SQL server 2000 y el DBGRID no se actualiza
 
eso es ......
gracias


La franja horaria es GMT +2. Ahora son las 23:28:34.

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