Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 31-05-2006
k2k2k2 k2k2k2 is offline
Miembro
 
Registrado: mar 2004
Posts: 28
Poder: 0
k2k2k2 Va por buen camino
Angry Un problemilla con TQRExpr

Hola a todo el mundo, gracias de antemano. Tengo un problema con quickreport, necesito hacer un reporte que tiene la siguiente estructura.

Group Header
Detail
Group Footer

En Group Header muestro los datos de una empresa
En Detail muestro los alumnos asociados con esa empresa
En Group Footer muestro el final de la página

Los datos aparecen agrupados por empresa.

El problema aparece cuando tengo que calcular una expresion (TQRExpr) en el Group Header a partir de los datos mostrados en Detail. En el Group Header aperece calculado el dato anterior, es decir el de la empresa anterior. Que debo hacer para actualizar esta expresión una vez mostrado el Group Header.

Gracias por vuestra ayuda. Un saludo.
Responder Con Cita
  #2  
Antiguo 31-05-2006
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Si quieres decir que te acumula lo anterior, mírate la propiedad ResetAfterPrint, hablo de memoria, así que revisa las propiedades, de la banda Summary en donde colocas dicho componente.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 31-05-2006
luisgutierrezb luisgutierrezb is offline
Miembro
 
Registrado: oct 2005
Ubicación: México
Posts: 925
Poder: 19
luisgutierrezb Va por buen camino
bueno, el problema es por como trabaja el qrExpr, te hace los calculos sobre lo que lleva procesado de la tabla no sobre toda la tabla...
Responder Con Cita
  #4  
Antiguo 31-05-2006
k2k2k2 k2k2k2 is offline
Miembro
 
Registrado: mar 2004
Posts: 28
Poder: 0
k2k2k2 Va por buen camino
Gracias por la respuestas, marcoszorrilla no mi problema no es que acumule la operación, es como bien me temía y me acaba de confirmar luisgutierrezb, que la operación la hace de lo que tenga por encima.

Mi pregunta ahora es si puedo recuperar esta operación, he probado colocando un TQRExpr debajo del Detail en el Group Footer, y despues he modificado el evento OnPrint del TQRExpr para que el valor de la operación la coloque en un label que he puesto en el Group Footer, pero no funciona. Algo como esto.

QRLabel1.Caption:= QRExpr1.Value.strResult;

Pero nada de nada. Esto mismo lo he probado en el BeforePrint del Group Footer. Alguna sugerencia, o es algo imposible de hacer con QuickReport. Gracias y un saludo.
Responder Con Cita
  #5  
Antiguo 31-05-2006
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
Pues yo simplemente coloco el TqrExp en el Group footer y me muestra el total agrupado correctamente.

¿colocas el final de la página en el groupFooter? ¿No sería mejor usar un summary para el final de la página?
__________________

Responder Con Cita
  #6  
Antiguo 01-06-2006
k2k2k2 k2k2k2 is offline
Miembro
 
Registrado: mar 2004
Posts: 28
Poder: 0
k2k2k2 Va por buen camino
Si coloco el QRExpr en el group footer si funciona pero el problema es que debe de aparece en el group header.
Responder Con Cita
  #7  
Antiguo 07-06-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Ampliando un poco más: El problema que veo, es precisamente el Header, cuando se imprime, aún no se sabe cuantas líneas de Detail tiene, ni tampoco la suma (o la operación que se haga) por tanto coge las sumas acumuladas de las páginas anteriores.

Directamente asocia los controles del Group Header a otra consulta. Esta consulta hará las sumas con el mismo "Where" que el detalle. De esta forma puedes saber los totales antes de imprimir el Detalle; son 2 consultas para un mismo Report, pero no creo que haya otra forma.

SAludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #8  
Antiguo 07-06-2006
k2k2k2 k2k2k2 is offline
Miembro
 
Registrado: mar 2004
Posts: 28
Poder: 0
k2k2k2 Va por buen camino
Gracias Lepe lo probare y contare los resultados.
Un saludo.
Responder Con Cita
  #9  
Antiguo 09-06-2006
k2k2k2 k2k2k2 is offline
Miembro
 
Registrado: mar 2004
Posts: 28
Poder: 0
k2k2k2 Va por buen camino
Bueno ya esta solucionado, he seguido el consejo de Lepe y he creado una consulta para calcularlo antes, despues mediante el evento de OnStartPage del QReport, modificada un QRLabel que coloque en el Group Header.
El codigo ha sido este:
Código Delphi [-]
 
procedure TfrmReporte1.QuickRep1StartPage(Sender: TCustomQuickRep);
var
  total: Double;
begin
  total:=0;
  total:=DM.ADOQuery1.FieldByName('dias').AsInteger*DM.ADOQuery2.Fields[0].AsInteger*DM.ADOConfig.FieldValues['cuantiaprac'].AsInteger;
  QRLabel1.Caption:=FloatToStr(total)+' €';
  DM.ADOQuery2.Next;
end;
Siendo ADOQuery2 la consulta que he utilizado para calcular el número de alumnos.

Pues nada gracias de nuevo a todos. Un saludo.

Última edición por marcoszorrilla fecha: 09-06-2006 a las 22:55:14.
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
Como formatear un TQRExpr maravert Impresión 2 03-05-2006 10:45:21
TQrExpr no funciona subzero Impresión 6 18-04-2005 22:26:34
TqrExpr en un Group Footer castroruiz2001 Impresión 0 06-10-2004 20:14:50
TQRExpr y los decimales Novás Impresión 3 08-01-2004 17:18:02
funcion sum del tqrExpr Novás Impresión 1 22-10-2003 19:23:13


La franja horaria es GMT +2. Ahora son las 18:16:50.


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