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 21-10-2005
artemisa artemisa is offline
Miembro
 
Registrado: jun 2005
Posts: 12
Poder: 0
artemisa Va por buen camino
sumatorias por paginas

Hola a todos necesito ayuda lo que quiero hacer es lo siguiente: digsmos que tengo tres paginas en mi reporte.



______________________________________________________________
pagina 1

producto1 10.00 12.00
producto2 10.00 12.00
producto3 20.00 14.00
Van 40.00 38.00 <=====estas son sumatorias

______________________________________________________________
pagina 2

vienen 40.00 38.00

producto8 10.00 12.00
producto3 10.00 12.00
producto9 20.00 14.00
van 80.00 76.00

______________________________________________________________
pagina 3

vienen 80.00 38.00

producto6 10.00 12.00
producto0 10.00 12.00
producto9 20.00 14.00
van 120.00 114.00


total 120.00 114.00

claro que en cada pagina hay muchos mas detalles, y los valores son muy variados, trabajo en qreport y con delphi 7, espero haber sido lo suficientemente claro, de antemano muchas gracias por la ayuda

saludos

artemisa
Responder Con Cita
  #2  
Antiguo 21-10-2005
Avatar de epuigdef
epuigdef epuigdef is offline
Miembro
 
Registrado: jul 2005
Posts: 196
Poder: 19
epuigdef Va por buen camino
Buenas!


No iba a responder este hilo porque mi propuesta no es muy "elegante" que digamos, y esperaba que alguien más sabio que yo te diera otra solución, pero como veo que estás un pelín colgado, allá va mi solución:

En la impresión del qreport se disparan una serie de eventos. Entre ellos, cada vez que se lanza una línea de detalle se lanza uno (no sé como se llama, pero tiene que ser similar a ondetailbandprint) en el que puedes acceder a los datos que estás imprimiendo. En este momento puedes acumular en una variable global el importe.

Otro evento que se dispara es cuando se imprime el pagefooter. En esta banda puedes poner un qrlabel sin texto, y cuando se dispare el evento asignarle el valor que llevas acumulado en tu variable global.

Espero que te sirva

Edu
Responder Con Cita
  #3  
Antiguo 21-10-2005
artemisa artemisa is offline
Miembro
 
Registrado: jun 2005
Posts: 12
Poder: 0
artemisa Va por buen camino
Unhappy

sabes no se si estoy haciendo algo mal pero no he podido capturar los datos que se han acumulado y menos imprimirlos al final de la pagina, no habra otra solucion

gracias

Artemisa
Responder Con Cita
  #4  
Antiguo 22-10-2005
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,


Cita:
Empezado por artemisa
sabes no se si estoy haciendo algo mal pero no he podido capturar los datos que se han acumulado y menos imprimirlos al final de la pagina, no habra otra solucion
Por favor, no te lo tomes a mal, pero, sería cuestión de adivinar qué está fallándote si ni siquiera dices qué estás intentando hacer, esto es, cómo estás intentando hacer lo que precisas. Arriba te han dado una idea, ¿has seguido los pasos? ¿Qué has hecho, pues, para pensar que lo estás haciendo mal? Piensa que aquí las bolas de adivinar no abundan... y no te lo tomes a mal, que no va con mala intención, todo lo contrario.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #5  
Antiguo 22-10-2005
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Necesitas un QRGroupBand, pones un QRExpr dentro y en la expresión le añades Sum(nombreCampo). Añades un QrLabel con el texto: Suma Parcial:


En el BeforePrint del QrLabel, tienes que añadir algo parecido a esto, lo digo de memoria, pero con el code insight de delphi seguro que lo encuentras:
Código Delphi [-]
procedure qreport1.qrlabe1Print(...; Value:Text);
begin
// si es la ultima pagina, cambiamos el "suma parcial" por suma total
  if qreport1.qrprinter.PageNumber = qreport1.qrprinter.PageCount -1 then 
    QrLabel1.caption := 'Suma Total';
end;

saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #6  
Antiguo 23-10-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Talking

Saludos

He realizado un pequeño ejemplo (algo feo, pero funciona).

He utilizado un QrExp en la seccion de Page Footer, en Detail presento los registros con un QrDBText y uala.
Archivos Adjuntos
Tipo de Archivo: zip sumatoria.zip (6,9 KB, 38 visitas)
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
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 14:45:44.


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