Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-07-2004
chona chona is offline
Miembro
 
Registrado: abr 2004
Posts: 57
Poder: 21
chona Va por buen camino
Question mostrar los registros

Hola amigos, tengo un problemita para mostrar los registros recién cargados. desde una aplicacion delphi 5 e interbase 6.Lo hago de la siguinete manera:
Legajo:TIBTable

Para cargar los registros:
Código Delphi [-]
datamodule.DataModule1.Legajo01.Open;
datamodule.DataModule1.Legajo01.Insert;
DataModule1.Legajo01.FieldByName('tipdoc_01').AsString:=tipo_1;
...
DataModule1.Legajo01.FieldByName('observ_01').AsString:=observ.Text;
DataModule1.Legajo01.Post;
DataModule1.Legajo01.Refresh;
DataModule1.IBTransaction1.CommitRetaining;
datamodule.DataModule1.Legajo01.Close;

//y despues muestro los datos con un IBQuery llamado existe:
 
procedure TForm1.numdocExit(Sender: TObject);//evento
var campo:string;
begin
  existe.Params[0].AsString:=tipdoc.Text;
  existe.Params[1].AsString:=numdoc.Text;
  existe.Active:=true;
  if existe.RecordCount<>0 then
    begin
 
      observ.Text:=existe.FieldByName('observ_01').AsString;
      ...
      nacion.Text:=decoder(existe.FieldByName('idnaci_01').AsString);
    end;
  end.
end;
Los pasos que hago son, primero cargo un registro, despues lo quiero listar con el evento y el existe.RecordCount me da cero, sindo que recién cargue el registro. Cierro la aplicacion y la vuelvo abrir, ejecuto el evento y ahí si el existe.RecordCount me da distinto de cero. ¿Que pasa con esto?

Última edición por marto fecha: 27-07-2004 a las 12:02:17.
Responder Con Cita
  #2  
Antiguo 26-07-2004
Avatar de StartKill
StartKill StartKill is offline
Miembro
 
Registrado: ene 2004
Posts: 299
Poder: 21
StartKill Va por buen camino
Thumbs up

Hola, en verdad no soy muy experto en esto y por lo datos que das podria deducir el problema.

El RecordCount te dice cuando registros hay no? humm, pero exactamente no es asi-hay que hacer alguna tarea con los registros,

Por ejemplo que tienes una grilla que solo permiten como primer plasmazo en pantalla de 4 registros el RecordCount te dira que solo hay 4, si navegas por la regilla un total de 40 registros el RecordCount te dara 40, entonces teniendo esto en cuenta: HAy que traajar con los registros (todos) si desas todos...

existe.last //si tipeas esta linea antes de contar..
if existe.RecordCount then

creo que con esto solucionas este problema.

Your friend

StartKill
Lima-Peru
Responder Con Cita
  #3  
Antiguo 26-07-2004
chona chona is offline
Miembro
 
Registrado: abr 2004
Posts: 57
Poder: 21
chona Va por buen camino
Exclamation

El problema es que no me refresca los datos recién insertado. para que me muestre estos datos (recien insertados) tengo que cerrar la aplicacion y volver a ejecutarla.
Responder Con Cita
  #4  
Antiguo 27-07-2004
Gydba Gydba is offline
Miembro
 
Registrado: ene 2004
Ubicación: Argentina
Posts: 673
Poder: 21
Gydba Va por buen camino
Hola,

Fijáte el tipo de transacción que estás usando, de todas maneras no me fiaría del RecordCount.

Saludos!
__________________
Suerte
.: Gydba :.
Responder Con Cita
  #5  
Antiguo 27-07-2004
Avatar de marto
marto marto is offline
Miembro
 
Registrado: may 2003
Ubicación: Barcelona, Catalunya
Posts: 882
Poder: 22
marto Va por buen camino
Wop!

Te recomiendo que encierres tus trocos de código entre tags [delphi], [sql] o [code] según corresponda, de esta manera quedará mucho más legible. Ésta vez te lo he modificado yo para que veas lo bien que queda

También te recomiendo que te leas la guia de estilo del club!
__________________
E pur si muove
Responder Con Cita
  #6  
Antiguo 27-07-2004
chona chona is offline
Miembro
 
Registrado: abr 2004
Posts: 57
Poder: 21
chona Va por buen camino
Gracias amigos, pero ya lo solucioné. Les cuento por si le pasa a alguno, antes de activar la consulta ejecuté lo siguiente:

Código Delphi [-]
 
existe.Transaction.Active:=true;
existe.Transaction.Commit;

Gracias marto por la recomendación.
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 01:42:14.


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