Ver Mensaje Individual
  #1  
Antiguo 04-11-2010
Avatar de GerTorresM
GerTorresM GerTorresM is offline
Miembro
 
Registrado: nov 2005
Ubicación: Tunja - Boyacá
Posts: 210
Reputación: 19
GerTorresM Va por buen camino
Red face Problemas con Summary Band

Hola a tod@s


La situación que se me presenta el día de hoy es la siguiente:

Tengo un reporte en el que utilizo una banda Detail y una subdetail, a su vez la banda subdetail utiliza un banda de tipo Group footer para mediante un QRExpresion calcular los subtotales propios de los datos mostrados en el subdetail; la propiedad master del QRExpresion esta ligada a la consulta con la que trabaja el subdetail y la que se ejecuta con parámetros cada vez que cambia el Datasorce que maneja los detalles. En orden de ideas hasta ahí todo muy bien.

Ahora finalmente he colocado una banda Summary en la que pretendo mostrar el total en el reporte, pero es allí donde surge el problema, ya que utlizando nuevamente QRxpresion como sumatoria de valor ej. Sum(QDetalleListadoPagos.valor) me muestra una valor que corresponde a la suma de los registros del subdetail exceptuando el último registro.

La propiedad master la coloque tanto en blanco como con el nombre del reporte pero la cosa sigue igual.


Este es el constructor del reporte

Código Delphi [-]
constructor TQRReportePagosConsolidado.Create(pFechaInicial, pFechaFinal : TDate);
begin
  inherited Create(nil);
  try
    FechaInicial_local := pFechaInicial;
    FechaFinal_local := pFechaFinal;
    self.QRLNombreReporte.Caption:= 'LISTADO CONSOLIDADO DE PAGOS ENTRE ' + DateToStr(FechaInicial_local) + ' Y ' + DateToStr(FechaFinal_local);
    self.QServiciosListadoPagos.ParamByName('pFechaInicial').AsDateTime:= FechaInicial_local;
    self.QServiciosListadoPagos.ParamByName('pFechaFinal').AsDateTime:= FechaFinal_local;
    self.QServiciosListadoPagos.Open;
  finally
  end;
end;

y este el evento del change del DataSource

Código Delphi [-]
procedure TQRReportePagosConsolidado.DSListadoServiciosPagosDataChange(
  Sender: TObject; Field: TField);
begin
  inherited;
  try
    self.QDetalleListadoPagos.Close;
    self.QDetalleListadoPagos.ParamByName('pReferencia').AsInteger:= Self.DSListadoServiciosPagos.Dataset.FieldByName('CodigoServicio').AsInteger;
    self.QDetalleListadoPagos.ParamByName('pFechaInicial').AsDateTime:= FechaInicial_local;
    self.QDetalleListadoPagos.ParamByName('pFechaFinal').AsDateTime:= FechaFinal_local;
    self.QDetalleListadoPagos.Open;
  except on e : exception do
  end;
end;



agradezco de antemano el tiempo dedicado y cualquier comentario al respecto




gertorresm
Colombia
Responder Con Cita