Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-08-2007
Cecilio Cecilio is offline
Miembro
 
Registrado: ago 2007
Posts: 140
Poder: 17
Cecilio Va por buen camino
Un DBgrid cabezón

Hola.
Estoy haciendo mi primera aplicación medio en serio medio de prueba. Un Tpv.

el problema que tengo es que selecciono un ticket, en un dbgrid muestro las lineas de detalle. Cuando inserto o modifico lineas estas no se refrescan aunque lance de nuevo la consulta que las muestra.
Este es código:
Código:
var
  s: string;
begin
 DbGrid1.DataSource:=dm.T.Vacio;
 s:='SELECT CODIGO,DESCRIPCION, UNI, PVP, DTO,TOTAL,POS FROM LINTIK WHERE '+filtro;
 dm.t.DataSource1.DataSet.Close;
 dm.t.IBQuery1.Active:=FALSE;
 dm.t.IBQuery1.Close;

 dm.T.IBTquery.Active:=false;

 dm.t.IBQuery1.SQL.Clear;
 dm.t.IBQuery1.SQL.Add(S);
 dm.T.IBTquery.Active:=true;

 dm.t.IBQuery1.Open;
 dm.t.IBQuery1.Active:=TRUE;
 DbGrid1.DataSource:=dm.T.DataSource1;
 dbGrid1.Refresh;
Como podeis ver, a la desesperada, he reasignado datasource y todo lo que he podido.

¿ como hacer para que se refresque ?

P.D. he buscado en el foro, y no he encontrado en las primera 3 pag. nada.
__________________
Saludos Cordiales.
------------------

Responder Con Cita
  #2  
Antiguo 23-08-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Me parece que estas haciendo un escabeche.
Para mi ya tienes la informacion y esta ligada al dbgrid.
Con solo esto:
Código Delphi [-]
dm.t.IBQuery1.Active:=False;
dm.t.IBQuery1.Active:=True;
Ya tiene que refrescar, cierras y abres, cual es el problema, no lo veo.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #3  
Antiguo 23-08-2007
Cecilio Cecilio is offline
Miembro
 
Registrado: ago 2007
Posts: 140
Poder: 17
Cecilio Va por buen camino
Pues que no se refrescan las lineas del dbgrid

fíjate en mi código:
Código:
 dm.T.IBTquery.Active:=false;

 dm.t.IBQuery1.SQL.Clear;
 dm.t.IBQuery1.SQL.Add(S);
 dm.T.IBTquery.Active:=true;
Está como tu me comentas. Pero sin embargo. Las lineas no se refescan hasta que cierro y abro la aplicación.

He probado incluso a realizar un commit por si la transacción no se ha completado.
__________________
Saludos Cordiales.
------------------

Responder Con Cita
  #4  
Antiguo 23-08-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Para empezar el DBGrid no tiene nada que ver en esto, este es simplemente refleja lo que hay en el query, que es el importante, aqui.
Modificando un poco esto, quedaria asi:
Código Delphi [-]
begin
  dm.t.IBQuery1.Active:=False;
  dm.t.IBQuery1.SQL.Text:='SELECT CODIGO,DESCRIPCION, UNI, PVP, DTO,TOTAL,POS FROM LINTIK WHERE '+filtro;
 dm.T.IBTquery.Active:=true;
Sigo sin entender, se cierra y se abre, el problema debe ser otro.
Sigo pensando que generas codigo innecesario.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #5  
Antiguo 23-08-2007
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.557
Poder: 25
egostar Va camino a la fama
Cita:
Empezado por Caral Ver Mensaje
Hola
Para empezar el DBGrid no tiene nada que ver en esto, este es simplemente refleja lo que hay en el query, que es el importante, aqui.
Modificando un poco esto, quedaria asi:

Código Delphi [-]
begin
dm.t.IBQuery1.Active:=False;
dm.t.IBQuery1.SQL.Text:='SELECT CODIGO,DESCRIPCION, UNI, PVP, DTO,TOTAL,POS FROM LINTIK WHERE '+filtro;
dm.T.IBTquery.Active:=true;




Sigo sin entender, se cierra y se abre, el problema debe ser otro.
Sigo pensando que generas codigo innecesario.
Saludos
Solo agregando a la buena participación de nuestro amigo Carlos, que conste amigo.......

No será que debes de ejecutar el query y no solo abrirlo?

Código Delphi [-]
 
   Query1.ExecSQL;

Salud OS.
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #6  
Antiguo 23-08-2007
Cecilio Cecilio is offline
Miembro
 
Registrado: ago 2007
Posts: 140
Poder: 17
Cecilio Va por buen camino
ExecSql no deja para una consulta "Select" dice que se use Open

No consigo que se refresquen las tablas.

Caral Está todo como tu dices, y no se actualiza, ¿ qué otra cosa podría ser

¿Podrían ser las transacciones ?
__________________
Saludos Cordiales.
------------------

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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
PickList DBGrid (Pregunta acerca de los DBGRID) lazarous Varios 1 10-01-2006 09:53:12
Como extraer datos de un DBgrid a otro DBgrid mickey Conexión con bases de datos 13 29-01-2004 05:05:30


La franja horaria es GMT +2. Ahora son las 22:49:23.


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