Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 22-11-2005
Ivan_25 Ivan_25 is offline
Miembro
 
Registrado: oct 2005
Posts: 87
Poder: 19
Ivan_25 Va por buen camino
Refresco de un dbgrid

Hola a tod@s!!!. El problema es que que tengo un dbgrid donde muestro datos de una base de datos access (conexion ado), y si le doy a un boton para insertar o borrar un registro me lo hace bien, pero tengo que cerrar y volver a abrir el formulario para poder ver los cambios. El codigo que tengo es este:

String cadena;
String codigoproceso;
ADOQActualizar->SQL->Clear();
cadena = "UPDATE descripcionprocesos SET Activo = true WHERE id = ";
codigoproceso = ADOQHistoricos->FieldByName("id")->AsString;
cadena = cadena + codigoproceso;
ADOQActualizar->SQL->Add(cadena);
ADOQActualizar->ExecSQL();
ADOQHistoricos->Close();
ADOQHistoricos->Open();

ADOQActualizar me actualizar los registros, y ADOQHistoricos me los muestra en el grid. ¿Cual puede ser el problema?.
__________________
Un saludo.

Iván.
Responder Con Cita
  #2  
Antiguo 22-11-2005
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
¿Has probado con la propiedad Refresh del DataSet asociado al DBGrid (Tabla o consulta)?
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 22-11-2005
Avatar de alt126
alt126 alt126 is offline
Miembro
 
Registrado: dic 2004
Posts: 171
Poder: 20
alt126 Va por buen camino
prueba como te han dicho a hacer un refresh, o tambien a volver a hacer la consulta que muestras en el dbgrid, o incluso a cambiar el datasource y volver a ponerlo.

Normalmente, tarda un tiempo en refrescar los cambios, y mas si es una BD en red.
__________________
Un saludo

Antonio
Responder Con Cita
  #4  
Antiguo 23-11-2005
Ivan_25 Ivan_25 is offline
Miembro
 
Registrado: oct 2005
Posts: 87
Poder: 19
Ivan_25 Va por buen camino
Si he probado a hacer el refresh, pero me sigue pasando igual. Tengo que cerrar el formulario y volverlo a abrir, o introducir o borrar otro registro para que me muestre los cambios anteriores.
__________________
Un saludo.

Iván.
Responder Con Cita
  #5  
Antiguo 23-11-2005
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Ivan_25
Si he probado a hacer el refresh, pero me sigue pasando igual...
Sólo para probar; Espera más de cinco o seis segundos para hacer el Refresh... a ver si así aparece.
Recuerdo (aunque tengo el tema un poco disperso) que había un tema en las Bases de Datos con access relacionado con el tiempo de los refrescos; Una propiedad que por defecto estaba en 5 segundos.
Haz la prueba y así lo descartamos; Y si es eso, intentaré buscar a ver de qué propiedad se trataba... estaba relacionada con temas de transacciones... Lo siento no poder ser algo más concreto, pero como ya te he dicho no lo recuerdo;

Si el tema se resuelve esperando 5 o 10 segundo y haciendo el Refresh, es eso seguro... e intentamos buscar por ahí para solventarlo.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #6  
Antiguo 28-11-2005
Ivan_25 Ivan_25 is offline
Miembro
 
Registrado: oct 2005
Posts: 87
Poder: 19
Ivan_25 Va por buen camino
Ya esta arreglado. Lo he solucionado tal y como tu dices. He hecho un sleep(5000) y ya funciona. Gracias
__________________
Un saludo.

Iván.
Responder Con Cita
  #7  
Antiguo 29-11-2005
Avatar de alt126
alt126 alt126 is offline
Miembro
 
Registrado: dic 2004
Posts: 171
Poder: 20
alt126 Va por buen camino
el problema de eso, es que generas un retardo artificial...es decir, estas haciendo que la aplicacion se enlentezca, mas de lo que deberia....no se si habra otra forma, perooooooooooo....no se yo si eso es lo mejor...siempre se intenta que se hagan las cosas lo mas rapidamente posible!!!
__________________
Un saludo

Antonio
Responder Con Cita
  #8  
Antiguo 29-11-2005
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Bueno, lo que te comenté era sólo una sugerencia para ver si ese era el problema; Sabiendolo seguro, es cuestión de buscar esa propiedad y "bajarle" el valor; Creo que por defecto está a 5000 (milisegundos);
Busca en MSN sobre transacciones y Extended Properties; Creo recordar que el nombre era algo así como "Bulk Transaction TimeOut" (¿?¿?¿?)
Tal vez en las configuraciones del Access también puedas encontrar algo.

Coincido en lo que te han dicho; El tema del Sleep no creo que sea buena solución.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 16:30:05.


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
Copyright 1996-2007 Club Delphi