Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 21-11-2006
royrogers84 royrogers84 is offline
Registrado
 
Registrado: oct 2006
Posts: 8
Poder: 0
royrogers84 Va por buen camino
Actualizar datos en un Qreport

El problema es el siguiente: Almaceno datos en una tabla, tengo una opcion en mi aplicacion que muestra el reporte de los datos almacenado en la tabla (nombre, direccion, etc), la falla esta es que el reporte no me actualiza los datos que guardo en tiempo de ejecucion, es decir, el programa en tiempo de ejecucion no actualiza el reporte. ¿como podrìa solucinarlo?
Responder Con Cita
  #2  
Antiguo 21-11-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola royrogers84
Cierra y abre la tabla antes de enseñar el reporte.
Saludos
Responder Con Cita
  #3  
Antiguo 21-11-2006
royrogers84 royrogers84 is offline
Registrado
 
Registrado: oct 2006
Posts: 8
Poder: 0
royrogers84 Va por buen camino
Gracias, eso era lo que me faltaba..
Responder Con Cita
  #4  
Antiguo 21-11-2006
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 23
BlueSteel Va por buen camino
Talking a mi tambien me pasa algo parecido...

hola.. a mi tambien me pasa algo parecido... para que me entiendan, tengo lo sigte;

el form de tipo data mudule llamado Datos, en donde tengo un IBDatabase, 6 IBQuerry y 6 IBTransacction.

en el Form Ordenes, genero un listado de Ordenes, lo que funciona muy bien...

cuando selecciono un registro de Orden... este se puede imprimir, al presionar el boton imprimir se ejecuta el sgte código:

Código Delphi [-]
     OCompra.Num_Orden := Datos.IBQ_Select['Ord_Numero'];
     OCompra.Orden.Preview;

el Formulario OCompra (que tiene el Informe en QReport) ejecuta lo sgte:

bueno, tiene

banda title proceso before
Código Delphi [-]
procedure TOCompra.TitleBand1BeforePrint(Sender: TQRCustomBand;
  var PrintBand: Boolean);
begin
     Datos.IBQ_Orden.SQL.Clear;
     Datos.IBQ_Orden.SQL.Add('Select * From "Orden","Proveedor"');
     Datos.IBQ_Orden.SQL.Add('Where "Orden"."Pro_Rut"="Proveedor"."Pro_Rut"');
     Datos.IBQ_Orden.SQL.Add('And "Ord_Numero"=:Var1');
     Datos.IBQ_Orden.Params[0].AsString := Num_Orden;
     Datos.IBQ_Orden.Open;
     Datos.IBQ_Cargos.SQL.Clear;
     Datos.IBQ_Cargos.SQL.Add('Select * From "Cargos","Centro"');
     Datos.IBQ_Cargos.SQL.Add('Where "Cargos"."Cen_Codigo"="Centro"."Cen_Codigo"');
     Datos.IBQ_Cargos.SQL.Add('And "Ord_Numero"=:Var1');
     Datos.IBQ_Cargos.Params[0].AsString := Num_Orden;
     Datos.IBQ_Cargos.Open;
     Datos.IBQ_Cargos.First;
     sCargos.Lines.Clear;
     While Datos.IBQ_Cargos.Eof = False Do
     Begin
          sCargos.Lines.Add(Concat(Datos.IBQ_Cargos['Cen_Detalle'],' $',FormatFloat('#',Datos.IBQ_Cargos['Car_Monto'])));
          Datos.IBQ_Cargos.Next;
     End;
     sRaz.Caption    := Datos.IBQ_Orden['Pro_Razon'];
     sAte.Caption    := Datos.IBQ_Orden['Ord_Atencion'];
     sDir.Caption    := Concat(Datos.IBQ_Orden['Pro_Direccion'],' ',Datos.IBQ_Orden['Pro_Comuna']);
     sSol.Caption    := Datos.IBQ_Orden['Ord_Solicitado'];
     sPag.Caption    := 'CONTADO - 30 DÍAS';
     sFax.Caption    := Datos.IBQ_Orden['Pro_Fax'];
     sOrden.Caption  := FormatFloat('000#',Datos.IBQ_Orden['Ord_Numero']);
     sFec.Caption    := Concat('Talcahuano, ', FormatDateTime('dd "de" mmmm "de" yyyy', Datos.IBQ_Orden['Ord_Fecha']));
     sObs.Caption    := Datos.IBQ_Orden['Ord_Observacion'];
     sDescto.Caption := FormatFloat('0,',Datos.IBQ_Orden['Ord_Descuento']);
     sNeto.Caption   := FormatFloat('#,',Datos.IBQ_Orden['Ord_Total_Neto']);
     sIVa.Caption    := FormatFloat('0,',Datos.IBQ_Orden['Ord_Iva']);
     sTotal.Caption  := FormatFloat('#,',Datos.IBQ_Orden['Ord_Total']);
