FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
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. |
#2
|
||||
|
||||
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:
|
#3
|
|||
|
|||
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...
|
#4
|
|||
|
|||
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. |
#5
|
||||
|
||||
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?
__________________
|
#6
|
|||
|
|||
Si coloco el QRExpr en el group footer si funciona pero el problema es que debe de aparece en el group header.
|
#7
|
||||
|
||||
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. |
#8
|
|||
|
|||
Gracias Lepe lo probare y contare los resultados.
Un saludo. |
#9
|
|||
|
|||
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: 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 23:55:14. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Como formatear un TQRExpr | maravert | Impresión | 2 | 03-05-2006 11:45:21 |
TQrExpr no funciona | subzero | Impresión | 6 | 18-04-2005 23:26:34 |
TqrExpr en un Group Footer | castroruiz2001 | Impresión | 0 | 06-10-2004 21:14:50 |
TQRExpr y los decimales | Novás | Impresión | 3 | 08-01-2004 18:18:02 |
funcion sum del tqrExpr | Novás | Impresión | 1 | 22-10-2003 20:23:13 |
|