FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Imprimir info de un StringGrid con un QuickRep
hola
necesito imprimir la informacion que tengo en un StringGrid, y estoy usando QuickRep, Por ahi encontre un codigo: Cita:
Pero me da un problema en ***, agradeceria su ayuda... es que no entiendo porque si esa variable es boolean y le asigno un integer... Si Alguien tiene un codigo que pueda postear... Gracias |
#2
|
||||
|
||||
Realmente esto nada tiene que ver con QuickReport ni StringGrids.
Y tú mismo sabes la respuesta: Cita:
// Saludos |
#3
|
|||
|
|||
nada, ese codigo con esa diferencia de tipos mo lo encontre en un foro por ahi...
Lo que necesito es poder imprimir la informacion que estan en las celdas de un StringGrid utilizando QuickRep u otro metodo... Imagina que tengo una factura con 4 columnas: Codigo, cantidad, precio y total... Pero las filas son infinitas, necesito imprimir esta factura que se encuentra en el StringGrid Gracias... |
#4
|
|||
|
|||
Puedes poner en tu componente TQuickRep 1 DetailBand (TQRBand) y dentro del DetailBand 4 TQRLabel. En el metodo QuickRep1BeforePrint inicializas tu variable global "CurrentItem" con el que controlarás la linea de tu StringGrid donde se te encuentras al ir imprimiendo cada renglon:
Código:
procedure TForm1.QuickRep1BeforePrint(Sender: TCustomQuickRep; var PrintReport: Boolean); begin CurrentItem := 0; // Puntero de la lista a imprimir end; ... //por ejemplo, si los datos estan en un arreglo: procedure TForm1.QuickRep1NeedData(Sender: TObject; var MoreData: Boolean); begin //si hay mas datos, QuickReport imprimirá otra banda de detalle MoreData := CurrentItem < High(arr); if MoreData then begin QRLCliente.Caption:=arr[CurrentItem,0]; QRLFecha.Caption:=arr[CurrentItem,1]; QRLNumero.Caption:=arr[CurrentItem,2]; QRLImporte.Caption:=arr[CurrentItem,3]; end; Inc(CurrentItem); end; Espero te sirva Yo lo solucioné así pero tengo problemas si intento agrupar por Cliente por ejemplo, no he podido agrupar que cada que sea un cliente diferente, muestre la suma del importe para el cliente, imprima el encabezado de las columnas para el siguiente cliente y su total y asi sucesivamente, Alguien sabe como hacerlo? Saludos |
#5
|
|||
|
|||
Saludos
Un abraso al foro:
Que pasaría si la cantidad de columnas del StrigGrid fueran indeterminadas, es decir que no sea un número fijo (4 en el caso de Pirucho). |
#6
|
|||
|
|||
Creación de componentes en ejecución.
Si no supieramos el numero de columnas a imprimir porque la stringgrid es de columnas variables por el usuario tendriamos que crear los TQRLabel en tiempo de ejecución:
Algo así: este codigo seria en el create o antes del preview o del print del report. for x:=0 to stringgrid.colcount-1 do begin qlabeltemp:=tqrlabel.create(detalband); qlabeltemp.tag:=x; //Asi identificamos a la columna que le corresponde end; luego en el oneeddata pondriamos algo asi. for x:=0 to detailband.componentscount -1 with detailband.components[x] as tqrlabel do begin caption:=stringgrid.cells[tag,linea]; end; end; Bueno espero que este codigo sirva de algo a alguien... |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Impresion de dos StringGrid en Quick Report | pkbza | Impresión | 7 | 23-11-2006 12:54:45 |
I/O ERROR 105 +imprimir desde delphi | IVAND | Impresión | 5 | 02-10-2005 18:51:00 |
Problema con TQRCompositeReport y StringGrid | BlueSteel | Impresión | 1 | 30-08-2005 19:09:30 |
Impresion de datos de un stringgrid | Dayvis | Impresión | 1 | 24-02-2005 21:31:19 |
Imprimir composite report desde preview personalizado | SnaKe | Impresión | 5 | 11-05-2004 09:31:50 |
|