end;

proceso After - Aqui es donde selecciono todos los registros que deben mostrarse en la banda detail
Código Delphi [-]
procedure TOCompra.TitleBand1AfterPrint(Sender: TQRCustomBand;
  BandPrinted: Boolean);
begin
     With Datos Do
     Begin
          IBQ_Items.Close;
          IBQ_Items.SQL.Clear;
          IBQ_Items.SQL.Add('Select * From "DOrden"');
          IBQ_Items.SQL.Add('Where "Ord_Numero"=:Var1');
          IBQ_Items.Params[0].AsString := Num_Orden;
          IBQ_Items.Open;
          IBQ_Items.First;
     End;
end;

banda detail / proceso Before
Código Delphi [-]
procedure TOCompra.DetailBand1BeforePrint(Sender: TQRCustomBand;
  var PrintBand: Boolean);
begin
     sCtd.Caption  := FormatFloat('#,',Datos.IBQ_Items['Dor_Cantidad']);
     sDes.Caption  := Datos.IBQ_Items['Dor_Descripcion'];
     sUnit.Caption := FormatFloat('#,',Datos.IBQ_Items['Dor_Valor_Unitario']);
     sTot.Caption  := FormatFloat('#,',Datos.IBQ_Items['Dor_Valor_Total']);
end;

bueno, y eso es todo el código...

mi problema es que cuando muestro el informe por primera vez la banda detail solo muestra el primer registro, pero si salgo e ingreso nuevamente (sin salir del sistema), me muestra todo... trate de cambiar los IBQuerry e IBTransacction al Formulario ... pero sucede lo mismo....

a alguien se le ocurre que puede ser
__________________
BlueSteel

Última edición por BlueSteel fecha: 21-11-2006 a las 21:58:26.
Responder Con Cita
  #5  
Antiguo 21-11-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola BlueSteel
No me hagas mucho caso, pero si quieres lo pruebas.
Tengo entendido que cuando se produce este error, osea que solo muestra el primer registro tiene que ver con el dataset del qReport, este tiene que incluir el nombre del query o tabla que estes usando, en tu caso me parece que es IBQ_Orden.
Saludos
Responder Con Cita
  #6  
Antiguo 21-11-2006
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 23
BlueSteel Va por buen camino
Hola Caral

En realidad, si lo tengo vinculado al dataset... lo puse al IBQ_Items (que corresponde a los datos que se imprimen en el Detail), tambien lo vincule al IBQ_Orden.. pero no pasa nada
__________________
BlueSteel
Responder Con Cita
  #7  
Antiguo 21-11-2006
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Se me escapa de las manos, la verdad, no se que te este sucediendo, cuando me ha sucedido algo similar es por esa razon.
Saludos
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
Actualizar datos buscados por sql... (VIH)Lestat SQL 1 09-07-2005 00:45:56
Actualizar datos con componente jvDBComboBox rochi Conexión con bases de datos 0 15-02-2005 17:35:20
Actualizar la Base de Datos. ramirezjl7 Firebird e Interbase 4 04-01-2005 08:44:51
Introducir / Actualizar Datos en Interbase jsc Firebird e Interbase 5 04-11-2003 14:03:24
Actualizar Datos trex2000 Firebird e Interbase 1 26-09-2003 23:21:49


La franja horaria es GMT +2. Ahora son las 18:56:26.


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